diff --git a/newapkbuild.in b/newapkbuild.in index 3fa0b87..8c7df33 100755 --- a/newapkbuild.in +++ b/newapkbuild.in @@ -18,13 +18,24 @@ error() { echo "$@" >&2 } +is_url() { + case "$1" in + http://*|ftp://*) return 0;; + esac +} + + # create new aport from templates newaport() { - local newname="$1" + local newname="${1##*/}" local pn=${newname%-[0-9]*} local pv + local source= + is_url "$1" && source="$1" + if [ "$pn" != "$newname" ]; then pv=${newname#$pn-} + pv=${pv%.t*} #strip .tar.gz .tgz .tar.bz2 etc fi if [ -e "$pn"/APKBUILD ] && [ -z "$force" ]; then error "$pn/APKBUILD already exist" @@ -38,6 +49,9 @@ newaport() { -e "s/^pkgname=.*/pkgname=$pn/" \ -e "s/^pkgver=.*/pkgver=$pv/" \ "$datadir"/sample.APKBUILD > APKBUILD || return 1 + if [ -n "$source" ]; then + sed -i -e "/^source=/s|=.*|=\"$source\"|" APKBUILD || return 1 + fi #-e '1,/^\#$/d' \ if [ -n "$cpinitd" ]; then cp "$datadir"/sample.initd $pn.initd