#652000 /usr/bin/pbuilder-dist: pbuilder-dist ignores environment and has no way to set a custom pbuilderrc #652000
- Package:
- ubuntu-dev-tools
- Source:
- ubuntu-dev-tools
- Submitter:
- Karl Goetz
- Date:
- 2011-12-26 21:51:06 UTC
- Severity:
- minor
Hi, Because pbuilder-dist is available in squeeze, but qemu-debootstrap isn't, I've downloaded the script from bug 572952 and I'm trying to use it with pbuilder-dist. Unfortunately, despite saying "install or change DEBOOTSTRAP option" it seems to ignore the environment and the users .pbuilderrc. Could this be changed please? It makes it excessively hard to use the thing, to the extent that you need to be able to edit roots pbuilderrc. thanks, kk
combinations. DEBOOTSTRAP in roots .pbuilderrc: FAIL PATH=$PATH:/script/location/ in the environment: FAIL PATH=$PATH:/script/location/ in roots .pbuilderrc: PASS Hard coding the path in a copy of the script: PASS So it seems it might actually be a path issue, not a DEBOOTSTRAP one. Not sure if the script should be changed to match the man page, or the man page to match the script. Relevant line is ~322. thanks, kk
Hi Karl (2011.12.14_01:57:05_+0200) pbuilder-dist is passing --debootstrap qemu-debootstrap to pbuilder. That overrides anything in pbuilderrc. Can you not put it somewhere on your PATH? SR
Hi Karl (2011.12.14_02:14:53_+0200) Which manpage are we talking about? Having to set up *anything* in root's .pbuilderrc is a bad sign. It should be using your .pbuilderrc. This is why pbuilder-dist now refuses to be run under sudo, and calls sudo itself. A bit of an ugly hack, but not too much one can do about it... SR
On Fri, 16 Dec 2011 15:12:16 +0200 Stefano Rivera <stefanor@debian.org> wrote:
(appologies in advance if the pastes are broken, claws-mail can be a
right pos at times).
ignores it. It certainly set me down a wrong path.
I put qemu-debootstrap in /usr/local/bin and still had no joy from
pbuilder-dist. I wound up making a copy and hard coding in the path for
qemu-debootstrap before it would work.
10:08:24 kgoetz@epicfail: /tmp $ grep qemu /usr/local/bin/pbuilder-dist
# For some foreign architectures we need to use qemu
args.append('--debootstrap qemu-debootstrap')
# args.append('--debootstrap /usr/local/bin/qemu-debootstrap')
10:08:38 kgoetz@epicfail: /tmp $ PBUILDFOLDER=/home/kgoetz/custom-pbuilder /usr/local/bin/pbuilder-dist squeeze armel mainonly create
/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games:/sbin/:/usr/sbin/:/home/kgoetz/.bin/:/home/kgoetz
W: /root/.pbuilderrc does not exist
I: Logging to /home/kgoetz/custom-pbuilder/squeeze-armel_result/last_operation.log
I: Distribution is squeeze.
I: Building the build environment
I: running qemu-debootstrap
E: qemu-debootstrap does not exist, install or change DEBOOTSTRAP option
W: Aborting with an error
I: cleaning the build env
I: removing directory /var/cache/pbuilder/build//30521 and its subdirectories
10:08:44 kgoetz@epicfail: /tmp $ grep qemu /usr/local/bin/pbuilder-dist
# For some foreign architectures we need to use qemu
args.append('--debootstrap /usr/local/bin/qemu-debootstrap')
10:08:57 kgoetz@epicfail: /tmp $ PBUILDFOLDER=/home/kgoetz/custom-pbuilder /usr/local/bin/pbuilder-dist squeeze armel mainonly create
/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games:/sbin/:/usr/sbin/:/home/kgoetz/.bin/:/home/kgoetz
W: /root/.pbuilderrc does not exist
I: Logging to /home/kgoetz/custom-pbuilder/squeeze-armel_result/last_operation.log
I: Distribution is squeeze.
I: Building the build environment
I: running /usr/local/bin/qemu-debootstrap
/usr/local/bin/qemu-debootstrap
I: Running command: debootstrap --arch armel --foreign --include=apt --variant=buildd --keyring /usr/share/keyrings/debian-archive-keyring.gpg squeeze . http://mirror.internode.on.net/pub/debian
I: Retrieving Release
I: Retrieving Release.gpg
I: Checking Release signature
I: Valid Release signature (key id 9FED2BCBDCD29CDF762678CBAED4B06F473041FA)
I: Retrieving Packages
^V^CE: Interrupt caught ... exiting
I: cleaning the build env
I: removing directory /var/cache/pbuilder/build//30568 and its subdirectories
Sorry, I meant the scripts output (my mistake there).
10:08:38 kgoetz@epicfail: /tmp $ PBUILDFOLDER=/home/kgoetz/custom-pbuilder /usr/local/bin/pbuilder-dist squeeze armel mainonly create
/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games:/sbin/:/usr/sbin/:/home/kgoetz/.bin/:/home/kgoetz
W: /root/.pbuilderrc does not exist
I: Logging to /home/kgoetz/custom-pbuilder/squeeze-armel_result/last_operation.log
I: Distribution is squeeze.
I: Building the build environment
I: running qemu-debootstrap
E: qemu-debootstrap does not exist, install or change DEBOOTSTRAP option
W: Aborting with an error
I: cleaning the build env
I: removing directory /var/cache/pbuilder/build//30521 and its subdirectories
Hopefully this can be worked out then.
thanks,
kk
severity 652000 minor thanks Lowering the severity, as this is about a minorish feature of one script Hi Karl (2011.12.18_01:20:16_+0200) What's suggesting that? You're being bitten by sudo's env_reset. This version of pbuilder-dist didn't support it yet. Newer versions pass HOME=$HOME to sudo. SR
Not finding the bootstraping script isn't really a minor problem in the script, its a blocker problem. I don't object to the severity drop though. pbuilder-dist, a few lines down from where you cut my paste below (Its possible I included it in a different email?) [...] I: Logging to /home/kgoetz/custom-pbuilder/squeeze-armel_result/last_operation.log I: Distribution is squeeze. I: Building the build environment I: running qemu-debootstrap E: qemu-debootstrap does not exist, install or change DEBOOTSTRAP option Is there a newer version which doesn't require a newer devscripts, or will I have to try and backport devscripts to resolve this? (I've encountered another issue with the passing of --keyring to debootstrap which is fixed in a later version too) thanks, kk
Hi Karl (2011.12.22_00:31:33_+0200) The bootstrapping script that wasn't packaged in squeeze :P Ah, that error is coming from pbuilder, just passed through pbuilder-dist. You can checkout the bzr repo, the pbuilder-dist script from trunk should work on squeeze (although I can't say I've tested that...) SR
true enough (:
ah. sorry, I didn't realise that.
08:45:05 kgoetz@epicfail: ~/srccache/ubuntu-dev-tools $ ./pbuilder-dist
Traceback (most recent call last):
File "./pbuilder-dist", line 35, in <module>
from devscripts.logger import Logger
ImportError: No module named devscripts.logger
thanks,
kk