Contents
Description
You will have to create the smallest Debian package possible which is lintian clean.
First you need to create a lintian clean package. Then delete every thing that can be deleted.
The package must still be lintian clean.
Details
step 1 : create the source package and build it
- 1 - create a directory for the package : package-minimal-2.0.1
2 - create the source package with ?dh_make -s -n
3 - build the package with ?dpkg-buildpackage -rfakeroot
step 2 : test it with lintian
4 - test it to know if it is ?lintian clean.
- 5 - as there are errors and warnings we have to take a new start and increment the version of the package : package-minimal-2.0.2
- 6 - modify the files in the debian directory
7 - build the package and test it to know if it is ?lintian clean.
- 8 - Once it is lintian clean, remove all the files which can be removed from the source package of package-minimal-2.0.3
9 - test it to know if it is ?lintian clean.
Solution
step 2 : test it with lintian
6 - test it with ?lintian
You can see some warnings and errors:
$package-minimal$ lintian package-minimal*.deb
W: package-minimal: readme-debian-contains-debmake-template
E: package-minimal: description-is-dh_make-template
W: package-minimal: maintainer-not-full-name g
E: package-minimal: maintainer-address-malformed g <g@packaging-stable-2010>
E: package-minimal: section-is-dh_make-template
W: package-minimal: superfluous-clutter-in-homepage <insert the upstream URL, if relevant>
W: package-minimal: bad-homepage <insert the upstream URL, if relevant>
E: package-minimal: helper-templates-in-copyright
W: package-minimal: copyright-has-url-from-dh_make-boilerplate
E: package-minimal: copyright-contains-dh_make-todo-boilerplate
E: package-minimal: debian-changelog-file-contains-invalid-email-address g@packaging-stable-2010
Here are the content of the three remaining files : changelog, control and rules.
$package-minimal-2.0.2/debian# more copyright
This work was packaged for Debian by:
M e <me@me.me> on Sat, 19 Jun 2010 10:28:16 +0200
Copyright:
<Copyright (C) 2010 M e>
License:
T
$package-minimal-2.0.2/debian$ more control
Source: package-minimal
Section: doc
Priority: extra
Maintainer: M e <me@me.me>
Standards-Version: 3.8.4
Package: package-minimal
Architecture: any
Description: d
empty package
$package-minimal-2.0.2/debian# more rules
#!/usr/bin/make -f
%:
dh $@
files you don't need to change :
$package-minimal-2.0.2/debian$ more changelog
package-minimal (2.0.2) unstable; urgency=low
* Initial Release.
-- M e <me@me.me> Tue, 30 Aug 2011 23:28:54 -1000
$package-minimal-2.0.2/debian# more compat
7
- 8 - Once it is lintian clean, remove all the files which can be removed from the source package
it is debian clean :
$package-minimal$ lintian p*.deb
$package-minimal$
removing some files :
$package-minimal-2.0.3/debian$ rm -fr *.ex *.EX R* docs source
$package-minimal-2.0.3/debian$ ls
changelog compat control copyright rules