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-keygen.in | 54 +++++++++++++++++++++++++++++++++++------------------- 1 file changed, 35 insertions(+), 19 deletions(-) (limited to 'abuild-keygen.in') diff --git a/abuild-keygen.in b/abuild-keygen.in index 9b748d3..34af0ee 100644 --- a/abuild-keygen.in +++ b/abuild-keygen.in @@ -90,30 +90,46 @@ do_keygen() { msg "" } -# print usage and exit usage() { - echo "abuild-keygen $abuild_ver" - echo "usage: abuild-keygen [-ih]" - echo "options:" - echo " -a Set PACKAGER_PRIVKEY= in $abuild_userconf" - echo " -i Install public key into /etc/apk/keys using sudo" - echo " -h Show this help" - echo " -n Non-interactive. Use defaults" - echo " -q Quiet mode" - echo "" - exit 1 + cat >&2 <<__EOF__ +$prog $abuild_ver - generate signing keys +Usage: $prog [-a|--append] [-i|--install] [-n] +Options: + -a, --append Set PACKAGER_PRIVKEY= in $abuild_userconf + -i, --install Install public key into /etc/apk/keys using sudo + -n Non-interactive. Use defaults + -q, --quiet + -h, --help Show this help + +__EOF__ } +append_config= +install_pubkey= +non_interactive= +quiet= -while getopts "ahinq" opt; do - case $opt in - a) append_config=yes;; - h) usage;; - i) install_pubkey=yes;; - n) non_interactive=yes;; - q) quiet=-quiet;; +args=`getopt -o ainqh --long append,install,quiet,help -n "$prog" -- "$@"` +if [ $? -ne 0 ]; then + usage + exit 2 +fi +eval set -- "$args" +while true; do + case $1 in + -a|--append) append_config=1;; + -i|--install) install_pubkey=1;; + -n) non_interactive=yes;; + -q|--quiet) quiet=1;; # suppresses msg + -h|--help) usage; exit;; + --) shift; break;; + *) exit 1;; # getopt error esac + shift done -shift $(( $OPTIND - 1)) +if [ $# -ne 0 ]; then + usage + exit 2 +fi do_keygen -- cgit v1.2.3