6 export SCRIPTVARS=/srv/ftp-master.debian.org/dak/config/debian/vars
9 # Tarball to read, compressed with gzip
10 INPUT="${1:?"Usage: $0 filename"}"
12 # Regular expression used to validate tag lines
13 CHECKRE='^[a-z0-9A-Z.+-]+[[:space:]]+Tag[[:space:]]+[a-z0-9:. ,{}+-]+$'
15 # This must end with /
16 TARGET=/srv/ftp-master.debian.org/scripts/external-overrides/
18 # Read the main directory from the tarball
19 DIR="`tar ztf \"$INPUT\" | tac | tail -n 1`"
21 # Create temporary files where to store the validated data
23 OUTMAIN="`mktemp \"$TARGET\"tag.new.XXXXXX`"
24 OUTCONTRIB="`mktemp \"$TARGET\"tag.contrib.new.XXXXXX`"
25 OUTNONFREE="`mktemp \"$TARGET\"tag.non-free.new.XXXXXX`"
27 # If we fail somewhere, cleanup the temporary files
35 # Extract the data into the temporary files
36 tar -O -zxf "$INPUT" "$DIR"tag | grep -E "$CHECKRE" > "$OUTMAIN"
37 tar -O -zxf "$INPUT" "$DIR"tag.contrib | grep -E "$CHECKRE" > "$OUTCONTRIB"
38 tar -O -zxf "$INPUT" "$DIR"tag.non-free | grep -E "$CHECKRE" > "$OUTNONFREE"
40 # Move the data to the final location
41 mv "$OUTMAIN" "$TARGET"tag
42 mv "$OUTCONTRIB" "$TARGET"tag.contrib
43 mv "$OUTNONFREE" "$TARGET"tag.non-free
45 chmod 644 "$TARGET"tag "$TARGET"tag.contrib "$TARGET"tag.non-free
47 (cd $TARGET && $scriptsdir/mk-extra-overrides.sh)