blob: 3ca414aface5d86280fb8b8555f430dfb7c626b4 (
plain)
- #!/bin/sh
- set -e
- #set -x
- SRCBASE=~/public_debian
- PUBBASE=~/public_websites/debian.jones.dk
- #PUBTOSRC=../../public_debian
- pathsfromsuites() {
- case "$@" in
- all)
- suites_re=""
- ;;
- *)
- suites_re="\b\($(echo "$@" | sed 's/[[:space:]]\+/\\|/g')\)\b"
- ;;
- esac
- find $SRCBASE -type f -name HINTS -exec grep -q "^Sections:.*$suites_re" '{}' ';' -printf '%h\n' \
- | sed "s,^$SRCBASE/,,"
- }
- suitesfrompaths() {
- case "$@" in
- all)
- fullpaths="$SRCBASE"
- ;;
- *)
- fullpaths=
- for path in "$@"; do
- # TODO: rewrite to support spaces in directory names
- fullpaths="$fullpaths $SRCBASE/$path"
- done
- ;;
- esac
- find $fullpaths -type f -name HINTS -exec cat '{}' ';' \
- | grep '^Sections:' \
- | sed 's/^Sections://; s/[[:space:]]\+/ /g; s/^ //; s/ $//' \
- | tr ' ' '\n' \
- | sort -u
- }
- suites="$@"
- paths="$(pathsfromsuites "$suites")"
- #echo $paths; exit 0
- #suitesfrompaths all; exit 0
- for path in $paths; do
- package="$(basename "$path")"
- pool="$(echo $(dirname "$path") | sed 's,.*/pool-\([^/]\+\)/\?.*,\1,; s,-all$,,')"
- buildhost="$(echo $(dirname "$path") | sed 's,^\([^/]\+\)/pool-.*,\1,')"
- symlink_dir="$pool/$package"
- mkdir -p "$PUBBASE/pools/$symlink_dir"
- # ln -sf -T "../../../$PUBTOSRC/$path" "$PUBBASE/pools/$symlink_dir/$buildhost"
- ln -sf -T "$SRCBASE/$path" "$PUBBASE/pools/$symlink_dir/$buildhost"
- for suite in $(suitesfrompaths "$path"); do
- mkdir -p "$SRCBASE/suites/$suite/$symlink_dir"
- ln -sf -T "../../../../$path" "$SRCBASE/suites/$suite/$symlink_dir/$buildhost"
- done
- done
- srcdir="$SRCBASE/suites/sugar"
- pubdir="$PUBBASE/dists/sid/sugar/binary-amd64"
- mkdir -p "$pubdir"
- ( cd "$srcdir" && dpkg-scanpackages * /dev/null pools/ ) > "$pubdir/Packages"
- gzip -c "$pubdir/Packages" > "$pubdir/Packages.gz"
- bzip2 -c "$pubdir/Packages" > "$pubdir/Packages.bz2"
- pubdir="$PUBBASE/dists/sid/sugar/source"
- mkdir -p "$pubdir"
- ( cd "$srcdir" && dpkg-scansources * /dev/null pools/ ) > "$pubdir/Sources"
- gzip -c "$pubdir/Sources" > "$pubdir/Sources.gz"
- bzip2 -c "$pubdir/Sources" > "$pubdir/Sources.bz2"
- exit 0
|