< Previous | Contents | Next >
9.1.3. Making Changes
We can’t cover all the possible changes that you might want to make to a given package in this section. This would amount to teaching you all the nitty gritty2 details of Debian packaging. How- ever, we will cover the three common use cases presented earlier and we will explain some of the unavoidable parts (like maintaining the changelog file).
The first thing to do is to change the package version number so that the rebuilt packages can be distinguished from the original packages provided by Kali or Debian. To achieve this, we usually add a suffix identifying the entity (person or company) applying the changes. Since buxy is my IRC nickname, I will use it as a suffix. Such a change is best effected with the dch command (Debian CHangelog) from the devscripts package, with a command such as dch --local buxy. This invokes
2https://www.debian.org/doc/manuals/maint-guide/
a text editor (sensible-editor, which runs the editor assigned in the VISUAL or EDITOR environ- ment variables, or /usr/bin/editor otherwise), which allows you to document the differences introduced by this rebuild. This editor shows that dch really did change the debian/changelog file:
$ head -n 1 debian/changelog
libfreefare (0.4.0-2) unstable; urgency=low
$ dch --local buxy
[...]
$ head debian/changelog
libfreefare (0.4.0-2buxy1) UNRELEASED; urgency=medium
* Enable --with-debug configure option.
-- Raphael Hertzog <[email protected]> Fri, 22 Apr 2016 10:36:00 -0400 libfreefare (0.4.0-2) unstable; urgency=low
* Update debian/copyrtight.
Fix license to LGPL3+.
$ head -n 1 debian/changelog
libfreefare (0.4.0-2) unstable; urgency=low
$ dch --local buxy
[...]
$ head debian/changelog
libfreefare (0.4.0-2buxy1) UNRELEASED; urgency=medium
* Enable --with-debug configure option.
-- Raphael Hertzog <[email protected]> Fri, 22 Apr 2016 10:36:00 -0400 libfreefare (0.4.0-2) unstable; urgency=low
* Update debian/copyrtight.
Fix license to LGPL3+.
If you do such changes regularly, you might want to set the DEBFULLNAME and DEBEMAIL en- vironment variables to your full name and your email, respectively. Their values will be used by many packaging tools, including dch, which will embed them on the trailer line shown above (starting with “ -- ”).