]> pd.if.org Git - zpackage/blobdiff - bin/zpm-installed
move programs to bin for build
[zpackage] / bin / zpm-installed
diff --git a/bin/zpm-installed b/bin/zpm-installed
new file mode 100755 (executable)
index 0000000..fe84874
--- /dev/null
@@ -0,0 +1,52 @@
+#!/bin/sh
+
+# show the installed version for each package if no arguments are given, all
+# installed packages are displayed.
+
+chroot=1
+pkgroot=
+
+while getopts :R:CNXf:d:Dt:T:u:g: opt; do
+       case $opt in
+               R) pkgroot="$OPTARG" ;;
+               d) ZPMDB="$OPTARG" ;;
+       esac
+done
+
+shift $((OPTIND - 1))
+
+for cf in /etc/zpmrc ~/.zpmrc ./.zpmrc; do
+       test -r $cf && . $cf
+done
+
+: ${ZPMDB:=/var/lib/zpm/db.zpm}
+
+export ZPMDB
+
+die() {
+       printf 'zpm-installed:' 1>&2
+       printf ' %s' $* 1>&2
+       printf '\n' 1>&2
+       exit 1
+}
+
+db=$pkgroot$ZPMDB
+
+set -e
+zpm test -v $db
+
+{
+
+       printf '.separator "\\t"\n'
+       printf 'select package,version,release from packages\n'
+if [ $# -gt 0 ]; then
+       printf 'where package in\n('
+       printf "'%s'" "$1"
+       shift
+       for pkg in "$@"; do
+               printf ",'%s'" "$pkg"
+       done
+       printf ')\n'
+fi
+printf ';\n'
+} | zpm shell $db