X-Git-Url: https://git.decadent.org.uk/gitweb/?a=blobdiff_plain;f=scripts%2Fdebian%2Fbyhand-di;h=3ba2f0057310ebcceac24592c2226c30c9301cf6;hb=14c267e0eaa8b921307574f6c10cd3964ee0a381;hp=ab01536d7adf4f165c2c1fabd7d30b297ec1e9db;hpb=0872b2e0b78670c91fd2bf0bda52e5761e079820;p=dak.git diff --git a/scripts/debian/byhand-di b/scripts/debian/byhand-di index ab01536d..3ba2f005 100755 --- a/scripts/debian/byhand-di +++ b/scripts/debian/byhand-di @@ -1,4 +1,8 @@ -#!/bin/sh -ue +#!/bin/bash + +set -u +set -e +set -o pipefail if [ $# -lt 4 ]; then echo "Usage: $0 filename version arch changes_file" @@ -16,8 +20,9 @@ error() { } # Check validity of version number -# Expected are: YYYYMMDD, YYYYMMDD.x, YYYYMMDDx and the +b[0-9] on the end -if ! echo "$VERSION" | grep -Eq "^[0-9]{8}(|(\.|[a-z]+)[0-9]+)(\+b[0-9])?$"; then +# Expected are: YYYYMMDD, YYYYMMDD.x, YYYYMMDDx, YYYYMMDD+x, +# YYYYMMDD+debXuZ and the +b[0-9] on the end +if ! echo "$VERSION" | grep -Eq "^[0-9]{8}((\.|\+?[a-z]+|\+deb[0-9]+u)[0-9]+)?(\+b[0-9])?$"; then error "Invalid version: '$VERSION'" fi @@ -28,7 +33,7 @@ case $SUITE in "") error "Error: unable to determine suite from Changes file" ;; - unstable|sid) + unstable|sid|*-proposed-updates) : # nothing to do ;; *) @@ -51,7 +56,8 @@ if [ -d "$TARGET/$VERSION" ]; then fi # We know the VERSION is sane by here, we just need to make sure we escape the + in +b1 (if any) -VERSIONREGEXP="$(echo $VERSION | sed 's@+@\\\+@')" +# It needs 'g' as well as we may have +$DIST+b[0-9] or +debXuZ+bY +VERSIONREGEXP="$(echo $VERSION | sed 's@+@\\\+@g')" # We know all data to be in ./installer-/; see if there's # anything else in the tarball except that and the 'current' symlink