package pbuilder
tags 398404 patch
Package: pbuilder
Version: 0.181
Followup-For: Bug #398404
It is waist of typing to specify long --basetgz [basetgz-location] and
other options on command line or editing ${HOME}/.pbuilderrc contents.
There should be an easier way to switch configuration files. This is
useful not only for bpo but also experimental support etc.
I propose to add "--use suffix" commadline which is placed before any
other options. Anyway, see my patch. This provides fix not only for
this bug 398404 but also addresses other wishlist bugs.
373807 (one base.tzg per distribution by "--use dists")
324000 (At least with new "I: ...", it is obvious which files are sourced)
272354 (Something described here by Loïc Minier and normal sid build
can be done cleanly switched with this patch. Also original
bug report wish may be addressed by "--use stable"
configuration specifying OTHERDISTRIBUTION pointing to security
archive Of course, we need to implement OTHERDISTRIBUTION which
is not yet done in here.)
Oh, I did not include but it may be interesting to create several
prepackaged files such as /usr/share/pbuilder/pbuilderrc.bpo where
OTHERMIRROR and OTHERDISTRIBUTION (this needs to be done) are specified
to point to security and bpo while DISTRIBUTION is etch.
Since how to cleanly implement OTHERDISTRIBUTION for each OTHERMIRROR, I
leave that as next action item and provide very basic switching
functionality now. OTHERDISTRIBUTIO will be next step.
Osamu
-- System Information:
Debian Release: lenny/sid
APT prefers unstable
APT policy: (500, 'unstable')
Architecture: amd64 (x86_64)
Kernel: Linux 2.6.25-2-amd64 (SMP w/2 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash
Versions of packages pbuilder depends on:
ii cdebootstrap 0.5.2 Bootstrap a Debian system
ii coreutils 6.10-6 The GNU core utilities
ii debconf [debconf-2.0] 1.5.22 Debian configuration management sy
ii debianutils 2.28.6 Miscellaneous utilities specific t
ii debootstrap 1.0.9 Bootstrap a basic Debian system
ii gcc 4:4.3.0-8 The GNU C compiler
ii wget 1.11.2-1 retrieves files from the web
Versions of packages pbuilder recommends:
ii cowdancer 0.47 Copy-on-write directory tree utili
ii devscripts 2.10.29 scripts to make the life of a Debi
ii fakeroot 1.9.5 Gives a fake root environment
ii sudo 1.6.9p15-2 Provide limited super user privile
-- debconf information excluded
diff --git a/debian/changelog b/debian/changelog
index f7aa97f..98f9fd3 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,11 @@
+pbuilder (0.181+nmu1) UNRELEASED-unstable; urgency=low
+
+ * Non-maintainer upload. !!! No !!! --- just for test local build.
+ [ Osamu Aoki]
+ * Swichable configuration files using "--use suffix" (closes: #398404)
+
+ -- Osamu Aoki <[EMAIL PROTECTED]> Sat, 07 Jun 2008 10:27:21 +0900
+
pbuilder (0.181) unstable; urgency=low
[ Esko Arajärvi ]
diff --git a/pbuilder b/pbuilder
index ed35fb4..7cd5f0d 100755
--- a/pbuilder
+++ b/pbuilder
@@ -20,9 +20,15 @@
set -e
+if [ "$1" = "--use" ] || [ "$1" = "use" ]; then
+ PBCONFIGSUFFIX=".$2"
+ shift 2
+fi
+
# export this so that programs know which command line
# operation is currently done
export PBCURRENTCOMMANDLINEOPERATION="$1"
+export PBCONFIGSUFFIX
umask 0022
case "$1" in
diff --git a/pbuilder-loadconfig b/pbuilder-loadconfig
index 8367143..f506a27 100644
--- a/pbuilder-loadconfig
+++ b/pbuilder-loadconfig
@@ -17,9 +17,10 @@
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
-for RCFILE in /usr/share/pbuilder/pbuilderrc /etc/pbuilderrc ${HOME}/.pbuilderrc; do
+for RCFILE in /usr/share/pbuilder/pbuilderrc${PBCONFIGSUFFIX} /etc/pbuilderrc${PBCONFIGSUFFIX} ${HOME}/.pbuilderrc${PBCONFIGSUFFIX}; do
if [ -f "$RCFILE" ]; then
. "$RCFILE"
+ echo "I: $RCFILE loaded"
else
echo "W: $RCFILE does not exist" >&2
fi
diff --git a/pbuilder-modules b/pbuilder-modules
index 26626f9..7d8c30d 100644
--- a/pbuilder-modules
+++ b/pbuilder-modules
@@ -24,7 +24,7 @@ pbuilder - a personal builder
Copyright 2001-2007 Junichi Uekawa
Distributed under GNU Public License version 2 or later
-pbuilder [operation] [pbuilder-options]
+pbuilder [--use suffix] [operation] [pbuilder-options]
pdebuild [pdebuild-options] -- [pbuilder-options]
command lines:
@@ -46,6 +46,10 @@ pbuilder --execute -- [command] [command-options]
pbuilder --dumpconfig
Dumps configuration information to stdout for debugging.
+ Configuration files are: (add suffix if specified by "--use")
+ /usr/share/pbuilder/pbuilderrc[.suffix]
+ /etc/pbuilderrc[.suffix]
+ ${HOME}/.pbuilderrc[.suffix]
pbuilder-options:
--basetgz [base.tgz location]
diff --git a/pbuilder.8 b/pbuilder.8
index 3a36bcf..c2c05f9 100644
--- a/pbuilder.8
+++ b/pbuilder.8
@@ -2,17 +2,17 @@
.SH NAME
pbuilder \- personal package builder
.SH SYNOPSIS
-.BI "pbuilder --create [" "options" "]"
+.BI "pbuilder [--use suffix] --create [" "options" "]"
.PP
-.BI "pbuilder --update [" "options" "]"
+.BI "pbuilder [--use suffix] --update [" "options" "]"
.PP
-.BI "pbuilder --build [" "options" "] " ".dsc-file"
+.BI "pbuilder [--use suffix] --build [" "options" "] " ".dsc-file"
.PP
-.BI "pbuilder --execute [" "options" "] -- " "script [" "script options" "]"
+.BI "pbuilder [--use suffix] --execute [" "options" "] -- " "script [" "script options" "]"
.PP
-.BI "pbuilder --clean"
+.BI "pbuilder [--use suffix] --clean"
.PP
-.BI "pbuilder --login [" "options" "]"
+.BI "pbuilder [--use suffix] --login [" "options" "]"
.SH "DESCRIPTION"
Front end program to the
.B "pbuilder"
@@ -94,6 +94,11 @@ directory.
Same as
.B "pdebuild --use-pdebuild-internal"
+.TP
+.B "--use"
+Use configuration file suffixed with
+.I "suffix" .
+
.SH "OPTIONS"
The command is followed by options of the form
@@ -530,17 +535,17 @@ targets.
.SH "FILES"
.TP
-.I "/etc/pbuilderrc"
+.I "/etc/pbuilderrc[.suffix]"
The system-wide configuration file for pbuilder.
.TP
-.I "/usr/share/pbuilder/pbuilderrc"
+.I "/usr/share/pbuilder/pbuilderrc[.suffix]"
The default settings for pbuilder, used as fallback for all
values that is not specified in
-.B "/etc/pbuilderrc."
+.B "/etc/pbuilderrc[.suffix]."
.TP
-.I "${HOME}/.pbuilderrc"
+.I "${HOME}/.pbuilderrc[.suffix]"
The personal configuration file for pbuilder, which overrides
settings set in other configuration files.