diff -NurpP installer-0.4.org/initinstall.d/20-metadata-basesystem.sh installer-0.4/initinstall.d/20-metadata-basesystem.sh --- installer-0.4.org/initinstall.d/20-metadata-basesystem.sh 2008-02-29 12:55:27 +0200 +++ installer-0.4/initinstall.d/20-metadata-basesystem.sh 2008-03-04 11:28:12 +0200 @@ -2,24 +2,37 @@ . install2-init-functions + +metadir="/tmp/metadata" +mkdir -p "$metadir" +cp-metadata "$metadir/basesystem.manifest" || : + + METHOD="${METHOD:-cdrom}" HOST="${HOST:-}" PREFIX="${PREFIX:-}" +AUTH_DATA="${LOGIN:-}" +PASSWORD="${PASSWORD:-}" +if [[ -n "$PASSWORD" && -n "$AUTH_DATA" ]]; then + AUTH_DATA=$(echo "$AUTH_DATA:$PASSWORD@") +elif [ -n "$AUTH_DATA" ]; then + AUTH_DATA=$(echo "$AUTH_DATA@") +fi + [ "$PREFIX" != "/" ] || PREFIX= image_prefix= case "$METHOD" in - http|ftp) + http) image_prefix="$METHOD://$HOST$PREFIX" ;; + ftp) + image_prefix="$METHOD://$AUTH_DATA$HOST$PREFIX" + ;; cdrom|disk|nfs) image_prefix="$image_dir" ;; esac -metadir="/tmp/metadata" - -mkdir -p "$metadir" -cp-metadata "$metadir/basesystem.manifest" && - sed -i -r -e "s#^(.*)#$image_prefix/ALTLinux/RPMS.base/\1#" "$metadir/basesystem.manifest" || : +sed -i -r -e "s#^(.*)#$image_prefix/ALTLinux/RPMS.base/\1#" "$metadir/basesystem.manifest" || : diff -NurpP installer-0.4.org/scripts/cp-metadata installer-0.4/scripts/cp-metadata --- installer-0.4.org/scripts/cp-metadata 2008-02-29 12:55:27 +0200 +++ installer-0.4/scripts/cp-metadata 2008-03-04 11:28:21 +0200 @@ -5,6 +5,13 @@ METHOD="${METHOD:-cdrom}" HOST="${HOST:-}" PREFIX="${PREFIX:-}" +AUTH_DATA="${LOGIN:-}" +PASSWORD="${PASSWORD:-}" +if [[ -n "$PASSWORD" && -n "$AUTH_DATA" ]]; then + AUTH_DATA=$(echo "$AUTH_DATA:$PASSWORD@") +elif [ -n "$AUTH_DATA" ]; then + AUTH_DATA=$(echo "$AUTH_DATA@") +fi image_prefix= curl_args="-s -S --retry 5 --retry-delay 2" @@ -25,10 +32,14 @@ get_local_metadata() { case "$METHOD" in - http|ftp) + http) image_prefix="$METHOD://$HOST$PREFIX" get_remote_metadata "$1" ;; + ftp) + image_prefix="$METHOD://$AUTH_DATA$HOST$PREFIX" + get_remote_metadata "$1" + ;; cdrom|disk|nfs) image_prefix="$image_dir" get_local_metadata "$1"