The  kernel-package  package grew out of desire to automate the routine
       steps required to compile and install a custom kernel. If you are look-
       ing  for  instructions on how to use kernel-package, please have a look
       at the manual make-kpkg (1).  Configuring instructions are to be  found
       in kernel-pkg.conf(5).

Advantages of using kernel-package
              i) Convenience.
                     I  used  to  compile  kernels manually, and it involved a
                     series of steps to be taken in order; kernel-package  was
                     written  to  take  all  the  required steps (it has grown
                     beyond that now, but essentially, that is what it  does).
                     This  is especially important to novices: make-kpkg takes
                     all the steps required to compile a kernel, and installa-
                     tion of kernels is a snap.

              ii) Multiple images support
                     It  allows  you to keep multiple version of kernel images
                     on your machine with no fuss.

              iii) Multiple Flavors of the same kernel version
                     It has a facility for you to keep multiple flavors of the
                     same  kernel  version  on  your machine (you could have a
                     stable 2.0.36 version, and a 2.0.36 version patched  with
                     the latest drivers, and not worry about contaminating the
                     modules in /lib/modules).

              iv) Built in defaults
                     It knows that some  architectures  do  not  have  vmlinuz
                     (using vmlinux instead), and other use zImage rather than
                     bzImage, and calls the appropriate target, and takes care
                     of moving the correct file into place.

              v) Module hooks
                     Several other kernel module packages are hooked into ker-
                     nel-package, so one can seamlessly compile,  say,  pcmcia
                     modules at the same time as one compiles a kernel, and be
                     assured that the modules so compiled are compatible.

              vi) dpkg support
                     It enables you to use the package  management  system  to
                     keep  track  of the kernels created. Using make-kpkg cre-
                     ates a .deb file, and dpkg can track  it  for  you.  This
                     facilitates the task of other packages that depend on the
                     kernel packages.

              vii) Configuration tracking
                     It keeps track of the configuration file for each  kernel
                     image  in  /boot, which is part of the image package, and
                     hence is the kernel image and the configuration file  are
                     always together.

                     being aware of these packages).

              x) Maintainer script services
                     Since  the  kernel image package is a full fledged Debian
                     package, it comes with maintainer  scripts,  which  allow
                     the user to add hook scripts to run when the package sta-
                     tus changes.

              xi) Sub architecture support
                     There is support for the multitudinous sub  architectures
                     that  have  blossomed  under the umbrella of the m68k and
                     power-PC architectures.

              xii) Portable kernel images
                     Allows one to compile a kernel for another computer,  for
                     example  using  a  fast machine to compile the kernel for
                     installation on a slower machine.  This  is  really  nice
                     since  the  modules are all included in the .deb; and one
                     does not have to deal with modules manually.

              xiii) runtime hooks
                     The preinst, postinst, prerm and the postrm scripts allow
                     the  local  admin  on  the  installation machine to add a
                     script into runtime hooks; this can allow, amongst  other
                     things, grub users to add and remove kernel image stanzas
                     from the grub menu (example scripts to do this are in the
                     package).  There  are directories under /etc/kernel where
                     related package may drop off scripts that will be run  by
                     the  maintainer scripts of the packages created by kernel
                     package. Before running these  scripts,  the  environment
                     variable  KERNEL_PACKAGE_VERSION shall be set to the ver-
                     sion of the kernel-package that created the package.

              xiv) Append descriptive bits to the kernel version
                     One can append to the kernel version on the command line,
                     or  by setting an environment variable. So if your kernel
                     is called kernel-image-2.4.1John.Home; it is unlikely  to
                     be  overridden  by  the official 2.4.1 kernel, since they
                     are not the same version.

Disadvantages of using make-kpkg
       i) Automation.
              This is a cookie cutter approach to compiling kernels, and there
              are people who like being close to the bare metal.

       ii) Non traditional
              This  is not how it is done in the non-Debian world. This flouts
              tradition. (It has been pointed out, though, that this  is  fast
              becoming Debian tradition).

       iii) Needs superuser
              It  forces  you  to  use fakeroot or sudo or super or be root to
              create a kernel image .deb file (this is not as bad as  it  used
              to be before fakeroot)

       for the Debian GNU/Linux system.

Debian                           May  25 1999                KERNEL-PACKAGE(5)
Man Pages Copyright Respective Owners. Site Copyright (C) 1994 - 2017 Hurricane Electric. All Rights Reserved.