# TODO option to attempt to resume an ongoing install
# zpm-install [-SCn] [ -d localdb ] [ -f pkgfile ] [ -R installroot ] pkgstr ...
-while getopts f:d:R:nSCvAObBLUzp opt; do
+while getopts f:d:R:nSCvAObBLUzpl opt; do
case $opt in
f) pkgfile="$OPTARG" ;;
d) localdb="$OPTARG" ;;
*) die "usage ..." ;;
esac
done
-shift $(( OPTIND - 1))
+shift $(( OPTIND - 1 ))
+
+if [ -n "$rootdir" ]; then
+ : rootdir=${rootdir%%/}
+ ZPM_ROOT_DIR=$rootdir
+ export ZPM_ROOT_DIR
+fi
+
+if [ -n "$localdb" ]; then
+ ZPMDB=$localdb
+elif [ -z "$ZPMDB" ]; then
+ ZPMDB="$ZPM_ROOT_DIR/var/lib/zpm/local.db"
+fi
-ZPMDB=${localdb:-${ZPMDB:-/var/lib/zpm/local.db}}
export ZPMDB
+
# create the localdb if needed
zpm init $ZPMDB
nlist="$nlist $pkgid:$zpmfile"
continue
else
- echo downloading $zpmfile
zpm repo fetch $reponame $pkgid
if [ -f "$zpmfile" ]; then
nlist="$nlist $pkgid:$zpmfile"
# TODO check for symlinks?
if [ $pkgfile != $ZPMDB ]; then
echo merging $pkgfile $pkgid
- zpm merge -Fuv -f "$pkgfile" $pkgid
+ zpm merge -Fu -f "$pkgfile" $pkgid
if [ $? -ne 0 ]; then
die "unable to merge $pkgfile"
fi
done
fi
-if [ -n "$rootdir" ]; then
- ZPM_ROOT_DIR=$rootdir
- export ZPM_ROOT_DIR
- : rootdir=${rootdir%%/}
-fi
-
if [ $dryrun -gt 0 ]; then
runscripts=0 # we don't want to run post scripts on a dry-run
syncopts="$syncopts -n"
if [ $verbose -gt 0 ]; then
syncopts="${syncopts} -v"
-else
- # force -v during development
- syncopts="${syncopts} -v"
fi
+#else
+ # force -v during development
+ #syncopts="${syncopts} -v"
+#fi
if [ $dryrun -eq 0 ] && [ $backup -eq 1 ]; then
true