quiet=0
config=include
showsoname=0
+status=
-while getopts f:qlncCL opt; do
+while getopts f:qlncCLI opt; do
case $opt in
f) pkgfile="$OPTARG" ;;
l) long=1 ;;
c) config=only ;;
C) config=exclude ;;
L) showsoname=1 ;;
+ I) status=installed
esac
done
shift $((OPTIND - 1))
fi
printf "else path end as path\n"
fi
- printf 'from packagefiles_pkgid PF left join elflibraries EL on EL.file = PF.hash\nwhere true\n'
+ printf 'from packagefiles_status PF left join elflibraries EL on EL.file = PF.hash\nwhere true\n'
if [ -n "$globlist" ]; then
printf "and (%s)\n" "$globlist"
fi
only) printf "and configuration = 1\n" ;;
exclude) printf "and configuration = 0\n" ;;
esac
+ if [ -n "$status" ]; then
+ printf "and status = '%s'\n" "$status"
+ fi
printf 'order by pkgid,path\n'
printf ';\n'
} | zpm shell $pkgfile
# -oO remove outdated packages, unless preserved
# -pP remove history for removed packages
# -rR remove orphaned rows in files table packagefiles, notes, scripts, ...
+# -hH remove all file content that is not scripts or configs
# -rR remove removed packages, unless preserved
# -vV compactify the database file