- projectcenter.app
- terminal.app: bug 848097 - Provides x-terminal-emulator, but doesn't implement the requirements
- file a bug about sbuild tools not exiting cleanly or not giving useful error messages if the chroot creation was interrupted before and some /usr/bin or /bin symlink already exists, causing debootstrap to exit with an error (but it doesn't tell which command failed)
Chroot
This was done by pbuilder, but is now done by sbuild.
# Setup tasks for sudo users:
# BUILD
# HOME directory in chroot, user:sbuild, 0770 perms, from
# passwd/group copying to chroot, filtered
# Maybe source 50sbuild, or move into common location.
Next, copy the example sbuildrc file to the home directory of each user and
set the variables for your system:
cp /usr/share/doc/sbuild/examples/example.sbuildrc /home/svetlana/.sbuildrc
Now try a build:
cd /path/to/source
sbuild-update -ud <distribution>
(or "sbuild-apt <distribution> apt-get -f install"
first if the chroot is broken)
sbuild -d <distribution> <package>_<version>
Download source
The first step when packaging is to obtain the source code and debian metadata for the package. Normally this is done using apt-get source packagename
but if a package is maintained in git then we use gbp commands (intro, also import (branch naming)). gbp clone
clones the package (--pristine-tar
tracks the pristine-tar branch but this is rarely needed).
Import upstream
The next step is importing the upstream. It is impotrted either from a release tarball using gbp import-orig
command, (gbp import-orig --uscan
imports the upstream as tarball using debian/watch
file), or from git (if the upstream uses git; then pristine-tar
still keeps a release tarball for Debian).
Apply Debian patches
Then the Debian patches need to be applied to make sure they still work for the new upstream release. Setting an environment variable via export QUILT_PATCHES=debian/patches
is important when doing so; quilt defaults to patches
and this does not work. quilt push
one patch at a time, then fix or quilt refresh
it. a howto; how to use.
Commit
Edit the changelog. dch -v 0.6.2-1
opens it in an editor.
Then if the package uses git we need to save our changes. Use git commit -a
.
Build
To build the package, use gbp buildpackage
, with -us -uc
to disable signing.
After the package is ready, gbp buildpackage --git-tag
creates a tag from debian/changelog
.
Extra documentation
- updating packages - section 8.1. is about backporting; see 8.2+.