From a57baec7cc9ae091a6b285cfece86ca2f8c21a61 Mon Sep 17 00:00:00 2001 From: Natanael Copa Date: Fri, 28 May 2010 13:52:47 +0000 Subject: [PATCH] newapkbuild: support for creating new from http source newapkbuild http://example.com/path/foo-1.0.tar.gz will set pkgname=foo pkgver=1.0 source="http://example.com/path/foo-1.0.tar.gz" --- newapkbuild.in | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) 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