]> pd.if.org Git - zpackage/blobdiff - zpm-repo
move programs to bin for build
[zpackage] / zpm-repo
diff --git a/zpm-repo b/zpm-repo
deleted file mode 100755 (executable)
index 76359b8..0000000
--- a/zpm-repo
+++ /dev/null
@@ -1,241 +0,0 @@
-#!/bin/sh
-
-# control repositories
-
-# repo ...
-# add name <url>
-# del name
-# pri name <n>
-# list [-v ] [ name ... ]
-# note name <note>
-# url name [url]
-# packages [ name ... ] -- like zpm list
-# contents [ name ... ] -- like zpm contents
-# search [ name ] -- packages
-# push name ckagefile ...
-# pull name package ...
-# extract -- extract metadata from repo
-# json - extract metadata as json
-# setpkgurl packageid url
-# update - pull info from remote
-# gc [name] - run zpm gc on repo file
-
-chroot=1
-pkgroot=
-
-while getopts :R:d: 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
-
-pkgroot=${pkgroot%/}
-
-: ${ZPMDB:=$pkgroot/var/lib/zpm/local.db}
-
-repodir=/var/lib/zpm/repo
-mkdir -p $repodir
-
-export ZPMDB
-
-warn() {
-       printf '%s:' "$0" 1>&2
-       printf ' %s' $* 1>&2
-       printf '\n' 1>&2
-       exit 1
-}
-
-die() {
-       printf '%s:' "$0" 1>&2
-       printf ' %s' $* 1>&2
-       printf '\n' 1>&2
-       exit 1
-}
-
-set -e
-zpm test -v $ZPMDB
-
-if [ $# -gt 0 ]; then
-       action=$1
-       shift
-else
-       action=list
-fi
-
-select() (
-       name=$(zpm quote "$1")
-       cols=$2
-       if [ -n "$name" ]; then
-               where="where name = '$name'"
-       fi
-       zpm shell -separator ' ' $ZPMDB "select $cols from repository $where order by priority,name"
-)
-
-update() (
-       name=$(zpm quote "$1")
-       col=$2
-       val=$(zpm quote "$3")
-       if [ -n "$name" ]; then
-               where="where name = '$name'"
-       fi
-       zpm shell $ZPMDB "update repository set $col = '$val' $where"
-)
-
-refresh() {
-       zpm shell $ZPMDB "update repository set refreshed = strftime('%s', 'now') where name = '$1'"
-}
-
-update_info() {
-       if [ $# -eq 0 ]; then
-               set $(select '' name)
-       fi
-       for repo in "$@"; do
-               url=$(select "$repo" url)
-               rf="$repodir/$repo.repo"
-               if [ -z "$url" ]; then
-                       check_for_repo "$repo" || warn "no url for repo $repo"
-                       return 1
-               fi
-               if [ -f "$rf" ]; then
-                       # TODO merge in so packages aren't deleted
-                       zpm fetchurl -fpn -z "$rf" -o "$rf.tmp" "$url"
-                       rv=$?
-               else
-                       zpm fetchurl -fpn -o "$rf.tmp" "$url" && refresh "$repo"
-                       rv=$?
-               fi
-               if [ $rv -eq 0 ]; then
-                       test -f "$rf.tmp" &&
-                       zpm test "$rf.tmp" &&
-                       mv "$rf.tmp" "$rf"
-                       refresh "$repo"
-               fi
-       done
-}
-
-head_response_code() {
-       zpm fetchurl -S -z "$2" "$1"
-}
-
-download() {
-       repo=$1
-       shift
-       url=$(select "$repo" url)
-       base=${url%/*}
-       for package in "$@"; do
-               pkgid=$(zpm findpkg -f $repodir/$repo.repo $package)
-               if [ -z "$pkgid" ]; then
-                       warn "no package found for $package"
-               else
-                       mkdir -p "$repodir/$repo"
-                       dest="$repodir/$repo/$pkgid.zpm"
-                       fetch="$base/packages/$pkgid.zpm"
-
-                       if [ -f "$dest" ]; then
-                               rc=$(head_response_code $fetch $dest)
-                               if [ $rc = 304 ]; then
-                                       echo "have $pkgid"
-                                       continue
-                               fi
-                               echo downloading $pkgid
-                               zpm fetchurl -f '-#' -z "$dest" -o "$dest.tmp" $fetch
-                               mv "$dest.tmp" "$dest"
-                       else
-                               echo downloading $pkgid
-                               zpm fetchurl -f '-#' -o "$dest.tmp" $fetch
-                               mv "$dest.tmp" "$dest"
-                       fi
-               fi
-       done
-}
-
-purge() {
-       repo=$1
-       shift
-       url=$(select "$repo" url)
-       base=${url%/*}
-       for package in "$@"; do
-               pkgid=$(zpm findpkg -f $repodir/$repo.repo $package)
-               if [ -z "$pkgid" ]; then
-                       warn "no package found for $package"
-               else
-                       mkdir -p "$repodir/$repo"
-                       dest="$repodir/$repo/$pkgid.zpm"
-
-                       if [ -f "$dest" ]; then
-                               rm $dest
-                       fi
-                       zpm rmpackage -f $repodir/$repo.repo $pkgid
-               fi
-       done
-}
-
-check_for_repo() {
-       rn=$(select "$1" name)
-       if [ -z "$rn" ]; then
-               warn "no repository $1"
-               return 1
-       fi
-       return 0
-}
-
-case $action in
-       list)
-               select '' priority,name,url,refreshed ;;
-       add)
-               name=$(zpm quote "$1")
-               url=$(zpm quote "$2")
-               zpm shell $ZPMDB "insert into repository (name,url) values ('$name', '$url')"
-               ;;
-       del)
-               name=$(zpm quote "$1")
-               zpm shell $ZPMDB "delete from repository where name = '$name'"
-               rm -f $repodir/$1.repo
-               test -d "$repodir/$repo" && rm -r "$repodir/$repo"
-               ;;
-       url)
-               if [ -n "$2" ]; then
-                       update "$1" url "$2"
-               else
-                       select "$1" url
-               fi
-               ;;
-       pri*)
-               if [ -n "$2" ]; then
-                       update "$1" priority "$2"
-               else
-                       select "$1" priority
-               fi
-               ;;
-       fetch|download)
-               download "$@"
-               ;;
-       update|pull)
-               update_info "$@"
-               ;;
-       packages)
-               repo=$1
-               shift
-               zpm list -f $repodir/$repo.repo "$@"
-               ;;
-       contents)
-               repo=$1
-               shift
-               zpm contents -f $repodir/$repo.repo "$@"
-               ;;
-       purge)
-               purge "$@"
-               ;;
-
-       *)
-               echo unknown action
-               exit 1
-               ;;
-esac