[ previous ] [ Contents ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 10 ] [ A ] [ next ]
lintian
and linda
packages
Run lintian(1)
and linda(1)
on your .changes file;
these programs will check for many common packaging errors. The commands are:
lintian -i gentoo_0.9.12-1_i386.changes linda -i gentoo_0.9.12-1_i386.changes
Of course, replace the filename with the name of the .changes file generated for your package. If it appears that there are some errors (lines beginning with E:), read the explanation (the N: lines), correct mistakes, and rebuild as described in Complete rebuild, Section 6.1. If there are lines that begin with W:, those are warnings, so tune the package or verify that the warnings are spurious (and make Lintian overrides; see the documentation for details).
Note that you can build the package with dpkg-buildpackage
, run
lintian
, and linda
all in one command with
debuild(1)
.
mc
command
You can unpack the contents of *.deb
package with
dpkg-deb(1)
command. You can list the contents of a generated
Debian package with debc(1)
.
This can be made into an intuitive process by using a file manager like
mc(1)
which will let you browse not only the contents of
*.deb
package files but also *.diff.gz
and
*.tar.gz
files.
Be on the lookout for extra unneeded files or zero length files, both in the binary and source package. Often cruft doesn't get cleaned up properly; adjust your rules file to compensate for that.
Tips: `zgrep ^+++ ../gentoo_0.9.12-1.diff.gz' will give you a list of your changes/additions to the source files, and `dpkg-deb -c gentoo_0.9.12-1_i386.deb' or `debc gentoo_0.9.12-1_i386.changes' will list the files in the binary package.
debdiff
command
You can compare file lists in two binary Debian packages with
debdiff(1)
command. This is useful for verifying that no files
have been unintentionally misplaced or removed, and no other inadvertent
changes were made when updating packages. You can check group of
*.deb
files simply by `debdiff old-package.change
new-package.change'.
interdiff
command
You can compare two diff.gz
files with interdiff(1)
command. This is useful for verifying that no inadvertent changes were made to
the source by the maintainer when updating packages. Run `interdiff -z
old-package.diff.gz new-package.diff.gz'.
debi
command
Install the package to test it yourself, e.g. using the debi(1)
command as root. Try to install and run it on machines other than your own and
watch closely for any warnings or errors both during the installation and while
the program is being run.
pbuilder
package
For a clean room (chroot) build environment to verify the build dependencies,
the pbuilder
package is very useful. This ensures a clean build
from source under the auto-builder for different architectures and avoids the
severity serious FTBFS (Fails To Build From Source) bug which is always in the
RC (release critical) category. See http://buildd.debian.org/
for more
on the Debian package auto-builder.
The most basic use of the pbuilder
package is the direct
invocation of pbuilder
command from root. For example, issue the
following commands in the directory where .orig.tar.gz
,
.diff.gz
, and .dsc
exist to build a package.
root # pbuilder create # if second time, pbuilder update root # pbuilder build foo.dsc
The newly built packages will be located in
/var/cache/pbuilder/result/
with root ownership.
The pdebuild
command helps you to use pbuilder
package functions from the normal user account. From the root of the source
tree while having orig.tar.gz
file in its parent directory, you
issue the following commands:
$ sudo pbuilder create # if second time, sudo pbuilder update $ pdebuild
The newly built packages will be located in
/var/cache/pbuilder/result/
with non-root ownership. [2]
If you want to add an additional apt source to be used by the
pbuilder
package, you set OTHERMIRROR in
~/.pbuilderrc
or /etc/pbuilderrc
and run (for sarge)
$ sudo pbuilder update --distribution sarge --override-config
The use of --override-config is needed to update apt source within chroot environment.
See http://www.netfort.gr.jp/~dancer/software/pbuilder.html
,
pdebuild(1)
, pbuilderrc(5)
, and
pbuilder(8)
.
[ previous ] [ Contents ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 10 ] [ A ] [ next ]
Debian New Maintainers' Guide
[email protected]