Developing system-wide Debian packages
Create build environment
localcowbuilder-create jessie
Refresh build environment
localcowbuilder-update jessie
Build package
Minimal steps involved in building a new package:
Refresh copyright file:
debian/copyright-check
Resolve changelog from git commits:
gbp dch -a
Finalize changelog
(manually merge/drop items to reflect only product):
dch -r
Build in clean chroot and tag as final:
localgitcowdebuild sid --git-tag
Compare built binaries against previous ones
(replacing %f
and %D/%F
with paths to old and new packages,
respectively):
debdiff --controlfiles ALL --wl %f %D/%F | less
Check lintian warnings/errors:
lintian *.changes
Rebuild source-only package
(to save bandwidth uploading, and for official rebuild):
localgitcowdebuild sid -S
Sign and upload:
debsign %f && dput %f
Backport package for main architecture
localcowdebuild jessie -sa
Backport package for secondary architecture
localcowdebuild jessie-ia32 -b