mdeguzis
By:
mdeguzis

Can't seem to run pbuilder correctly

March 10, 2016 1.2k views
Linux Commands System Tools Miscellaneous Debian

Subject: Having trouble running pbuilder
Brief description of how DigitalOcean can help you: No pbuilder command seems to work aside form 'pbuilder' / 'sudo pbuilder' (as desktop user). If I invoke 'pbuilder create' nothing happens, no output at all, pbuilder doesn't even kick off to show any errors at all. I tried an strace, but am still trying to parse the output. All these commands work fine on a local Debian 8 VM, as well as a SteamOS test machine.

strace:
http://sprunge.us/UdaF

Seems as if anything beyond 'pbuilder --help' does not produce any output text on the CLI at all*. From experience, even if you leave out tons of options, and just bark at at pbuilder to do 'pbuilder create' it will flash a few lines, even if the directories it needs are not there, basetgz not there, keyring missing, and so on.

Please help DO Community, you're my only hope (ba dum crash).

-PK

6 Answers

Hello!

Is this on a brand new Debian droplet? As of right now, on a test droplet I just spun up, I'm not able to reproduce this. After installing the build tools and pbuilder:

apt-get install pbuilder debootstrap devscripts

I'm able to run pbuilder create to set up my environment properly. It works exactly as expected...

So yeah, with that in mind, my guess is there's something a bit more complicated at play here, and I'd recommend giving it another go on a clean droplet to see if you can reproduce your results.

I've granted you a bit of credit to allow you some room to experiment. Please let me know what you find! :)

Best,
Eris
Platform Support Specialist

Update:
Rebuilt my droplet on Debian x64 8.3

apt-get update
apt-get install pbuilder git
pbuilder create

.... something something...dark side... (works from basic standpoint!)

adduser desktop
gpasswd -a desktop sudo
su - desktop
git clone https://github.com/ProfessorKaos64/SteamOS-Tools-Packaging
cd setup-files
./configure-packaging-evn.sh
pbuilder-wrapper create brewmaster amd64

Seems to be working now! Not sure what happened. Woohoo for easy to use control panel and snapshots! :)

Thank you Eris! (FF7 fanfare cue). I believe it is something with my setup script I use for SteamOS.

https://github.com/ProfessorKaos64/SteamOS-Tools-Packaging/blob/brewmaster/setup-files/configure-packaging-env.sh

I need to figure out what syntax/coding error I made there. Maybe a false flag and my error :/ , but I most certainly am going to try out this credit on a large build when I fix this, such as Qt or or the like. Or upgrade my plan finally :)

Ok, confirmed it's an issue with .pbuilderrc, a recent change I may have made to segment pathing for SteamOS (default low 10GB root partition, so I path to $HOME). How embarrassing @.@

  • I'm glad you were able to figure this out! :)

    • Not yet :) ha. It seems as soon as I populate /root/.pbuilderrc, it stops working, same permissions and owners as the other dot files in /root/. If I remove that file, I can at least fire off 'pbuilder create'. It's almost as if it is ignoring the file. This same file works just fine on my SteamOS machine I am SSH'ed into, and I only use pbuilder on that box as well, I don't install extra packages beyond what pbuilder needs. I can even spell the DIST wrong, and pbuilder outputs nothing, not even "unknown dist"

      Hmmmm.

      • Weird. I can reproduce that behavior on my test machine with your .pfbuilderrc file, fwiw.

        • I wrote above, there is one specific section that is tripping things up. Mus the how I am assigning this. Pbuilder doesn't do syntax checks like this, so let me see if I can fix this up. strange. That if statement is doing something incorrect

          # root partition on SteamOS is very small, divert paths
                  STEAMOS_CHECK=$(uname -a | grep -i "steamos")
          
                  if [ "${STEAMOS_CHECK}" != "" ]; then
          
                      BASETGZ="$HOME/pbuilder/$DIST-$ARCH-base.tgz"
                      APTCACHEHARDLINK=no
                      APTCACHE="$HOME/pbuilder/$DIST/aptcache/"
                      BUILDPLACE="$HOME/pbuilder/build"
          
                  fi
          

Issue is with this chunk of code:

        # root partition on SteamOS is very small, divert paths
        STEAMOS_CHECK=$(uname -a | grep -i "steamos")

        if [ "${STEAMOS_CHECK}" != "" ]; then

            BASETGZ="$HOME/pbuilder/$DIST-$ARCH-base.tgz"
            APTCACHEHARDLINK=no
            APTCACHE="$HOME/pbuilder/$DIST/aptcache/"
            BUILDPLACE="$HOME/pbuilder/build"

        fi

I know I'm talking to myself, but it helps I guess :P

Have another answer? Share your knowledge.