From 090a340dad3e79a3ccfa6954c779f5abf71f0f60 Mon Sep 17 00:00:00 2001 From: Enrico Scholz Date: Fri, 25 Feb 2005 20:55:10 +0000 Subject: [PATCH] added preliminary support for the patch from https://bugzilla.redhat.com/beta/attachment.cgi?id=111435&action=view git-svn-id: http://svn.linux-vserver.org/svn/util-vserver/trunk@1866 94cd875c-1c1d-0410-91d2-eb244daf1a30 --- util-vserver/scripts/vserver-build.functions.yum | 32 ++++++++++++++++-------- util-vserver/scripts/vyum-worker | 10 ++++++-- 2 files changed, 30 insertions(+), 12 deletions(-) diff --git a/util-vserver/scripts/vserver-build.functions.yum b/util-vserver/scripts/vserver-build.functions.yum index 56b6db6..c0b03ea 100644 --- a/util-vserver/scripts/vserver-build.functions.yum +++ b/util-vserver/scripts/vserver-build.functions.yum @@ -48,18 +48,11 @@ function yum.initVariables '' } -function yum.initFilesystem +function yum.__substituteConf { - mkdir -p "$PKGCFGDIR"/yum/{etc,cache} - - populateDirectory "$PKGCFGDIR/yum/etc" \ - "$DISTRIBDIR/defaults/yum" \ - "$DISTRIBDIR/$DISTRIBUTION/yum" \ - "$CONFDIR/.distributions/$DISTRIBUTION/yum" + local f=$1 + local prefix=$2 - ## workaround for yum's automatism to search the configuration in the chroot - local prefix='/../../../../../../../../../../../../' - local f="$PKGCFGDIR"/yum/etc/yum.conf if test -e "$f"; then $_SED -e "s!@YUMETCDIR@!$prefix$PKGCFGDIR/yum/etc!g; s!@YUMCACHEDIR@!$prefix$PKGCFGDIR/yum/cache!g; @@ -68,6 +61,25 @@ function yum.initFilesystem $_CMP -s "$f" "$f.tmp" || $_CAT "$f.tmp" >"$f" $_RM -f "$f.tmp" fi +} + +function yum.initFilesystem +{ + mkdir -p "$PKGCFGDIR"/yum/{etc,cache} + + populateDirectory "$PKGCFGDIR/yum/etc" \ + "$DISTRIBDIR/defaults/yum" \ + "$DISTRIBDIR/$DISTRIBUTION/yum" \ + "$CONFDIR/.distributions/$DISTRIBUTION/yum" + + ## workaround for yum's automatism to search the configuration in the chroot + + local f0="$PKGCFGDIR"/yum/etc/yum.conf + local f1="$PKGCFGDIR"/yum/etc/yum-hack.conf + cp -a "$f0" "$f1" + + yum.__substituteConf "$f0" 'hostfs://' + yum.__substituteConf "$f1" '/../../../../../../../../../../../../' test -z "$YUMREPOSDEFAULT" -o -e "$PKGCFGDIR/yum/etc/yum.repos.d" || \ $_LN_S "$YUMREPOSDEFAULT" "$PKGCFGDIR/yum/etc/yum.repos.d" diff --git a/util-vserver/scripts/vyum-worker b/util-vserver/scripts/vyum-worker index 4801886..e2ff360 100755 --- a/util-vserver/scripts/vyum-worker +++ b/util-vserver/scripts/vyum-worker @@ -32,7 +32,13 @@ shift pkgInit "$vserver" rpm yum rpmFake.init "$vserver" -rpmFake.exec ${_YUM:-yum} \ - -c "$YUMETCDIR/yum.conf" \ +yum=${YUM:-yum} +case $(yum --version) in + (2.[0123]*) conf=yum-hack.conf;; + (*) conf=yum.conf;; +esac + +rpmFake.exec $yum \ + -c "$YUMETCDIR/${YUM_CONF:-$conf}" \ --installroot="$VDIR" \ "$@" -- 1.8.1.5