| 1 |
|
|---|
| 2 |
|
|---|
| 3 |
|
|---|
| 4 |
|
|---|
| 5 |
|
|---|
| 6 |
|
|---|
| 7 |
|
|---|
| 8 |
|
|---|
| 9 |
|
|---|
| 10 |
|
|---|
| 11 |
|
|---|
| 12 |
|
|---|
| 13 |
|
|---|
| 14 |
|
|---|
| 15 |
|
|---|
| 16 |
|
|---|
| 17 |
|
|---|
| 18 |
PKGCFGBASE= |
|---|
| 19 |
PKGCFGBASE_REL= |
|---|
| 20 |
YUM_RELEASEPKGS=( {redhat,fedora}-release ) |
|---|
| 21 |
|
|---|
| 22 |
function pkgmgmt._setPkgCfgBase |
|---|
| 23 |
{ |
|---|
| 24 |
test -z "$PKGCFGBASE" || return 0 |
|---|
| 25 |
|
|---|
| 26 |
for item in "\"$__CONFDIR/.defaults/apps/pkgmgmt/base\" 1" ${ROOTDIR:+"$ROOTDIR/.pkg"} "$__DEFAULT_VSERVERPKGDIR"; do |
|---|
| 27 |
eval set -- "$item" |
|---|
| 28 |
PKGCFGBASE=$1 |
|---|
| 29 |
PKGCFGBASE_REL=$2 |
|---|
| 30 |
test ! -d "$PKGCFGBASE" || break |
|---|
| 31 |
done |
|---|
| 32 |
|
|---|
| 33 |
test -d "$PKGCFGBASE" || { |
|---|
| 34 |
echo "pkgcfgbase-dir '$PKGCFGBASE' does not exist or is invalid" >&2 |
|---|
| 35 |
exit 1 |
|---|
| 36 |
} |
|---|
| 37 |
} |
|---|
| 38 |
|
|---|
| 39 |
function pkgmgmt._setPkgCfg |
|---|
| 40 |
{ |
|---|
| 41 |
pkgmgmt._setPkgCfgBase |
|---|
| 42 |
|
|---|
| 43 |
test -z "$PKGCFGDIR" || return 0 |
|---|
| 44 |
PKGCFGDIR="$PKGCFGBASE/$VSERVERDIRNAME" |
|---|
| 45 |
} |
|---|
| 46 |
|
|---|
| 47 |
function pkgmgmt._renameVserverPkgCfg |
|---|
| 48 |
{ |
|---|
| 49 |
local suffix=.~$(date +'%s')~ |
|---|
| 50 |
local i |
|---|
| 51 |
|
|---|
| 52 |
for i in "$PKGCFGDIR"; do |
|---|
| 53 |
test ! -e "$i" || { |
|---|
| 54 |
mv "$i" "$i$suffix" |
|---|
| 55 |
say "Renamed '$i' to '$i$suffix'" |
|---|
| 56 |
} |
|---|
| 57 |
done |
|---|
| 58 |
} |
|---|
| 59 |
|
|---|
| 60 |
function pkgmgmt.initFilesystem |
|---|
| 61 |
{ |
|---|
| 62 |
test -z "$1" || pkgmgmt._renameVserverPkgCfg |
|---|
| 63 |
test ! -d "$PKGCFGDIR" || { |
|---|
| 64 |
echo $\ |
|---|
| 65 |
"vserver pkgmgmt-directory exists already; please try to use |
|---|
| 66 |
'--force'; or remove it manually" >&2 |
|---|
| 67 |
exit 1 |
|---|
| 68 |
} |
|---|
| 69 |
|
|---|
| 70 |
mkdir -p "$PKGCFGDIR" |
|---|
| 71 |
base._addGeneratedFile "$PKGCFGDIR" |
|---|
| 72 |
|
|---|
| 73 |
mkdir -p "${SETUP_CONFDIR:?}"/apps/pkgmgmt |
|---|
| 74 |
|
|---|
| 75 |
test -z "$PKGCFGDIR" || { |
|---|
| 76 |
ln -s "$PKGCFGDIR" "$SETUP_CONFDIR/apps/pkgmgmt/base" |
|---|
| 77 |
|
|---|
| 78 |
test "$_EXECDIR" = / || ln -s "${_EXECDIR:?}" "$SETUP_CONFDIR/apps/pkgmgmt/execdir" |
|---|
| 79 |
} |
|---|
| 80 |
|
|---|
| 81 |
} |
|---|
| 82 |
|
|---|
| 83 |
function pkgmgmt.initVariables |
|---|
| 84 |
{ |
|---|
| 85 |
pkgmgmt._setPkgCfg |
|---|
| 86 |
findDir PKGINSTALLDIR "$__CONFDIR/.distributions/$DISTRIBUTION/pkgs" "$__DISTRIBDIR/$DISTRIBUTION/pkgs" / |
|---|
| 87 |
} |
|---|