6. Summary

Not to get confused, let us recapture all steps we have taken to build our binary Debian package.

Prerequisite files:

  1. one or more binary executable or shell script files

  2. a man page for each executable file

  3. a 'control' file

  4. a 'copyright' file

  5. a 'changelog' and 'changelog.Debian' file

Setup temporary 'debian' directories:

  1. create 'debian/usr/bin' directory (or wherever you plan to place your executable files)

  2. create 'debian/usr/share/man/man1' (or whatever section your man page belongs into)

  3. create 'debian/DEBIAN' directory

  4. create 'debian/usr/share/doc/<package_name>'

  5. make sure all sub directories of 'debian' have file permission 0755

Copy files into temporary 'debian' tree:

  1. copy executable file into 'debian/usr/bin' directory (or wherever you plan to place your executable files)

  2. copy man page file into 'debian/usr/share/man/man1' directory

  3. copy 'control' file into 'debian/DEBIAN' directory

  4. copy 'copyright', 'changelog', and 'changelog.Debian' files into 'debian/usr/share/doc/<package_name>'

  5. gzip man page, 'copyright', 'changelog', and 'changelog.Debian' files with option '--best' inside the temporary 'debian' tree

Build and check binary Debian package:

  1. invoke 'dpkg-deb --build' using 'fakeroot' on the 'debian' directory

  2. rename resulting 'debian.deb' file to its final package name including version and architecture information

  3. check resulting .deb package file for Debian policy compliance using 'lintian'