---- util-vserver-0.30.215/scripts/pkgmgmt 2008-11-17 20:58:47.120292384 +0200
-+++ util-vserver-0.30.215/scripts/pkgmgmt 2008-11-17 22:47:02.486514626 +0200
-@@ -185,6 +185,43 @@
+--- util-vserver-0.30.216-pre3038/scripts/pkgmgmt~ 2013-05-27 17:13:26.567683113 +0300
++++ util-vserver-0.30.216-pre3038/scripts/pkgmgmt 2013-05-27 17:13:05.566763191 +0300
+@@ -185,6 +185,47 @@
test -n "$is_ok"
}
+ local host_tool="$3"
+ local guest_tool="$4"
+ local res=0
++ local hostbdb
++ local guestbdb
+
++ hostbdb=$(ldd /bin/rpm | awk '/libdb-[0-9\.]+.so/ { sub(/libdb-/, "", $1); sub(/.so/, "", $1); print $1 }')
++ guestbdb=$(ldd "$vdir"/bin/rpm | awk '/libdb-[0-9\.]+.so/ { sub(/libdb-/, "", $1); sub(/.so/, "", $1); print $1 }')
+ local i host_path guest_path
+ for i in /bin /usr/bin /usr/lib/rpm /usr/local/bin; do
-+ test ! -x "$i"/$host_tool || { host_path="$i"/$host_tool; break; }
++ test ! -x "$i"/db${hostbdb}_$host_tool || { host_path="$i"/"db${hostbdb}_${host_tool}"; break; }
+ done
+ for i in /bin /usr/bin /usr/lib/rpm /usr/local/bin; do
-+ test ! -x "$vdir$i"/$guest_tool || { guest_path="$i"/$guest_tool; break; }
++ test ! -x "$vdir$i"/db${guestbdb}_$guest_tool || { guest_path="$i"/"db${guestbdb}_${guest_tool}"; break; }
+ done
+
+ test -n "$host_path" || {
+ warning "
-+* The host does not seem to have the '$host_tool' program which is required
++* The host does not seem to have the 'db${hostbdb}_${host_tool}' program which is required
+ for $type package management. It is suggested to install it before
+ continuing."
+ res=1
+ }
+ test -n "$guest_path" || {
+ warning "
-+* The vserver guest does not seem to have the '$guest_tool' program which is required
++* The vserver guest does not seem to have the '"db${guestbdb}_${guest_tool}"' program which is required
+ for $type package management. It is suggested to install it before
+ continuing."
+ res=1
+ }
+
-+ eval $host_tool=$host_path
-+ eval $guest_tool=$guest_path
++ eval db_$host_tool=$host_path
++ eval db_$guest_tool=$guest_path
+ return $res
+}
+
# Usage: verifyInternalPackages <vserver> <style>
function verifyInternalPackages()
{
-@@ -392,7 +429,12 @@
+@@ -405,7 +446,12 @@
verifyInternalPackages "$vserver" RH || test -n "$IS_FORCE" ||
panic "
Can not continue; use '--force' to override this check"
+
-+ verifyDBTools "$vdir" 'internal' db_dump db_load || test -n "$IS_FORCE" ||
++ verifyDBTools "$vdir" 'internal' dump load || test -n "$IS_FORCE" ||
+ panic "
+Can not continue; use '--force' to override this check"
pushd "$vdir" >/dev/null
test ! -L var/lib/rpm || {
-@@ -416,6 +458,10 @@
+@@ -429,6 +475,10 @@
findDir RPMETCDIR "$cfgdir"/rpmetc "$cfgdir"/base/rpm/etc /etc/rpm /
findDir RPMSTATEDIR "$cfgdir"/rpmstate "$cfgdir"/base/rpm/state
else
-+ verifyDBTools "$vdir" 'external' db_load db_dump || test -n "$IS_FORCE" ||
++ verifyDBTools "$vdir" 'external' load dump || test -n "$IS_FORCE" ||
+ panic "
+Can not continue; use '--force' to override this check"
+
mkdir -m755 -p "$cfgdir"
local need_base=
-@@ -460,8 +506,38 @@
+@@ -473,8 +523,41 @@
pushd "$vdir" >/dev/null
## remove %_dbpath settings
_substFile /etc/rpm/macros '/^%_dbpath[ \t].*/D'
+
++ ## remove vserver-packages ignore
++ _substFile /etc/poldek/poldek.conf '/^ignore[ \t]*=/s/vserver-packages//'
++
+ # dump and reload rpmdb to overcome db version mismatch problems
+ if [ "$db_load" -a "$db_dump" ]; then
+ # dump with host db_dump