summary refs log tree commit diff
path: root/pkgs/build-support/upstream-updater/update-walker.sh
diff options
context:
space:
mode:
authorMichael Raskin <7c6f434c@mail.ru>2014-07-01 11:48:46 +0400
committerMichael Raskin <7c6f434c@mail.ru>2014-07-01 11:54:09 +0400
commit0fcee205227604ed690407ebc94f06df1eb7ede2 (patch)
tree5996758428941697e788c8227248b681056ced19 /pkgs/build-support/upstream-updater/update-walker.sh
parent2e12709a2688232af9d752490f36127a3e8c7cba (diff)
downloadnixlib-0fcee205227604ed690407ebc94f06df1eb7ede2.tar
nixlib-0fcee205227604ed690407ebc94f06df1eb7ede2.tar.gz
nixlib-0fcee205227604ed690407ebc94f06df1eb7ede2.tar.bz2
nixlib-0fcee205227604ed690407ebc94f06df1eb7ede2.tar.lz
nixlib-0fcee205227604ed690407ebc94f06df1eb7ede2.tar.xz
nixlib-0fcee205227604ed690407ebc94f06df1eb7ede2.tar.zst
nixlib-0fcee205227604ed690407ebc94f06df1eb7ede2.zip
Allow pure-meta updates to specify tarball regexp
Diffstat (limited to 'pkgs/build-support/upstream-updater/update-walker.sh')
-rwxr-xr-xpkgs/build-support/upstream-updater/update-walker.sh15
1 files changed, 13 insertions, 2 deletions
diff --git a/pkgs/build-support/upstream-updater/update-walker.sh b/pkgs/build-support/upstream-updater/update-walker.sh
index 8aa9e723a3a2..ef0754289c4f 100755
--- a/pkgs/build-support/upstream-updater/update-walker.sh
+++ b/pkgs/build-support/upstream-updater/update-walker.sh
@@ -3,6 +3,7 @@
 own_dir="$(cd "$(dirname "$0")"; pwd)"
 
 URL_WAS_SET=
+DL_URL_RE=
 CURRENT_URL=
 CURRENT_REV=
 PREFETCH_COMMAND=
@@ -13,6 +14,10 @@ url () {
   CURRENT_URL="$1"
 }
 
+dl_url_re () {
+  DL_URL_RE="$1"
+}
+
 version_unpack () {
   sed -re '
     s/[.]/ /g; 
@@ -123,7 +128,7 @@ ensure_choice () {
   echo "CURRENT_URL: $CURRENT_URL" >&2
   [ -z "$URL_WAS_SET" ] && [ -z "$CURRENT_URL" ] && ensure_url
   [ -n "$NEED_TO_CHOOSE_URL" ] && {
-    version_link '[.]tar[.]([^./])+$'
+    version_link "${DL_URL_RE:-'[.]tar[.]([^./])+$'}"
     unset NEED_TO_CHOOSE_URL
   }
   [ -z "$CURRENT_URL" ] && {
@@ -174,6 +179,12 @@ retrieve_version () {
   PACKAGED_VERSION="$(retrieve_meta version)"
 }
 
+ensure_dl_url_re () {
+  echo "Ensuring DL_URL_RE. DL_URL_RE: $DL_URL_RE" >&2
+  [ -z "$DL_URL_RE" ] && dl_url_re "$(retrieve_meta downloadURLRegexp)"
+  echo "DL_URL_RE: $DL_URL_RE" >&2
+}
+
 directory_of () {
   cd "$(dirname "$1")"; pwd
 }
@@ -291,9 +302,9 @@ process_config () {
       }
     "
   fi
-  ensure_name
   ensure_attribute_name
   retrieve_version
+  ensure_dl_url_re
   ensure_choice
   ensure_version
   ensure_target