]> git.pld-linux.org Git - packages/rpm.git/blobdiff - dbupgrade.sh
- cleanup upgrade path from rpm5
[packages/rpm.git] / dbupgrade.sh
index 8d5dcc0a1bcba5884856eb555e6825e5bbacb893..30c2d5c902beeb76165b12f55164c14fe855e4c1 100755 (executable)
@@ -1,30 +1,36 @@
 #!/bin/sh
 
-if [ ! -x /usr/bin/db5.2_load ]; then
-       echo "This script needs /usr/bin/db5.2_load to operate."
-       exit
+ROOTDIR=
+if [ "$1" = "-r" ]; then
+       shift
+       ROOTDIR="$1"
+
+       if [ ! -d "$ROOTDIR" ]; then
+               echo "Specified root directory ($ROOTDIR) does not exist!"
+               echo "Bailing out!"
+               exit
+       fi
 fi
 
-if /usr/bin/db5.2_load -r lsn /var/lib/rpm/Packages ; then
-       /bin/rm --interactive=never -f /var/lib/rpm/__db.00* >/dev/null 2>/dev/null || :
-       /bin/rm --interactive=never -f /var/lib/rpm/log/* >/dev/null 2>/dev/null || :
-else
+if ! /usr/lib/rpm/rpmdb_reset -r lsn "$ROOTDIR"/var/lib/rpm/Packages ; then
        echo
        echo "rpm database conversion failed!"
        echo
        echo "You have to run:"
        echo
-       echo "  /usr/bin/db5.2_load -r lsn /var/lib/rpm/Packages"
+       echo "  /usr/lib/rpm/rpmdb_reset -r lsn /var/lib/rpm/Packages"
        echo "  /bin/rm -f /var/lib/rpm/__db.00*"
        echo "  /bin/rm -f /var/lib/rpm/log/*"
-       echo "  /usr/lib/rpm/bin/dbconvert --rebuilddb"
+       echo "  /usr/bin/rpmdb --rebuilddb"
        echo
+else
+       /bin/rm --interactive=never -f "$ROOTDIR"/var/lib/rpm/__db.00* >/dev/null 2>/dev/null || :
+       /bin/rm --interactive=never -f "$ROOTDIR"/var/lib/rpm/log/* >/dev/null 2>/dev/null || :
 
-fi
-
-if ! /usr/lib/rpm/bin/dbconvert --rebuilddb; then
-       echo
-       echo "rpm database conversion failed!"
-       echo "You have to run  /usr/lib/rpm/bin/dbconvert manually"
-       echo
+       if ! /usr/bin/rpmdb --rebuilddb ${ROOTDIR:+--root="$ROOTDIR"}; then
+               echo
+               echo "rpm database conversion failed!"
+               echo "You have to run /usr/bin/rpmdb manually"
+               echo
+       fi
 fi
This page took 0.036562 seconds and 4 git commands to generate.