X-Git-Url: https://pd.if.org/git/?a=blobdiff_plain;f=zpm-contents;fp=zpm-contents;h=0000000000000000000000000000000000000000;hb=0419c62f964b259df1c1816f5870ef62eb97ed7c;hp=d466478dd11d2581aee9c86967f4dd4c8e5657b3;hpb=0c2216d1e0dc8565a6bf61c9572e47bb1ae1c1fb;p=zpackage diff --git a/zpm-contents b/zpm-contents deleted file mode 100755 index d466478..0000000 --- a/zpm-contents +++ /dev/null @@ -1,120 +0,0 @@ -#!/bin/sh - -pkgfile=${ZPMDB:-/var/lib/zpm/local.db} - -long=0 -pkgonly=0 -quiet=0 -config=include -showsoname=0 -status= -sharedlibsonly=0 - -while getopts f:qlncCLIs opt; do - case $opt in - f) pkgfile="$OPTARG" ;; - l) long=1 ;; - n) pkgonly=1 ;; - q) quiet=1 ;; - c) config=only ;; - C) config=exclude ;; - L) showsoname=1 ;; - s) sharedlibsonly=1 ;; - I) status=installed ;; - esac -done -shift $((OPTIND - 1)) - -if [ ! -f $pkgfile ]; then - echo cannot find $pkgfile - exit 1 -fi - -if [ $long -gt 0 ]; then - cols="filetype,printf('%.4s', mode) as mode,username,groupname," -fi - -if [ $pkgonly -eq 1 ]; then - cols="pkgid" -elif [ $quiet -eq 0 ]; then - cols="pkgid,$cols" -fi - -pkglist= -efail=0 -while [ $# -gt 0 ]; do - pkg=$1 - shift - - if [ "$pkg" = ':' ]; then - break - fi - - pkgid=$(zpm findpkg -f $pkgfile "$pkg") - if [ -n "$pkgid" ]; then - pkglist="$pkglist $pkgid" - else - printf "package $pkg not found\n" 1>&2 - efail=1 - fi -done - -if [ $efail -eq 1 ]; then - exit 1; -fi - -globlist= -for glob in "$@"; do - q=$(zpm quote -q "$glob") - globlist="or path glob $q" -done -globlist=${globlist#'or '} - -cols=${cols%,} - -{ - printf '.separator " "\n' -# printf '.echo on\n' - printf 'select %s\n' "$cols" - - if [ $pkgonly -eq 0 ]; then - if [ -n "$cols" ]; then - printf ', ' - fi - - printf "case\n"; - printf "when filetype = 'd' then rtrim(path,'/') || '/'\n" - printf "when filetype = 'l' then printf('%%s -> %%s', path, target)\n" - if [ $showsoname -eq 1 ]; then - printf "when EL.soname is not null then printf('%%s (%%s)', path, EL.soname)\n" - fi - printf "else path end as path\n" - fi - printf "from packagefiles_pkgid PF\n" - if [ $showsoname -eq 1 ] || [ $sharedlibsonly -eq 1 ]; then - printf "left join elflibraries EL on EL.file = PF.hash\n" - fi - if [ -n "$status" ]; then - printf "join packages P on P.package = PF.package and P.version = PF.version and P.release = PF.release\n" - fi - printf "where true\n" - if [ -n "$globlist" ]; then - printf "and (%s)\n" "$globlist" - fi - if [ -n "$pkglist" ]; then - printf "and pkgid in (%s)\n" "$(zpm quote -d, -q $pkglist)" - fi - case $config in - only) printf "and configuration = 1\n" ;; - exclude) printf "and configuration = 0\n" ;; - esac - if [ $sharedlibsonly -eq 1 ]; then - printf "and EL.soname is not null\n" - fi - if [ -n "$status" ]; then - printf "and P.status = '%s'\n" "$status" - fi - printf 'order by PF.package, PF.version collate vercmp, PF.release, PF.path\n' - printf ';\n' -} | zpm shell $pkgfile -#} | cat