chiark / gitweb /
changelog: start 9.14
[dgit.git] / dgit-user.7.pod
index aacdf4d4482dfa0a67d13422999ffc9b46cd00f1..18f06dac6e9a83e5d425875442f80af2ba974868 100644 (file)
@@ -32,10 +32,10 @@ or L<dgit(1)> and L<dgit(7)>.
 
     % dgit clone glibc jessie,-security
     % cd glibc
-    % wget 'https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=28250;mbox=yes;msg=89' | patch -p1 -u
+    % curl 'https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=28250;mbox=yes;msg=89' | patch -p1 -u
     % git commit -a -m 'Fix libc lost output bug'
     % gbp dch -S --since=dgit/dgit/sid --ignore-branch --commit
-    % sudo apt-get build-dep glibc
+    % mk-build-deps --root-cmd=sudo --install
     % dpkg-buildpackage -uc -b
     % sudo dpkg -i ../libc6_*.deb
 
@@ -97,8 +97,8 @@ you can look it up with dpkg:
 
 (In this example,
 libc6 is a "multi-arch: allowed" package,
- which means that it exists in several different builds
- for different architectures.
+which means that it exists in several different builds
+for different architectures.
 That's where C<:i386> comes from.)
 
 =head2 Finding the Debian release (the "suite")
@@ -288,21 +288,37 @@ a complete treatment is beyond the scope of this tutorial.
 
 =over 4
 
-    % sudo apt-get build-dep glibc
+    % mk-build-deps --root-cmd=sudo --install
     % dpkg-buildpackage -uc -b
 
 =back
 
-apt-get build-dep installs the build dependencies according to the
-official package, not your modified one.  So if you've changed the
-build dependencies you might have to install some of them by hand.
-
 dpkg-buildpackage is the primary tool for building a Debian source
 package.
 C<-uc> means not to pgp-sign the results.
 C<-b> means build all binary packages,
 but not to build a source package.
 
+=head2 Using sbuild
+
+You can build in an schroot chroot, with sbuild, instead of in your
+main environment.  (sbuild is used by the Debian build daemons.)
+
+=over 4
+
+    % git clean -xdf
+    % sbuild -c jessie -A --no-clean-source \
+             --dpkg-source-opts='-Zgzip -z1 --format=1.0 -sn'
+
+=back
+
+Note that this will seem to leave a "source package"
+(.dsc and .tar.gz)
+in the parent directory,
+but that source package should not be used.
+It is likely to be broken.
+For more information see Debian bug #868527.
+
 =head1 INSTALLING
 
 =head2 Debian Jessie or older
@@ -351,8 +367,9 @@ have enabled.
 You'll need a chroot for each of the secondary architectures.
 This is somewhat tiresome,
 even though Debian has excellent tools for managing chroots.
-C<sbuild-createchroot> from the sbuild package is a
-good starting point.
+C<sbuild-debian-developer-setup> from the package of the same name
+and C<sbuild-createchroot> from the C<sbuild> package are
+good starting points.
 
 Otherwise you could deinstall the packages of interest
 for those other architectures
@@ -362,7 +379,7 @@ If neither of those are an option,
 your desperate last resort is to try
 using the same version number
 as the official package for your own package.
-(The version is controlled by C<debian/changelog> - see above).
+(The version is controlled by C<debian/changelog> - see above.)
 This is not ideal because it makes it hard to tell what is installed,
 and because it will mislead and confuse apt.