[website] 01/01: Improve cowbuilder set up section
Ross Gammon
ross-guest at moszumanska.debian.org
Fri Feb 5 21:12:26 UTC 2016
This is an automated email from the git hooks/post-receive script.
ross-guest pushed a commit to branch master
in repository website.
commit 37f942e805ff5de3b181cdb629570f8e7d55ba4b
Author: Ross Gammon <rossgammon at mail.dk>
Date: Fri Feb 5 22:07:32 2016 +0100
Improve cowbuilder set up section
Move the pbuilder hooks section up so that you don't create the chroot
without it. Don't use ambiguous ~ for path to hooks. Add information
about updating the chroot. Add a link to setting up multiple distributions.
---
policy.xml | 92 ++++++++++++++++++++++++++++++++++++++++----------------------
1 file changed, 59 insertions(+), 33 deletions(-)
diff --git a/policy.xml b/policy.xml
index 43ed36c..2d6dc0e 100644
--- a/policy.xml
+++ b/policy.xml
@@ -898,10 +898,12 @@ pkg-grass/
<literallayout><command>cowbuilder</command> is preferred over <command>pbuilder</command> by <command>git-buildpackage</command> for its increased performance using Copy-On-Write techniques.
<command>pbuilder</command> can be selected instead by setting the environment variable <literal>BUILDER</literal> to "<literal>pbuilder</literal>", and
<command>qemubuilder</command> can be selected by setting <literal>BUILDER</literal> to "<literal>qemubuilder</literal>".
-</literallayout>
- <literallayout>Root privileges are required to run <command>cowbuilder</command> and <command>pbuilder</command>.
-Configure <command>sudo</command> with <command>visudo</command> to allow <replaceable><username></replaceable> passwordless execution of <command>cowbuilder</command> and <command>pbuilder</command> using the following settings:
-</literallayout>
+ </literallayout>
+ <sect5 id="git-pbuilder-create">
+ <title>Creating the cowbuilder chroot</title>
+ <literallayout>Root privileges are required to run <command>cowbuilder</command> and <command>pbuilder</command>.
+ Configure <command>sudo</command> with <command>visudo</command> to allow <replaceable><username></replaceable> passwordless execution of <command>cowbuilder</command> and <command>pbuilder</command> using the following settings:
+ </literallayout>
<programlisting>
Defaults! PBUILDERS setenv
@@ -911,34 +913,9 @@ Cmnd_Alias PBUILDERS=/usr/sbin/pbuilder, /usr/sbin/cowbuilder
# User privilege specification
<replaceable><username></replaceable> ALL=(root) NOPASSWD:PBUILDERS
</programlisting>
- <para id="git-cowbuilder-dist">
- To create <emphasis>distribution</emphasis> specific
- <command>cowbuilder</command> chroots, use:
-<programlisting>
-<command>sudo cowbuilder</command> <option>--create</option> <option>--distribution=<replaceable><distribution></replaceable></option> <option>--basepath=/var/cache/pbuilder/base-<replaceable><distribution></replaceable>.cow</option>
-</programlisting>
- </para>
- <para id="git-cowbuilder-arch">
- To create <emphasis>architecture</emphasis>
- specific <command>cowbuilder</command> chroots, use:
-<programlisting>
-<command>sudo cowbuilder</command> <option>--create</option> <option>--distribution=<replaceable><distribution></replaceable></option> <option>--architecture=<replaceable><architecture></replaceable></option> <option>--basepath=/var/cache/pbuilder/base-<replaceable><distribution></replaceable>-<replaceable><architecture></replaceable>.cow</option>
-</programlisting>
- </para>
- <para>
- The default distribution for <command>git-buildpackage</command>
- is <literal>sid</literal>, other distributions can be specified with
- <option>--git-dist=<replaceable><distribution></replaceable></option>
- </para>
- <para>
- To create the default chroot for <command>git-buildpackage</command>:
-<programlisting>
-<command>sudo cowbuilder</command> <option>--create</option> <option>--distribution=sid</option> <option>--basepath=/var/cache/pbuilder/base-sid.cow</option>
-</programlisting>
- </para>
+ </sect5>
<sect5 id="git-pbuilder-hooks">
<title>Configure lintian pbuilder hook</title>
-
<para>
It's highly recommended to run <command>lintian</command>
after every build.
@@ -952,9 +929,9 @@ Cmnd_Alias PBUILDERS=/usr/sbin/pbuilder, /usr/sbin/cowbuilder
directory, and modify it to report all <command>lintian</command>
tags and not fail the build if lintian reports issues.
<programlisting>
-<command>mkdir</command> <filename class="directory">~/pbuilder-hooks</filename>
-<command>cp</command> <filename>/usr/share/doc/pbuilder/examples/B90lintian</filename> <filename class="directory">~/pbuilder-hooks/</filename>
-<command>sed</command> <option>-i</option> <literal>'s/lintian -I --show-overrides/& --pedantic -E/; s/^su /##&/; s/^#su /su /'</literal> <filename>~/pbuilder-hooks/B90lintian</filename>
+<command>mkdir</command> <filename class="directory">/var/cache/pbuilder/hook.d/</filename>
+<command>cp</command> <filename>/usr/share/doc/pbuilder/examples/B90lintian</filename> <filename class="directory">/var/cache/pbuilder/hook.d/</filename>
+<command>sed</command> <option>-i</option> <literal>'s/lintian -I --show-overrides/& --pedantic -E/; s/^su /##&/; s/^#su /su /'</literal> <filename>/var/cache/pbuilder/hook.d/B90lintian</filename>
</programlisting>
</para>
<para>
@@ -964,6 +941,55 @@ Cmnd_Alias PBUILDERS=/usr/sbin/pbuilder, /usr/sbin/cowbuilder
<command>sudo cowbuilder</command> <option>--create</option> <option>--distribution=<replaceable>sid</replaceable></option> <option>--basepath=/var/cache/pbuilder/base-<replaceable>sid</replaceable>.cow</option> <option>--hookdir=~/pbuilder-hooks/</option>
</programlisting>
</para>
+ <para id="git-cowbuilder-dist">
+ To create <emphasis>distribution</emphasis> specific
+ <command>cowbuilder</command> chroots, use:
+<programlisting>
+<command>sudo cowbuilder</command> <option>--create</option> <option>--distribution=<replaceable><distribution></replaceable></option> <option>--basepath=/var/cache/pbuilder/base-<replaceable><distribution></replaceable>.cow</option>
+</programlisting>
+ </para>
+ <para id="git-cowbuilder-arch">
+ To create <emphasis>architecture</emphasis>
+ specific <command>cowbuilder</command> chroots, use:
+<programlisting>
+<command>sudo cowbuilder</command> <option>--create</option> <option>--distribution=<replaceable><distribution></replaceable></option> <option>--architecture=<replaceable><architecture></replaceable></option> <option>--basepath=/var/cache/pbuilder/base-<replaceable><distribution></replaceable>-<replaceable><architecture></replaceable>.cow</option>
+</programlisting>
+ </para>
+ <para>
+ The default distribution for <command>git-buildpackage</command>
+ is <literal>sid</literal>, other distributions can be specified with
+ <option>--git-dist=<replaceable><distribution></replaceable></option>
+ </para>
+ <para>
+ To create the default chroot for <command>git-buildpackage</command>:
+<programlisting>
+<command>sudo cowbuilder</command> <option>--create</option> <option>--distribution=sid</option> <option>--basepath=/var/cache/pbuilder/base-sid.cow</option>
+</programlisting>
+ </para>
+ <para>
+ Remember to update the chroot for <command>git-buildpackage</command> regularly:
+<programlisting>
+<command>git-pbuilder update</command>
+</programlisting>
+ This will update the default chroot (e.g. base-sid.cow).
+ </para>
+ <para>
+ For other architectures and distributions:
+<programlisting>
+<command>DIST=distribution ARCH=architecture git-pbuilder update</command>
+</programlisting>
+ </para>
+ </sect5>
+ <sect5 id="git-pbuilder-tips">
+ <title>Other useful set up tips</title>
+ <para>
+ To ensure the correct gpg key is used when signing git tags:
+ <command>git config</command> <option>--global user.signingkey yourkeyID</option>
+ </para>
+ <para>
+ To set up multiple chroots for different distributions (e.g. stable, testing, sid, and Ubuntu), see:
+ <ulink url="https://wiki.debian.org/PbuilderTricks#How_to_build_for_different_distributions">Pbuilder Tricks</ulink>
+ </para>
</sect5>
</sect4>
<sect4 id="git-new-package">
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-grass/website.git
More information about the Pkg-grass-devel
mailing list