allow '--all' param
[util-vserver.git] / util-vserver / scripts / vserver-build.functions.yum
index 56b6db6..67a253a 100644 (file)
@@ -43,23 +43,16 @@ function yum.installBasePackages
 function yum.initVariables
 {
     findDir  YUMREPOSDEFAULT \
-       "$CONFDIR/.distributions/$DISTRIBUTION/yum.repos.d" \
-       "$DISTRIBDIR/$DISTRIBUTION/yum.repos.d" \
+       "$__CONFDIR/.distributions/$DISTRIBUTION/yum.repos.d" \
+       "$__DISTRIBDIR/$DISTRIBUTION/yum.repos.d" \
        ''
 }
 
-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"