This chapter provides an overview of the tools available for Debian developers. If this is your first time reading this manual,and you want to see how to make the debian package first, you may skip this chapter and come back to it later.
There are 2 classes of debian packaging tools. Those that come with dpkg and dpkg-dev are mandatory for building packages. Debmake provides a set of tools which are not mandatory and are there to help you in your development. They have a number of drawbacks, especially debstd, but they make creating a debian package that much easier at first.
All dpkg-dev tools are described in section 3.1 of Debian Packaging Manual. Please look it over before proceeding.
Below you will find a list of debmake tools with simple descriptions. Every tool has its own manpage. Please refer to them for more information.
deb-make
debchange, debch
todo, done
build
debstd
debstd(1)
for the complete description of debstd.
debc
debi
deblint
release
uupdate
In order to see how debian packaging process works, the following execution trees might be helpful. They show which tools should be executed by maintainer and which are only called internally by other tools.
Here is how the process looks like without debmake:
(maintainer creates the debian structure) dpkg-buildpackage dpkg-parsechangelog dpkg-source rules clean rules binary dpkg-shlibdeps dpkg-gencontrol dpkg-deb --build dpkg-genchanges (maintainer checks and tests the package)
And here is how it looks like with debmake tools:
deb-make or uupdate debchange dpkg-buildpackage or build dpkg-parsechangelog dpkg-source rules clean rules binary debstd dpkg-shlibdeps dpkg-gencontrol dpkg-deb --build dpkg-genchanges debc deblint debi release
Debian Programmers' Manual
igor@debian.org