PaulHowarth/Blog/2008-09-16

Tuesday 16th September 2008

Local Packages

  • Updated perl-IO-Multiplex to 1.10

Buildsystem Tweaks for Old Distributions

A recent update to yum in Fedora 9 (version 3.2.17 to 3.2.19) included a change that was quite significant when it comes to building packages for old distributions in mock. Failed RPM scriptlets (typically the %pre and %post scriptlets of packages) now cause yum to exit with a return code of 1 to indicate the error rather than 0, implying success. This is an entirely reasonable thing to do of course, but causes problems with some packages for old distributions that weren't designed to be built and installed in chroot-ed environments like mock, my buildsystem tool of choice. So some of these packages find themselves installed into an unexpected environment and their scripts fail. Now that yum passes that failure back to mock, package builds requiring the affected packages fail too.

The first problem I hit was with the dev package, which is built from the MAKEDEV source package. Affected distributions were Red Hat Linux 7, 8, and 9, Fedora Core 1 and 2, and Red Hat Enterprise Linux/CentOS 3. The %post script for dev checks to see if there is something mounted on /dev, and if there is, it assumes that what's mounted is devfs and that it should bail out.

DEBUG util.py:272:  Executing command: /usr/bin/yum --installroot /var/lib/mock/redhat-73-i386/root/  install  'libpcap >= 0.6.2' 'pam-devel'
DEBUG util.py:250:  ================================================================================
DEBUG util.py:250:   Package      Arch      Version                     Repository            Size
DEBUG util.py:250:  ================================================================================
DEBUG util.py:250:  Installing:
DEBUG util.py:250:   libpcap      i386      14:0.6.2-17.7.3.6.legacy    updates-released      318 k
DEBUG util.py:250:   pam-devel    i386      0.75-46.10.legacy.7x        updates-released       72 k
DEBUG util.py:250:  Installing for dependencies:
DEBUG util.py:250:   dev          i386      3.3-4                       core                  813 k
DEBUG util.py:250:   kernel       athlon    2.4.20-46.7.legacy          updates-released       12 M
DEBUG util.py:250:   losetup      i386      2.11n-12.7.3.2.legacy       updates-released       26 k
DEBUG util.py:250:   mkinitrd     i386      3.3.10-1                    core                   47 k
DEBUG util.py:250:  Transaction Summary
DEBUG util.py:250:  ================================================================================
DEBUG util.py:250:  Install      6 Package(s)
DEBUG util.py:250:  Update       0 Package(s)
DEBUG util.py:250:  Remove       0 Package(s)
DEBUG util.py:250:  Total download size: 14 M
DEBUG util.py:250:  Cannot install the dev package: mounted devfs detected.
DEBUG util.py:250:  --------------------------------------------------------------------------------
DEBUG util.py:250:  Total                                           2.3 GB/s |  14 MB     00:00
DEBUG util.py:250:  error: %pre(dev-3.3-4.i386) scriptlet failed, exit status 1
DEBUG util.py:250:  error:   install: %pre scriptlet failed (2), skipping dev-3.3-4
DEBUG util.py:250:  ls:
DEBUG util.py:250:  : No such file or directory
DEBUG util.py:250:  /sbin/mkinitrd: [: : integer expression expected
DEBUG util.py:250:  Installed: libpcap.i386 14:0.6.2-17.7.3.6.legacy pam-devel.i386 0:0.75-46.10.legacy.7x
DEBUG util.py:250:  Dependency Installed: dev.i386 0:3.3-4 kernel.athlon 0:2.4.20-46.7.legacy losetup.i386 0:2.11n-12.7.3.2.legacy mkinitrd.i386 0:3.3.10-1
DEBUG util.py:311:  Child returncode was: 1

I created a patched version of the dev package that exited with a return code of zero instead of 1 when it detected something mounted on /dev (not running the rest of the failing %pre script is not an issue for package building), and added it to a local repository that my buildsystem uses. That fixed things for Red Hat Linux 7 and Fedora Core 2.

DEBUG util.py:272:  Executing command: /usr/bin/yum --installroot /var/lib/mock/redhat-73-i386/root/  install  'libpcap >= 0.6.2' 'pam-devel'
DEBUG util.py:250:  ================================================================================
DEBUG util.py:250:   Package      Arch      Version                     Repository            Size
DEBUG util.py:250:  ================================================================================
DEBUG util.py:250:  Installing:
DEBUG util.py:250:   libpcap      i386      14:0.6.2-17.7.3.6.legacy    updates-released      318 k
DEBUG util.py:250:   pam-devel    i386      0.75-46.10.legacy.7x        updates-released       72 k
DEBUG util.py:250:  Installing for dependencies:
DEBUG util.py:250:   dev          i386      3.3-4.buildsys_hack.rhl7    epochfix              813 k
DEBUG util.py:250:   kernel       athlon    2.4.20-46.7.legacy          updates-released       12 M
DEBUG util.py:250:   losetup      i386      2.11n-12.7.3.2.legacy       updates-released       26 k
DEBUG util.py:250:   mkinitrd     i386      3.3.10-1                    core                   47 k
DEBUG util.py:250:  Transaction Summary
DEBUG util.py:250:  ================================================================================
DEBUG util.py:250:  Install      6 Package(s)
DEBUG util.py:250:  Update       0 Package(s)
DEBUG util.py:250:  Remove       0 Package(s)
DEBUG util.py:250:  Total download size: 14 M
DEBUG util.py:250:  dev package: mounted devfs detected but installing anyway.
DEBUG util.py:250:  ls: : No such file or directory
DEBUG util.py:250:  /sbin/mkinitrd: [: : integer expression expected
DEBUG util.py:250:  --------------------------------------------------------------------------------
DEBUG util.py:250:  Total                                           603 MB/s |  14 MB     00:00
DEBUG util.py:250:  Installed: libpcap.i386 14:0.6.2-17.7.3.6.legacy pam-devel.i386 0:0.75-46.10.legacy.7x
DEBUG util.py:250:  Dependency Installed: dev.i386 0:3.3-4.buildsys_hack.rhl7 kernel.athlon 0:2.4.20-46.7.legacy losetup.i386 0:2.11n-12.7.3.2.legacy mkinitrd.i386 0:3.3.10-1
DEBUG util.py:311:  Child returncode was: 0

The next problem I encountered was with the kernel package's %post script, where there was an error message relating to loopback devices. This affected Red Hat Linux 8 and 9, Fedora Core 1 and 3, and Red Hat Enterprise Linux/CentOS 3.

DEBUG util.py:272:  Executing command: /usr/bin/yum --installroot /var/lib/mock/redhat-8-i386/root/  install  'libpcap >= 0.6.2' 'pam-devel'
DEBUG util.py:250:  ================================================================================
DEBUG util.py:250:   Package      Arch      Version                       Repository          Size
DEBUG util.py:250:  ================================================================================
DEBUG util.py:250:  Installing:
DEBUG util.py:250:   libpcap      i386      14:0.6.2-17.8.0.5.legacy      updates-released    380 k
DEBUG util.py:250:   pam-devel    i386      0.75-46.8.0                   updates-released     72 k
DEBUG util.py:250:  Installing for dependencies:
DEBUG util.py:250:   dev          i386      3.3.1-2.buildsys_hack.rhl8    epochfix            1.0 M
DEBUG util.py:250:   kernel       athlon    2.4.20-30.8.legacy            updates-released     13 M
DEBUG util.py:250:   losetup      i386      2.11r-10                      core                 29 k
DEBUG util.py:250:   lvm          i386      1.0.3-9                       core                553 k
DEBUG util.py:250:   mkinitrd     i386      3.4.28-1                      core                 67 k
DEBUG util.py:250:  Transaction Summary
DEBUG util.py:250:  ================================================================================
DEBUG util.py:250:  Install      7 Package(s)
DEBUG util.py:250:  Update       0 Package(s)
DEBUG util.py:250:  Remove       0 Package(s)
DEBUG util.py:250:  Total download size: 15 M
DEBUG util.py:250:  dev package: mounted devfs detected but installing anyway.
DEBUG util.py:250:  All of your loopback devices are in use.
DEBUG util.py:250:  --------------------------------------------------------------------------------
DEBUG util.py:250:  Total                                           337 MB/s |  15 MB     00:00
DEBUG util.py:250:  error: %post(kernel-2.4.20-30.8.legacy.athlon) scriptlet failed, exit status 1
DEBUG util.py:250:  Installed: libpcap.i386 14:0.6.2-17.8.0.5.legacy pam-devel.i386 0:0.75-46.8.0
DEBUG util.py:250:  Dependency Installed: dev.i386 0:3.3.1-2.buildsys_hack.rhl8 kernel.athlon 0:2.4.20-30.8.legacy losetup.i386 0:2.11r-10 lvm.i386 0:1.0.3-9 mkinitrd.i386 0:3.4.28-1
DEBUG util.py:311:  Child returncode was: 1

I tracked this down to mkinitrd, which was being run in the kernel package's %post script via the new-kernel-pkg script. It doesn't find any loop devices in the chroot with which to create the ramdisk, and bails out. It also spews a few errors as a result of /etc/fstab in the chroot being empty, but these are non-fatal. A patched version of new-kernel-pkg (similar to the dev package hack) in a hacked mkinitrd package resolved this problem.

DEBUG util.py:272:  Executing command: /usr/bin/yum --installroot /var/lib/mock/redhat-8-i386/root/  install  'libpcap >= 0.6.2' 'pam-devel'
DEBUG util.py:250:  ================================================================================
DEBUG util.py:250:   Package     Arch     Version                       Repository            Size
DEBUG util.py:250:  ================================================================================
DEBUG util.py:250:  Installing:
DEBUG util.py:250:   libpcap     i386     14:0.6.2-17.8.0.5.legacy      updates-released      380 k
DEBUG util.py:250:   pam-devel   i386     0.75-46.8.0                   updates-released       72 k
DEBUG util.py:250:  Installing for dependencies:
DEBUG util.py:250:   dev         i386     3.3.1-2.buildsys_hack.rhl8    epochfix              1.0 M
DEBUG util.py:250:   kernel      athlon   2.4.20-30.8.legacy            updates-released       13 M
DEBUG util.py:250:   losetup     i386     2.11r-10                      core                   29 k
DEBUG util.py:250:   lvm         i386     1.0.3-9                       core                  553 k
DEBUG util.py:250:   mkinitrd    i386     3.4.28-1.buildsys_hack.rhl8   epochfix               68 k
DEBUG util.py:250:  Transaction Summary
DEBUG util.py:250:  ================================================================================
DEBUG util.py:250:  Install      7 Package(s)
DEBUG util.py:250:  Update       0 Package(s)
DEBUG util.py:250:  Remove       0 Package(s)
DEBUG util.py:250:  Total download size: 15 M
DEBUG util.py:250:  dev package: mounted devfs detected but installing anyway.
DEBUG util.py:250:  All of your loopback devices are in use.
DEBUG util.py:250:  mkinitrd failed (code 1) but carrying on regardless
DEBUG util.py:250:  --------------------------------------------------------------------------------
DEBUG util.py:250:  Total                                           2.5 GB/s |  15 MB     00:00
DEBUG util.py:250:  Installed: libpcap.i386 14:0.6.2-17.8.0.5.legacy pam-devel.i386 0:0.75-46.8.0
DEBUG util.py:250:  Dependency Installed: dev.i386 0:3.3.1-2.buildsys_hack.rhl8 kernel.athlon 0:2.4.20-30.8.legacy losetup.i386 0:2.11r-10 lvm.i386 0:1.0.3-9 mkinitrd.i386 0:3.4.28-1.buildsys_hack.rhl8
DEBUG util.py:311:  Child returncode was: 0

The last problem I saw affected procps on Red Hat Enterprise Linux/CentOS 3, and util-linux on Fedora Core 4 and 5. In all of these cases, the packages' %post scripts called utilities that were in /bin but without specifying the full path to them, and got "command not found" errors, causing the scripts to fail. I suspect that this was a package ordering issue but I'm not sure what the exact cause was.

DEBUG util.py:272:  Executing command: /usr/bin/yum --installroot /var/lib/mock/centos-3-x86_64/root/  install buildsys-build
DEBUG util.py:250:  ================================================================================
DEBUG util.py:250:   Package             Arch     Version                 Repository          Size 
DEBUG util.py:250:  ================================================================================
DEBUG util.py:250:  Installing:
DEBUG util.py:250:   buildsys-build      noarch   0.5-3.CF.rhel3          groups              2.5 k
DEBUG util.py:250:  Installing for dependencies:
DEBUG util.py:250:   SysVinit            x86_64   2.85-4.4                core                 99 k
DEBUG util.py:250:   basesystem          noarch   8.0-2.centos.0          core                2.5 k
DEBUG util.py:250:   bash                x86_64   2.05b-41.7.centos.0     core                1.5 M
DEBUG util.py:250:   beecrypt            x86_64   3.0.1-0.20030630        core                 72 k
DEBUG util.py:250:   binutils            x86_64   2.14.90.0.4-42          core                2.9 M
DEBUG util.py:250:   buildsys-macros     noarch   1-4.rhel3               groups              2.8 k
DEBUG util.py:250:   bzip2               x86_64   1.0.2-12.EL3            updates-released     49 k
DEBUG util.py:250:   bzip2-libs          x86_64   1.0.2-12.EL3            updates-released     32 k
DEBUG util.py:250:   centos-release      x86_64   3:3-9.1                 core                 14 k
DEBUG util.py:250:   chkconfig           x86_64   1.3.13.5.EL3-1          core                124 k
DEBUG util.py:250:   coreutils           x86_64   4.5.3-28.7              core                2.4 M
DEBUG util.py:250:   cpio                x86_64   2.5-4.RHEL3             core                 48 k
DEBUG util.py:250:   cpp                 x86_64   3.2.3-59                core                260 k
DEBUG util.py:250:   cracklib            x86_64   2.7-22                  core                 26 k
DEBUG util.py:250:   cracklib-dicts      x86_64   2.7-22                  core                409 k
DEBUG util.py:250:   db4                 x86_64   4.1.25-8.1              core                731 k
DEBUG util.py:250:   dev                 x86_64   3.3.12.3-1.0.buildsys_hack.rhel3
DEBUG util.py:250:                                                        groups              2.8 M
DEBUG util.py:250:   diffutils           x86_64   2.8.1-8                 core                209 k
DEBUG util.py:250:   e2fsprogs           x86_64   1.32-15.4               updates-released    565 k
DEBUG util.py:250:   elfutils            x86_64   0.94.1-2                core                135 k
DEBUG util.py:250:   elfutils-libelf     x86_64   0.94.1-2                core                 37 k
DEBUG util.py:250:   ethtool             x86_64   1.8-3.3                 core                 51 k
DEBUG util.py:250:   expat               x86_64   1.95.5-6                core                 66 k
DEBUG util.py:250:   file                x86_64   3.39-9.EL3.4            core                170 k
DEBUG util.py:250:   filesystem          x86_64   2.2.1-3.centos.1        core                 14 k
DEBUG util.py:250:   findutils           x86_64   1:4.1.7-9.1             core                104 k
DEBUG util.py:250:   gawk                x86_64   3.1.1-9                 core                1.5 M
DEBUG util.py:250:   gcc                 x86_64   3.2.3-59                core                4.6 M
DEBUG util.py:250:   gcc-c++             x86_64   3.2.3-59                core                2.2 M
DEBUG util.py:250:   gdbm                x86_64   1.8.0-20                core                 26 k
DEBUG util.py:250:   glib                x86_64   1:1.2.10-11.1           core                142 k
DEBUG util.py:250:   glibc               x86_64   2.3.2-95.50             core                4.8 M
DEBUG util.py:250:   glibc-common        x86_64   2.3.2-95.50             core                 12 M
DEBUG util.py:250:   glibc-devel         x86_64   2.3.2-95.50             core                2.3 M
DEBUG util.py:250:   glibc-headers       x86_64   2.3.2-95.50             core                522 k
DEBUG util.py:250:   glibc-kernheaders   x86_64   2.4-8.34.5              core                931 k
DEBUG util.py:250:   gmp                 x86_64   4.1.2-5                 core                176 k
DEBUG util.py:250:   gpm                 x86_64   1.19.3-27.2             core                133 k
DEBUG util.py:250:   grep                x86_64   2.5.1-24.6              core                173 k
DEBUG util.py:250:   gzip                x86_64   1.3.3-14.rhel3          core                 93 k
DEBUG util.py:250:   info                x86_64   4.5-3.el3.1             core                156 k
DEBUG util.py:250:   initscripts         x86_64   7.31.31.EL-1.centos.1   core                595 k
DEBUG util.py:250:   iproute             x86_64   2.4.7-11.30E.2          updates-released    349 k
DEBUG util.py:250:   iputils             x86_64   20020927-11.30.5        core                103 k
DEBUG util.py:250:   krb5-libs           x86_64   1.2.7-68                updates-released    463 k
DEBUG util.py:250:   laus-libs           x86_64   0.1-76RHEL3             core           
DEBUG util.py:250:        35 k
DEBUG util.py:250:   less                x86_64   378-12                  core                108 k
DEBUG util.py:250:   libacl              x86_64   2.2.3-1                 core                 13 k
DEBUG util.py:250:   libattr             x86_64   2.2.0-1                 core                6.8 k
DEBUG util.py:250:   libgcc              x86_64   3.2.3-59                core                 63 k
DEBUG util.py:250:   libstdc++           x86_64   3.2.3-59                core                260 k
DEBUG util.py:250:   libstdc++-devel     x86_64   3.2.3-59                core                1.2 M
DEBUG util.py:250:   libtermcap          x86_64   2.0.8-35                core                 12 k
DEBUG util.py:250:   make                x86_64   1:3.79.1-17.1           core                305 k
DEBUG util.py:250:   mingetty            x86_64   1.06-1                  core                 18 k
DEBUG util.py:250:   mktemp              x86_64   1.5-18.2                core                 13 k
DEBUG util.py:250:   modutils            x86_64   2.4.25-14.EL            core                592 k
DEBUG util.py:250:   mount               x86_64   2.11y-31.24             updates-released    116 k
DEBUG util.py:250:   ncurses             x86_64   5.3-9.4                 core                1.5 M
DEBUG util.py:250:   net-tools           x86_64   1.60-20E.10             core                317 k
DEBUG util.py:250:   openssl             x86_64   0.9.7a-33.24            updates-released    1.1 M
DEBUG util.py:250:   pam                 x86_64   0.75-72                 core                841 k
DEBUG util.py:250:   patch               x86_64   2.5.4-16                core                 60 k
DEBUG util.py:250:   pcre                x86_64   3.9-10.4                updates-released     46 k
DEBUG util.py:250:   perl                x86_64   2:5.8.0-98.EL3          updates-released     12 M
DEBUG util.py:250:   perl-Filter         x86_64   1.29-3                  core                 68 k
DEBUG util.py:250:   popt                x86_64   1.8.2-32_nonptl         core                 64 k
DEBUG util.py:250:   procps              x86_64   2.0.17-13.10            core                165 k
DEBUG util.py:250:   psmisc              x86_64   21.3-2.1                core                 39 k
DEBUG util.py:250:   python              x86_64   2.2.3-6.8               updates-released    4.2 M
DEBUG util.py:250:   readline            x86_64   4.3-5.2                 core                187 k
DEBUG util.py:250:   redhat-rpm-config   noarch   8.0.28-4.centos.0       core                 40 k
DEBUG util.py:250:   rpm                 x86_64   4.2.3-32_nonptl         core                569 k
DEBUG util.py:250:   rpm-build           x86_64   4.2.3-32_nonptl         core                471 k
DEBUG util.py:250:   rpm-libs            x86_64   4.2.3-32_nonptl         core                730 k
DEBUG util.py:250:   sed                 x86_64   4.0.7-9.el3             core                113 k
DEBUG util.py:250:   setup               noarch   2.5.27-1                core                 28 k
DEBUG util.py:250:   shadow-utils        x86_64   2:4.0.3-29.RHEL3        core                604 k
DEBUG util.py:250:   sysklogd            x86_64   1.4.1-26_EL3            core                 73 k
DEBUG util.py:250:   tar                 x86_64   1.13.25-15.RHEL3        core                357 k
DEBUG util.py:250:   termcap             noarch   11.0.1-17.1             core                237 k
DEBUG util.py:250:   tzdata              noarch   2008e-1.el3             updates-released    454 k
DEBUG util.py:250:   unzip               x86_64   5.50-36.EL3             updates-released    150 k
DEBUG util.py:250:   util-linux          x86_64   2.11y-31.24             updates-released    1.3 M
DEBUG util.py:250:   which               x86_64   2.14-7                  core                 21 k
DEBUG util.py:250:   words               noarch   2-21                    core                136 k
DEBUG util.py:250:   zlib                x86_64   1.1.4-10.EL3            core                 34 k
DEBUG util.py:250:  Transaction Summary
DEBUG util.py:250:  ================================================================================
DEBUG util.py:250:  Install     88 Package(s)         
DEBUG util.py:250:  Update       0 Package(s)         
DEBUG util.py:250:  Remove       0 Package(s)         
DEBUG util.py:250:  Total download size: 72 M
DEBUG util.py:250:  /var/tmp/rpm-tmp.37093: line 6: cat: command not found
DEBUG util.py:250:  /var/tmp/rpm-tmp.37093: line 7: rm: command not found
DEBUG util.py:250:  telinit: timeout opening/writing control channel /dev/initctl
DEBUG util.py:250:  /var/tmp/rpm-tmp.22022: line 4: rm: command not found
DEBUG util.py:250:  --------------------------------------------------------------------------------
DEBUG util.py:250:  Total                                           194 MB/s |  72 MB     00:00     
DEBUG util.py:250:  error: %post(procps-2.0.17-13.10.x86_64) scriptlet failed, exit status 127
DEBUG util.py:250:  dev package: mounted devfs detected but installing anyway.
DEBUG util.py:250:  Installed: buildsys-build.noarch 0:0.5-3.CF.rhel3
DEBUG util.py:250:  Dependency Installed: SysVinit.x86_64 0:2.85-4.4 basesystem.noarch 0:8.0-2.centos.0 bash.x86_64 0:2.05b-41.7.centos.0 beecrypt.x86_64 0:3.0.1-0.20030630 binutils.x86_64 0:2.14.90.0.4-42 buildsys-macros.noarch 0:1-4.rhel3 bzip2.x86_64 0:1.0.2-12.EL3 bzip2-libs.x86_64 0:1.0.2-12.EL3 centos-release.x86_64 3:3-9.1 chkconfig.x86_64 0:1.3.13.5.EL3-1 coreutils.x86_64 0:4.5.3-28.7 cpio.x86_64 0:2.5-4.RHEL3 cpp.x86_64 0:3.2.3-59 cracklib.x86_64 0:2.7-22 cracklib-dicts.x86_64 0:2.7-22 db4.x86_64 0:4.1.25-8.1 dev.x86_64 0:3.3.12.3-1.0.buildsys_hack.rhel3 diffutils.x86_64 0:2.8.1-8 e2fsprogs.x86_64 0:1.32-15.4 elfutils.x86_64 0:0.94.1-2 elfutils-libelf.x86_64 0:0.94.1-2 ethtool.x86_64 0:1.8-3.3 expat.x86_64 0:1.95.5-6 file.x86_64 0:3.39-9.EL3.4 filesystem.x86_64 0:2.2.1-3.centos.1 findutils.x86_64 1:4.1.7-9.1 gawk.x86_64 0:3.1.1-9 gcc.x86_64 0:3.2.3-59 gcc-c++.x86_64 0:3.2.3-59 gdbm.x86_64 0:1.8.0-20 glib.x86_64 1:1.2.10-11.1 glibc.x86_64 0:2.3.2-95.50 glibc-common.x86_64 0:2.3.2-95.50 glibc-devel.x86_64 0:2.3.2-95.50 glibc-headers.x86_64 0:2.3.2-95.50 glibc-kernheaders.x86_64 0:2.4-8.34.5 gmp.x86_64 0:4.1.2-5 gpm.x86_64 0:1.19.3-27.2 grep.x86_64 0:2.5.1-24.6 gzip.x86_64 0:1.3.3-14.rhel3 info.x86_64 0:4.5-3.el3.1 initscripts.x86_64 0:7.31.31.EL-1.centos.1 iproute.x86_64 0:2.4.7-11.30E.2 iputils.x86_64 0:20020927-11.30.5 krb5-libs.x86_64 0:1.2.7-68 laus-libs.x86_64 0:0.1-76RHEL3 less.x86_64 0:378-12 libacl.x86_64 0:2.2.3-1 libattr.x86_64 0:2.2.0-1 libgcc.x86_64 0:3.2.3-59 libstdc++.x86_64 0:3.2.3-59 libstdc++-devel.x86_64 0:3.2.3-59 libtermcap.x86_64 0:2.0.8-35 make.x86_64 1:3.79.1-17.1 mingetty.x86_64 0:1.06-1 mktemp.x86_64 0:1.5-18.2 modutils.x86_64 0:2.4.25-14.EL mount.x86_64 0:2.11y-31.24 ncurses.x86_64 0:5.3-9.4 net-tools.x86_64 0:1.60-20E.10 openssl.x86_64 0:0.9.7a-33.24 pam.x86_64 0:0.75-72 patch.x86_64 0:2.5.4-16 pcre.x86_64 0:3.9-10.4 perl.x86_64 2:5.8.0-98.EL3 perl-Filter.x86_64 0:1.29-3 popt.x86_64 0:1.8.2-32_nonptl procps.x86_64 0:2.0.17-13.10 psmisc.x86_64 0:21.3-2.1 python.x86_64 0:2.2.3-6.8 readline.x86_64 0:4.3-5.2 redhat-rpm-config.noarch 0:8.0.28-4.centos.0 rpm.x86_64 0:4.2.3-32_nonptl rpm-build.x86_64 0:4.2.3-32_nonptl rpm-libs.x86_64 0:4.2.3-32_nonptl sed.x86_64 0:4.0.7-9.el3 setup.noarch 0:2.5.27-1 shadow-utils.x86_64 2:4.0.3-29.RHEL3 sysklogd.x86_64 0:1.4.1-26_EL3 tar.x86_64 0:1.13.25-15.RHEL3 termcap.noarch 0:11.0.1-17.1 tzdata.noarch 0:2008e-1.el3 unzip.x86_64 0:5.50-36.EL3 util-linux.x86_64 0:2.11y-31.24 which.x86_64 0:2.14-7 words.noarch 0:2-21 zlib.x86_64 0:1.1.4-10.EL3
DEBUG util.py:311:  Child returncode was: 1

Simply adding an "exit 0" to the end of the scripts was sufficient to fix this, but I also thought it better to specify the full paths to the commands as well, as I normally do in my own packages. Adding in the hacked procps and util-linux packages where needed resolved all of the remaining problems and I was then able to build my test case package (ppp) on all distributions with the new new version of yum.

DEBUG util.py:272:  Executing command: /usr/bin/yum --installroot /var/lib/mock/centos-3-x86_64/root/  install buildsys-build
DEBUG util.py:250:  ================================================================================
DEBUG util.py:250:   Package         Arch   Version                          Repository       Size 
DEBUG util.py:250:  ================================================================================
DEBUG util.py:250:  Installing:
DEBUG util.py:250:   buildsys-build  noarch 0.5-3.CF.rhel3                   groups           2.5 k
DEBUG util.py:250:  Installing for dependencies:
DEBUG util.py:250:   SysVinit        x86_64 2.85-4.4                         core              99 k
DEBUG util.py:250:   basesystem      noarch 8.0-2.centos.0                   core             2.5 k
DEBUG util.py:250:   bash            x86_64 2.05b-41.7.centos.0              core             1.5 M
DEBUG util.py:250:   beecrypt        x86_64 3.0.1-0.20030630                 core              72 k
DEBUG util.py:250:   binutils        x86_64 2.14.90.0.4-42                   core             2.9 M
DEBUG util.py:250:   buildsys-macros noarch 1-4.rhel3                        groups           2.8 k
DEBUG util.py:250:   bzip2           x86_64 1.0.2-12.EL3                     updates-released  49 k
DEBUG util.py:250:   bzip2-libs      x86_64 1.0.2-12.EL3                     updates-released  32 k
DEBUG util.py:250:   centos-release  x86_64 3:3-9.1                          core              14 k
DEBUG util.py:250:   chkconfig       x86_64 1.3.13.5.EL3-1                   core             124 k
DEBUG util.py:250:   coreutils       x86_64 4.5.3-28.7                       core             2.4 M
DEBUG util.py:250:   cpio            x86_64 2.5-4.RHEL3                      core              48 k
DEBUG util.py:250:   cpp             x86_64 3.2.3-59                         core             260 k
DEBUG util.py:250:   cracklib        x86_64 2.7-22                           core              26 k
DEBUG util.py:250:   cracklib-dicts  x86_64 2.7-22                           core             409 k
DEBUG util.py:250:   db4             x86_64 4.1.25-8.1                       core             731 k
DEBUG util.py:250:   dev             x86_64 3.3.12.3-1.0.buildsys_hack.rhel3 groups           2.8 M
DEBUG util.py:250:   diffutils       x86_64 2.8.1-8                          core             209 k
DEBUG util.py:250:   e2fsprogs       x86_64 1.32-15.4                        updates-released 565 k
DEBUG util.py:250:   elfutils        x86_64 0.94.1-2                         core             135 k
DEBUG util.py:250:   elfutils-libelf x86_64 0.94.1-2                         core              37 k
DEBUG util.py:250:   ethtool         x86_64 1.8-3.3                          core              51 k
DEBUG util.py:250:   expat           x86_64 1.95.5-6                         core              66 k
DEBUG util.py:250:   file            x86_64 3.39-9.EL3.4                     core             170 k
DEBUG util.py:250:   filesystem      x86_64 2.2.1-3.centos.1                 core              14 k
DEBUG util.py:250:   findutils       x86_64 1:4.1.7-9.1                      core             104 k
DEBUG util.py:250:   gawk            x86_64 3.1.1-9                          core             1.5 M
DEBUG util.py:250:   gcc             x86_64 3.2.3-59                         core             4.6 M
DEBUG util.py:250:   gcc-c++         x86_64 3.2.3-59                         core             2.2 M
DEBUG util.py:250:   gdbm            x86_64 1.8.0-20                         core              26 k
DEBUG util.py:250:   glib            x86_64 1:1.2.10-11.1                    core             142 k
DEBUG util.py:250:   glibc           x86_64 2.3.2-95.50                      core             4.8 M
DEBUG util.py:250:   glibc-common    x86_64 2.3.2-95.50                      core              12 M
DEBUG util.py:250:   glibc-devel     x86_64 2.3.2-95.50                      core             2.3 M
DEBUG util.py:250:   glibc-headers   x86_64 2.3.2-95.50                      core             522 k
DEBUG util.py:250:   glibc-kernheaders
DEBUG util.py:250:                   x86_64 2.4-8.34.5                       core             931 k
DEBUG util.py:250:   gmp             x86_64 4.1.2-5                          core             176 k
DEBUG util.py:250:   gpm             x86_64 1.19.3-27.2                      core             133 k
DEBUG util.py:250:   grep            x86_64 2.5.1-24.6                       core             173 k
DEBUG util.py:250:   gzip            x86_64 1.3.3-14.rhel3                   core              93 k
DEBUG util.py:250:   info            x86_64 4.5-3.el3.1                      core             156 k
DEBUG util.py:250:   initscripts     x86_64 7.31.31.EL-1.centos.1            core             595 k
DEBUG util.py:250:   iproute         x86_64 2.4.7-11.30E.2                   updates-released 349 k
DEBUG util.py:250:   iputils         x86_64 20020927-11.30.5                 core             103 k
DEBUG util.py:250:   krb5-libs       x86_64 1.2.7-68                         updates-released 463 k
DEBUG util.py:250:   laus-libs       x86_64 0.1-76RHEL3                      core              35 k
DEBUG util.py:250:   less            x86_64 378-12   
DEBUG util.py:250:                          core             108 k
DEBUG util.py:250:   libacl          x86_64 2.2.3-1                          core              13 k
DEBUG util.py:250:   libattr         x86_64 2.2.0-1                          core             6.8 k
DEBUG util.py:250:   libgcc          x86_64 3.2.3-59                         core              63 k
DEBUG util.py:250:   libstdc++       x86_64 3.2.3-59                         core             260 k
DEBUG util.py:250:   libstdc++-devel x86_64 3.2.3-59                         core             1.2 M
DEBUG util.py:250:   libtermcap      x86_64 2.0.8-35                         core              12 k
DEBUG util.py:250:   make            x86_64 1:3.79.1-17.1                    core             305 k
DEBUG util.py:250:   mingetty        x86_64 1.06-1                           core              18 k
DEBUG util.py:250:   mktemp          x86_64 1.5-18.2                         core              13 k
DEBUG util.py:250:   modutils        x86_64 2.4.25-14.EL                     core             592 k
DEBUG util.py:250:   mount           x86_64 2.11y-31.24                      updates-released 116 k
DEBUG util.py:250:   ncurses         x86_64 5.3-9.4                          core             1.5 M
DEBUG util.py:250:   net-tools       x86_64 1.60-20E.10                      core             317 k
DEBUG util.py:250:   openssl         x86_64 0.9.7a-33.24                     updates-released 1.1 M
DEBUG util.py:250:   pam             x86_64 0.75-72                          core             841 k
DEBUG util.py:250:   patch           x86_64 2.5.4-16                         core              60 k
DEBUG util.py:250:   pcre            x86_64 3.9-10.4                         updates-released  46 k
DEBUG util.py:250:   perl            x86_64 2:5.8.0-98.EL3                   updates-released  12 M
DEBUG util.py:250:   perl-Filter     x86_64 1.29-3                           core              68 k
DEBUG util.py:250:   popt            x86_64 1.8.2-32_nonptl                  core              64 k
DEBUG util.py:250:   procps          x86_64 2.0.17-13.10.buildsys_hack.rhel3 groups           165 k
DEBUG util.py:250:   psmisc          x86_64 21.3-2.1                         core              39 k
DEBUG util.py:250:   python          x86_64 2.2.3-6.8                        updates-released 4.2 M
DEBUG util.py:250:   readline        x86_64 4.3-5.2                          core             187 k
DEBUG util.py:250:   redhat-rpm-config
DEBUG util.py:250:                   noarch 8.0.28-4.centos.0                core              40 k
DEBUG util.py:250:   rpm             x86_64 4.2.3-32_nonptl                  core             569 k
DEBUG util.py:250:   rpm-build       x86_64 4.2.3-32_nonptl                  core             471 k
DEBUG util.py:250:   rpm-libs        x86_64 4.2.3-32_nonptl                  core             730 k
DEBUG util.py:250:   sed             x86_64 4.0.7-9.el3                      core             113 k
DEBUG util.py:250:   setup           noarch 2.5.27-1                         core              28 k
DEBUG util.py:250:   shadow-utils    x86_64 2:4.0.3-29.RHEL3                 core             604 k
DEBUG util.py:250:   sysklogd        x86_64 1.4.1-26_EL3                     core              73 k
DEBUG util.py:250:   tar             x86_64 1.13.25-15.RHEL3                 core             357 k
DEBUG util.py:250:   termcap         noarch 11.0.1-17.1                      core             237 k
DEBUG util.py:250:   tzdata          noarch 2008e-1.el3                      updates-released 454 k
DEBUG util.py:250:   unzip           x86_64 5.50-36.EL3                      updates-released 150 k
DEBUG util.py:250:   util-linux      x86_64 2.11y-31.24                      updates-released 1.3 M
DEBUG util.py:250:   which           x86_64 2.14-7                           core              21 k
DEBUG util.py:250:   words           noarch 2-21                             core             136 k
DEBUG util.py:250:   zlib            x86_64 1.1.4-10.EL3                     core              34 k
DEBUG util.py:250:  Transaction Summary
DEBUG util.py:250:  ================================================================================
DEBUG util.py:250:  Install     88 Package(s)         
DEBUG util.py:250:  Update       0 Package(s)         
DEBUG util.py:250:  Remove       0 Package(s)         
DEBUG util.py:250:  Total download size: 72 M
DEBUG util.py:250:  /var/tmp/rpm-tmp.88940: line 6: cat: command not found
DEBUG util.py:250:  /var/tmp/rpm-tmp.88940: line 7: rm: command not found
DEBUG util.py:250:  telinit: timeout opening/writing control channel /dev/initctl
DEBUG util.py:250:  dev package: mounted devfs detected but installing anyway.
DEBUG util.py:250:  --------------------------------------------------------------------------------
DEBUG util.py:250:  Total                                           901 MB/s |  72 MB     00:00     
DEBUG util.py:250:  Installed: buildsys-build.noarch 0:0.5-3.CF.rhel3
DEBUG util.py:250:  Dependency Installed: SysVinit.x86_64 0:2.85-4.4 basesystem.noarch 0:8.0-2.centos.0 bash.x86_64 0:2.05b-41.7.centos.0 beecrypt.x86_64 0:3.0.1-0.20030630 binutils.x86_64 0:2.14.90.0.4-42 buildsys-macros.noarch 0:1-4.rhel3 bzip2.x86_64 0:1.0.2-12.EL3 bzip2-libs.x86_64 0:1.0.2-12.EL3 centos-release.x86_64 3:3-9.1 chkconfig.x86_64 0:1.3.13.5.EL3-1 coreutils.x86_64 0:4.5.3-28.7 cpio.x86_64 0:2.5-4.RHEL3 cpp.x86_64 0:3.2.3-59 cracklib.x86_64 0:2.7-22 cracklib-dicts.x86_64 0:2.7-22 db4.x86_64 0:4.1.25-8.1 dev.x86_64 0:3.3.12.3-1.0.buildsys_hack.rhel3 diffutils.x86_64 0:2.8.1-8 e2fsprogs.x86_64 0:1.32-15.4 elfutils.x86_64 0:0.94.1-2 elfutils-libelf.x86_64 0:0.94.1-2 ethtool.x86_64 0:1.8-3.3 expat.x86_64 0:1.95.5-6 file.x86_64 0:3.39-9.EL3.4 filesystem.x86_64 0:2.2.1-3.centos.1 findutils.x86_64 1:4.1.7-9.1 gawk.x86_64 0:3.1.1-9 gcc.x86_64 0:3.2.3-59 gcc-c++.x86_64 0:3.2.3-59 gdbm.x86_64 0:1.8.0-20 glib.x86_64 1:1.2.10-11.1 glibc.x86_64 0:2.3.2-95.50 glibc-common.x86_64 0:2.3.2-95.50 glibc-devel.x86_64 0:2.3.2-95.50 glibc-headers.x86_64 0:2.3.2-95.50 glibc-kernheaders.x86_64 0:2.4-8.34.5 gmp.x86_64 0:4.1.2-5 gpm.x86_64 0:1.19.3-27.2 grep.x86_64 0:2.5.1-24.6 gzip.x86_64 0:1.3.3-14.rhel3 info.x86_64 0:4.5-3.el3.1 initscripts.x86_64 0:7.31.31.EL-1.centos.1 iproute.x86_64 0:2.4.7-11.30E.2 iputils.x86_64 0:20020927-11.30.5 krb5-libs.x86_64 0:1.2.7-68 laus-libs.x86_64 0:0.1-76RHEL3 less.x86_64 0:378-12 libacl.x86_64 0:2.2.3-1 libattr.x86_64 0:2.2.0-1 libgcc.x86_64 0:3.2.3-59 libstdc++.x86_64 0:3.2.3-59 libstdc++-devel.x86_64 0:3.2.3-59 libtermcap.x86_64 0:2.0.8-35 make.x86_64 1:3.79.1-17.1 mingetty.x86_64 0:1.06-1 mktemp.x86_64 0:1.5-18.2 modutils.x86_64 0:2.4.25-14.EL mount.x86_64 0:2.11y-31.24 ncurses.x86_64 0:5.3-9.4 net-tools.x86_64 0:1.60-20E.10 openssl.x86_64 0:0.9.7a-33.24 pam.x86_64 0:0.75-72 patch.x86_64 0:2.5.4-16 pcre.x86_64 0:3.9-10.4 perl.x86_64 2:5.8.0-98.EL3 perl-Filter.x86_64 0:1.29-3 popt.x86_64 0:1.8.2-32_nonptl procps.x86_64 0:2.0.17-13.10.buildsys_hack.rhel3 psmisc.x86_64 0:21.3-2.1 python.x86_64 0:2.2.3-6.8 readline.x86_64 0:4.3-5.2 redhat-rpm-config.noarch 0:8.0.28-4.centos.0 rpm.x86_64 0:4.2.3-32_nonptl rpm-build.x86_64 0:4.2.3-32_nonptl rpm-libs.x86_64 0:4.2.3-32_nonptl sed.x86_64 0:4.0.7-9.el3 setup.noarch 0:2.5.27-1 shadow-utils.x86_64 2:4.0.3-29.RHEL3 sysklogd.x86_64 0:1.4.1-26_EL3 tar.x86_64 0:1.13.25-15.RHEL3 termcap.noarch 0:11.0.1-17.1 tzdata.noarch 0:2008e-1.el3 unzip.x86_64 0:5.50-36.EL3 util-linux.x86_64 0:2.11y-31.24 which.x86_64 0:2.14-7 words.noarch 0:2-21 zlib.x86_64 0:1.1.4-10.EL3
DEBUG util.py:311:  Child returncode was: 0

If anyone else has come across the same issues and would like the hacked packages, you can find them here.


Recent