Package: rpmstrap Version: 0.5.2-1 Severity: wishlist Tags: patch The attached patch makes rpmstrap support bootstrapping of SUSE Linux (Professional) 9.3 and SUSE Linux 10.0 OSS for x86. Please included it in the package.
-- System Information: Debian Release: testing/unstable APT prefers unstable APT policy: (800, 'unstable'), (750, 'experimental'), (500, 'testing'), (500, 'stable') Architecture: i386 (i686) Shell: /bin/sh linked to /bin/bash Kernel: Linux 2.6.15.6 Locale: LANG=C, LC_CTYPE=en_US.ISO8859-1 (charmap=ISO-8859-1) Versions of packages rpmstrap depends on: ii rpm 4.4.1-8 Red Hat package manager ii wget 1.10.2-1 retrieves files from the web rpmstrap recommends no packages. -- no debconf information -- Obsig: developing a new sig
diff -ruN rpmstrap-0.5.2/debian/changelog ../rpmstrap-0.5.2/debian/changelog --- rpmstrap-0.5.2/debian/changelog 2006-03-24 14:47:41.000000000 +0100 +++ ../rpmstrap-0.5.2/debian/changelog 2006-03-24 14:47:13.000000000 +0100 @@ -1,3 +1,16 @@ +rpmstrap (0.5.2-1.1) UNRELEASED; urgency=low + + * [lib/scripts/suse9.3] Added, from http://trac.samhart.net/trac/ticket/20 + * [lib/functions] Patched to handle SUSE installation source layout, based + on http://trac.samhart.net/trac/ticket/20 + * [lib/functions] Pass a --dbpath based on $TARGET as well (apparently + --root doesn't affect the setting for the RPM database directory, so + things fail on regular Debian systems which do not have a /var/lib/rpm + directory). + * [lib/scripts/suse10.0] New. + + -- J.H.M. Dassen <[EMAIL PROTECTED]> Fri, 24 Mar 2006 14:47:12 +0100 + rpmstrap (0.5.2-1) unstable; urgency=low * Initial Debian version. Closes: #327081. diff -ruN rpmstrap-0.5.2/lib/functions ../rpmstrap-0.5.2/lib/functions --- rpmstrap-0.5.2/lib/functions 2005-10-04 16:00:57.000000000 +0200 +++ ../rpmstrap-0.5.2/lib/functions 2006-03-24 10:22:24.000000000 +0100 @@ -34,6 +34,7 @@ trace "get_rpms(): Using $LOCAL_SOURCE for RPMS" for a in $@ do + a=$(basename "$a") if [ ! -f "$LOCAL_SOURCE/$a" ]; then die "$a not found at $LOCAL_SOURCE" fi @@ -97,8 +98,8 @@ fi if [ -n "$MIRROR" ]; then trace "get_rpms(): Getting RPM from $MIRROR" - wget $verbose ${MIRROR%/}/$a -O $a - if [ ! -f "$a" ]; then + wget $verbose ${MIRROR%/}/$a -O $(basename "$a") + if [ ! -f "$(basename "$a")" ]; then die "$a not retrievable from $MIRROR" fi else @@ -106,8 +107,8 @@ for mir in $MIRROR_LIST do trace "get_rpms(): Getting RPM from $mir" - wget $verbose ${mir%/}/$a -O $a - if [ -s "$a" ]; then + wget $verbose ${mir%/}/$a -O $(basename "$a") + if [ ! -s "$(basename "$a")" ]; then break fi done @@ -117,8 +118,8 @@ else trace "get_rpms(): Getting RPM from $BEST_MIRROR" trace "wget $verbose ${BEST_MIRROR%/}/$a" - wget $verbose ${BEST_MIRROR%/}/$a -O $a - if [ ! -f "$a" ]; then + wget $verbose ${BEST_MIRROR%/}/$a -O $(basename "$a") + if [ ! -f "$(basename "$a")" ]; then die "Could not obtain $a from $BEST_MIRROR" fi fi @@ -286,10 +287,16 @@ trace "...nothing left to do." break else + newpass="" + for pkg in $pass ; do + newpass="$newpass $(basename $pkg)" + done + pass="$newpass" set -- $pass # make sure each RPM exists for RPM; do + RPM=$(basename "$RPM") if [ ! -e "$RPM" ]; then die "cannot find required package $RPM" fi @@ -300,8 +307,8 @@ TARGET="$PWD/$TARGET" fi trace "Installing $* to $TARGET..." - if ! rpm $rpm_install_opt $rpm_force_opt --root "$TARGET" $@; then - die "command \"rpm $rpm_install_opt $rpm_force_opt $rpm_ignore_arch_opt --root $TARGET $*\"" \ + if ! rpm $rpm_install_opt $rpm_force_opt --root "$TARGET" --dbpath "$TARGET/var/lib/rpm" $@; then + die "command \"rpm $rpm_install_opt $rpm_force_opt $rpm_ignore_arch_opt --root $TARGET --dbpath $TARGET/var/lib/rpm $*\"" \ "failed" fi fi @@ -311,12 +318,12 @@ for fname in $INCLUDES; do trace "Installing included package : $fname..." - if ! rpm --install $rpm_force_opt --root "$TARGET" $fname; then - die "command \"rpm --install $rpm_force_opt --root $TARGET $fname\"" \ + if ! rpm --install $rpm_force_opt --root "$TARGET" --dbpath "$TARGET/var/lib/rpm" $fname; then + die "command \"rpm --install $rpm_force_opt --root $TARGET --dbpath $TARGET/var/lib/rpm $fname\"" \ "failed" fi done cd $PWD fi -} \ No newline at end of file +} diff -ruN rpmstrap-0.5.2/lib/scripts/suse10.0 ../rpmstrap-0.5.2/lib/scripts/suse10.0 --- rpmstrap-0.5.2/lib/scripts/suse10.0 1970-01-01 01:00:00.000000000 +0100 +++ ../rpmstrap-0.5.2/lib/scripts/suse10.0 2006-03-24 14:49:22.000000000 +0100 @@ -0,0 +1,144 @@ +# This is an rpmstrap script for SUSE Linux 10.0 OSS. +# It was contributed by J.H.M. Dassen (Ray) <[EMAIL PROTECTED]>, based upon +# an rpmstrap for SUSE 9.3 by Sam Hart and Derrik Pates which in turn was +# based on one by Branden Robinson at Progeny Linux Systems, Inc. + +# Copyright 2004 Progeny Linux Systems, Inc. +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + +suite_notes() { + cat <<EOF +SUSE Linux 10.0 OSS suite script +-------------------------------- +Builds a basic SUSE Linux 10.0 OSS bootstrap, somewhat similar to what +SUSE's build.rpm produces. + +EOF +} + + +work_out_mirror() { + local big_mirror_list="" + trace "Checking for $ARCH arch" + case $ARCH in + i[56]86) +# Based on http://en.opensuse.org/Mirrors_Released_Version + big_mirror_list=$(cat <<EOF +ftp://mirror.switch.ch/mirror/opensuse/distribution/SL-10.0-OSS/inst-source/suse +http://www.mirrorservice.org/sites/ftp.opensuse.org/pub/opensuse/distribution/SL-10.0-OSS/inst-source/suse +ftp://ftp.belnet.be/mirror/ftp.opensuse.org/opensuse/distribution/SL-10.0-OSS/inst-source/suse +ftp://ftp.tu-cottbus.de/pub/unix/linux/opensuse/distribution/SL-10.0-OSS/inst-source/suse +ftp://ftp.suse.cl/pub/opensuse/opensuse/distribution/SL-10.0-OSS/inst-source/ +EOF + ) + ;; + *) + die "Arch $ARCH is unsupported" + ;; + esac + + set_mirrors $big_mirror_list +} + +work_out_rpms() { + case $ARCH in + i[3456]86) + RPMS=$(cat <<EOF +0:i586/filesystem-10.0-4.i586.rpm +1:i586/glibc-2.3.5-40.i586.rpm +2:i586/zlib-1.2.3-3.i586.rpm +3:i586/libselinux-1.23.11-3.i586.rpm +4:i586/ncurses-5.4-71.i586.rpm +5:i586/mktemp-1.5-733.i586.rpm +6:i586/libgcc-4.0.2_20050901-3.i586.rpm +7:i586/popt-1.7-221.i586.rpm +8:i586/libattr-2.4.24-2.i586.rpm +9:i586/libacl-2.2.31-3.i586.rpm +10:i586/libstdc++-4.0.2_20050901-3.i586.rpm +11:i586/db-4.3.27-7.i586.rpm +12:i586/readline-5.0-9.i586.rpm +13:i586/bash-3.0-17.i586.rpm +14:i586/insserv-1.01.0-2.i586.rpm +15:i586/bzip2-1.0.3-5.i586.rpm +16:i586/cracklib-2.8.3.0.7-2.i586.rpm +17:i586/pam-0.80-6.i586.rpm +18:i586/libzio-0.1-6.i586.rpm +19:i586/info-4.8-9.i586.rpm +20:i586/coreutils-5.3.0-20.i586.rpm +21:i586/fillup-1.42-106.i586.rpm +22:i586/devs-10.0-1.i586.rpm +23:i586/sed-4.1.4-5.i586.rpm +24:i586/grep-2.5.1a-5.i586.rpm +25:i586/logrotate-3.7.1-3.i586.rpm +26:i586/findutils-4.2.23-5.i586.rpm +27:i586/gzip-1.3.5-144.i586.rpm +28:i586/diffutils-2.8.7-5.i586.rpm +29:i586/ash-1.6.1-4.i586.rpm +30:i586/gdbm-1.8.3-232.i586.rpm +31:i586/perl-5.8.7-5.i586.rpm +32:i586/aaa_skel-2005.9.7-2.i586.rpm +33:i586/suse-release-oss-10.0-8.i586.rpm +34:i586/aaa_base-10.0-28.i586.rpm +35:i586/libxcrypt-2.2-5.i586.rpm +36:i586/cyrus-sasl-2.1.21-3.i586.rpm +37:i586/resmgr-0.9.8_SVNr57-2.i586.rpm +38:i586/pam-modules-10.0-11.i586.rpm +39:i586/libnscd-1.1-5.i586.rpm +40:i586/openssl-0.9.7g-2.i586.rpm +41:i586/openldap2-client-2.2.27-6.i586.rpm +42:i586/gpg-1.4.2-5.i586.rpm +43:noarch/suse-build-key-1.0-668.noarch.rpm +44:i586/openslp-1.2.0-5.i586.rpm +45:i586/bind-libs-9.3.1-8.i586.rpm +46:i586/permissions-2005.8.30-2.i586.rpm +47:i586/pwdutils-3.0.4-4.i586.rpm +48:i586/cpp-4.0.2_20050901-3.i586.rpm +49:i586/rpm-4.1.1-222.i586.rpm +50:i586/m4-1.4.3-3.i586.rpm +51:i586/tar-1.15.1-9.i586.rpm +52:i586/util-linux-2.12q-26.i586.rpm +53:i586/gawk-3.1.4-9.i586.rpm +54:i586/file-4.14-3.i586.rpm +55:i586/bind-utils-9.3.1-8.i586.rpm +EOF + ) + ;; + *) + # No clue + ;; +esac +} + +print_rpms() { + local rpm_list=$(echo "$RPMS" | sed "s/[[:digit:]]\+://") + + echo "RPMs for suite $RPMSUITE and arch $ARCH" + for a in $rpm_list + do + echo " : $a" + done +} + +install_rpms() { + # Must do this to force SuSE's 'insserv' to ignore service dependencies + # while installing packages; aaa_base doesn't install them in the right + # order, so later packages (esp. procps) will choke and die during their + # postinst phases. + YAST_IS_RUNNING="yes" + export YAST_IS_RUNNING + + install_by_pass $RPMS +} diff -ruN rpmstrap-0.5.2/lib/scripts/suse9.3 ../rpmstrap-0.5.2/lib/scripts/suse9.3 --- rpmstrap-0.5.2/lib/scripts/suse9.3 1970-01-01 01:00:00.000000000 +0100 +++ ../rpmstrap-0.5.2/lib/scripts/suse9.3 2006-03-23 22:10:18.000000000 +0100 @@ -0,0 +1,241 @@ +# This is the rpmstrap script for SuSE 9.3. +# It is based upon an rpmstrap originally by +# Branden Robinson at Progeny Linux Systems, Inc. +# New segments of code and modifications made by +# Sam Hart and Derrik Pates. + +# Copyright 2004 Progeny Linux Systems, Inc. +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# Author: Derrik Pates, based on scripts by Sam Hart + +suite_notes() { + cat <<EOF +SuSE Linux 9.3 Suite Script +--------------------------------------- +Builds a basic SuSE Linux 9.3 bootstrap. + +Author: Derrik Pates, based on scripts by Sam Hart + +EOF +} + + +work_out_mirror() { + local big_mirror_list="" + trace "Checking for $ARCH arch" + case $ARCH in + i[56]86) + big_mirror_list=$(cat <<EOF +ftp://ftp.suse.com/pub/suse/i386/9.3/suse/ +EOF + ) + ;; + *) + die "Arch $ARCH is unsupported" + ;; + esac + + set_mirrors $big_mirror_list +} + +work_out_rpms() { + case $ARCH in + i[3456]86) + RPMS=$(cat <<EOF +0:i586/filesystem-9.3-2.i586.rpm +1:i686/glibc-2.3.4-23.3.i686.rpm +2:i586/zlib-1.2.2-5.i586.rpm +3:i586/ncurses-5.4-68.i586.rpm +4:i586/libgcc-3.3.5-5.i586.rpm +5:i586/libstdc++-3.3.5-5.i586.rpm +6:i686/db-4.3.27-3.1.i686.rpm +7:i586/readline-5.0-7.2.i586.rpm +8:i586/bash-3.0-15.i586.rpm +9:i586/insserv-1.00.8-4.i586.rpm +10:i586/bzip2-1.0.2-348.i586.rpm +11:i586/libselinux-1.21.7-3.i586.rpm +12:i586/popt-1.7-207.i586.rpm +13:i586/gdbm-1.8.3-230.i586.rpm +14:i586/libxcrypt-2.2-3.i586.rpm +15:i586/cracklib-2.7-1010.i586.rpm +16:i586/pam-0.78-8.i586.rpm +17:i586/libzio-0.1-5.i586.rpm +18:i586/info-4.8-7.i586.rpm +19:i586/fillup-1.42-101.i586.rpm +20:i586/sed-4.1.4-3.i586.rpm +21:i586/grep-2.5.1a-4.i586.rpm +22:i586/e2fsprogs-1.36-5.i586.rpm +23:i586/gawk-3.1.4-7.i586.rpm +24:i586/tcpd-7.6-715.i586.rpm +25:i586/libgpg-error-1.0-3.i586.rpm +26:i586/ash-1.6.1-2.i586.rpm +27:i586/libattr-2.4.22-3.i586.rpm +28:i586/libacl-2.2.30-3.i586.rpm +29:i586/coreutils-5.3.0-10.i586.rpm +30:i586/devs-9.3-2.i586.rpm +31:i586/resmgr-0.9.8-65.i586.rpm +32:i586/udev-053-15.2.i586.rpm +33:i586/libusb-0.1.8-36.i586.rpm +34:i586/cyrus-sasl-2.1.20-7.i586.rpm +35:i586/libxml2-2.6.17-4.i586.rpm +36:i586/mktemp-1.5-732.i586.rpm +37:i586/krb5-1.4-16.i586.rpm +38:i586/openct-0.6.2-4.i586.rpm +39:i586/pcsc-lite-1.2.9-6.i586.rpm +40:i586/hwinfo-10.16-3.i586.rpm +41:i586/logrotate-3.7-35.i586.rpm +42:noarch/yast2-theme-SuSELinux-2.11.2-3.noarch.rpm +43:i586/libgcrypt-1.2.1-3.i586.rpm +44:i586/libxslt-1.1.12-5.i586.rpm +45:i586/gzip-1.3.5-140.i586.rpm +46:i586/perl-5.8.6-5.i586.rpm +47:i586/openssl-0.9.7e-3.i586.rpm +48:i586/openldap2-client-2.2.23-6.i586.rpm +49:i586/liby2util-2.11.6-1.1.i586.rpm +50:i586/openslp-1.2.0-3.i586.rpm +51:i586/curl-7.13.0-5.i586.rpm +52:i586/gpg-1.4.0-4.i586.rpm +53:noarch/suse-build-key-1.0-665.noarch.rpm +54:i586/opensc-0.9.4-4.i586.rpm +55:i586/python-2.4-14.i586.rpm +56:i586/wireless-tools-28pre4-16.2.i586.rpm +57:i586/groff-1.18.1.1-7.i586.rpm +58:i586/perl-Config-Crontab-1.03-49.i586.rpm +59:i586/findutils-4.2.19-3.i586.rpm +60:i586/diffutils-2.8.7-4.i586.rpm +61:i586/klogd-1.4.1-537.i586.rpm +62:i586/iproute2-2.6.10-4.i586.rpm +63:i586/file-4.13-5.i586.rpm +64:i586/less-382-41.i586.rpm +65:i586/net-tools-1.60-556.i586.rpm +66:i586/glibc-locale-2.3.4-23.i586.rpm +67:i586/libnscd-1.1-4.i586.rpm +68:i586/netcat-1.10-869.i586.rpm +69:i586/yast2-core-2.11.26-3.i586.rpm +70:i586/yast2-transfer-2.9.3-3.i586.rpm +71:noarch/yast2-schema-2.10.1-3.noarch.rpm +72:i586/suse-release-9.3-4.i586.rpm +73:i586/aaa_skel-2005.2.1-3.i586.rpm +74:i586/aaa_base-9.3-9.2.i586.rpm +75:i586/permissions-2005.3.1-3.i586.rpm +76:i586/rpm-4.1.1-208.i586.rpm +77:i586/yast2-packagemanager-2.11.28-3.2.i586.rpm +78:i586/yast2-pkg-bindings-2.11.6-3.i586.rpm +79:i586/yast2-ncurses-2.11.5-3.i586.rpm +80:noarch/netcfg-9.3-2.noarch.rpm +81:i586/telnet-1.1-44.2.i586.rpm +82:i586/rpm-python-4.1.1-208.i586.rpm +83:i586/util-linux-2.12q-7.2.i586.rpm +84:i586/man-2.4.1-221.i586.rpm +85:i586/sysconfig-0.32.0-18.2.i586.rpm +86:i586/syslogd-1.4.1-537.i586.rpm +87:i586/wget-1.9.1-57.3.i586.rpm +88:i586/lftp-3.0.13-3.i586.rpm +89:i586/xinetd-2.3.13-45.i586.rpm +90:i586/vim-6.3.58-3.i586.rpm +91:i586/pico-4.61-13.i586.rpm +92:i586/procps-3.2.5-3.i586.rpm +93:i586/psmisc-21.5-3.i586.rpm +94:i586/sysvinit-2.85-38.4.i586.rpm +95:i586/jfsutils-1.1.7-5.i586.rpm +96:i586/xfsprogs-2.6.25-3.i586.rpm +97:i586/tar-1.15.1-5.i586.rpm +98:i586/cpio-2.5-328.i586.rpm +99:i586/module-init-tools-3.2_pre1-7.i586.rpm +100:i586/termcap-2.0.8-879.i586.rpm +101:i586/iputils-ss021109-151.i586.rpm +102:i586/makedev-2.6-406.i586.rpm +103:i586/pcre-5.0-3.i586.rpm +104:i586/mingetty-0.9.6s-76.i586.rpm +105:i586/iptables-1.3.1-3.i586.rpm +106:i586/sash-3.7-32.i586.rpm +107:i586/terminfo-5.4-68.i586.rpm +108:noarch/man-pages-2.01-2.noarch.rpm +109:i586/yast2-2.11.48-3.i586.rpm +109:i586/yast2-xml-2.11.2-3.i586.rpm +110:noarch/autoyast2-installation-2.11.13-3.noarch.rpm +111:noarch/autoyast2-2.11.13-3.noarch.rpm +112:i586/pam-modules-9.3-4.i586.rpm +113:i586/pwdutils-2.6.96-4.i586.rpm +114:i586/openssh-3.9p1-12.i586.rpm +115:i586/lsof-4.74-3.i586.rpm +116:i586/ldapcpplib-0.0.3-30.i586.rpm +117:i586/yast2-slp-2.10.0-3.i586.rpm +118:i586/yast2-ldap-2.11.0-3.i586.rpm +119:noarch/SuSEfirewall2-3.3-18.2.noarch.rpm +120:i586/device-mapper-1.01.00-3.i586.rpm +121:i586/perl-Bootloader-0.2-17.i586.rpm +122:i586/perl-Digest-SHA1-2.10-3.i586.rpm +123:i586/perl-gettext-1.01-579.i586.rpm +124:i586/checkmedia-1.0-5.i586.rpm +125:i586/parted-1.6.21-4.i586.rpm +126:i586/evms-2.3.3-5.i586.rpm +127:noarch/yast2-trans-stats-2.11.0-5.noarch.rpm +127:noarch/yast2-trans-en_US-2.11.3-3.noarch.rpm +127:noarch/yast2-inetd-2.11.11-3.noarch.rpm +127:noarch/yast2-firewall-2.11.12-0.1.noarch.rpm +127:i586/yast2-perl-bindings-2.11.3-3.i586.rpm +127:noarch/yast2-pam-2.11.1-3.noarch.rpm +127:noarch/yast2-security-2.11.4-3.noarch.rpm +127:noarch/yast2-mail-aliases-2.11.4-3.noarch.rpm +127:noarch/yast2-ldap-client-2.11.11-3.noarch.rpm +127:i586/yast2-mouse-2.11.5-5.i586.rpm +127:i586/yast2-country-2.11.21-3.i586.rpm +127:i586/yast2-network-2.11.33-0.1.i586.rpm +127:i586/yast2-online-update-2.11.9-3.i586.rpm +127:i586/yast2-users-2.11.16-3.i586.rpm +127:i586/yast2-x11-2.11.4-8.i586.rpm +127:i586/yast2-bootloader-2.11.22-3.i586.rpm +127:noarch/release-notes-9.3.10-3.noarch.rpm +127:noarch/yast2-installation-2.11.22-6.noarch.rpm +127:i586/yast2-storage-2.11.31-1.1.i586.rpm +127:i586/yast2-packager-2.11.36-3.i586.rpm +127:i586/yast2-update-2.11.16-3.i586.rpm +128:i586/kbd-1.12-37.i586.rpm +129:i586/pciutils-2.1.11-201.i586.rpm +130:i586/scsi-1.7_2.35_1.12_0.14-4.i586.rpm +131:i586/hotplug-0.50-19.2.i586.rpm +132:i586/timezone-2.3.4-23.i586.rpm +EOF + ) + ;; + *) + # No clue + ;; +esac +} + +print_rpms() { + local rpm_list=$(echo "$RPMS" | sed "s/[[:digit:]]\+://") + + echo "RPMs for suite $RPMSUITE and arch $ARCH" + for a in $rpm_list + do + echo " : $a" + done +} + +install_rpms() { + # Must do this to force SuSE's 'insserv' to ignore service dependencies + # while installing packages; aaa_base doesn't install them in the right + # order, so later packages (esp. procps) will choke and die during their + # postinst phases. + YAST_IS_RUNNING="yes" + export YAST_IS_RUNNING + + install_by_pass $RPMS +}