From ef9fb52908d3f423e6e537b84f62cb76c7868782 Mon Sep 17 00:00:00 2001 From: Dubiousjim Date: Fri, 5 Jul 2013 00:21:19 -0400 Subject: various: use long options, rework usages --- abuild-sign.in | 45 +++++++++++++++++++++++++++++++-------------- 1 file changed, 31 insertions(+), 14 deletions(-) (limited to 'abuild-sign.in') diff --git a/abuild-sign.in b/abuild-sign.in index 3260e53..b5250af 100644 --- a/abuild-sign.in +++ b/abuild-sign.in @@ -40,26 +40,43 @@ do_sign() { } usage() { - echo "abuild-sign $abuild_ver" - echo "usage: abuild-sign [-hq] [-k PRIVKEY] [-p PUBKEY] INDEXFILE..." - echo "options:" - echo " -h Show this help" - echo " -k The private key to use for signing" - echo " -p The name of public key. apk add will look for /etc/apk/keys/PUBKEY" - exit 1 + cat >&2 <<__EOF__ +$prog $abuild_ver - sign indexes +Usage: $prog [-k PRIVKEY] [-p PUBKEY] INDEXFILE... +Options: + -k, --private KEY The private key to use for signing + -p, --public KEY The name of public key. apk add will look for /etc/apk/keys/KEY + -q, --quiet + -h, --help Show this help + +__EOF__ } privkey="$PACKAGER_PRIVKEY" +pubkey= +quiet= -while getopts "hk:p:q" opt; do - case $opt in - h) usage;; - k) privkey=$OPTARG;; - p) pubkey=$OPTARG;; - q) quiet=yes;; +args=`getopt -o k:p:qh --long private:,public:,quiet,help -n "$prog" -- "$@"` +if [ $? -ne 0 ]; then + usage + exit 2 +fi +eval set -- "$args" +while true; do + case $1 in + -k|--private) privkey=$2; shift;; + -p|--public) pubkey=$2; shift;; + -q|--quiet) quiet=1;; # suppresses msg + -h|--help) usage; exit;; + --) shift; break;; + *) exit 1;; # getopt error esac + shift done -shift $(( $OPTIND - 1)) +if [ $# -eq 0 ]; then + usage + exit 2 +fi if [ -z "$privkey" ]; then echo "No private key found. Use 'abuild-keygen' to generate the keys" -- cgit v1.2.3-60-g2f50