#!/bin/sh set -e . /usr/share/debconf/confmodule file="$1" log() { logger -t apt-setup "$@" } warning() { log "warning: $@" } # Ask if a mirror should be used if the base system can be installed from CD if [ -e /cdrom/.disk/base_installable ] || [ "$OVERRIDE_BASE_INSTALLABLE" ]; then if ! search-path choose-mirror; then warning "choose-mirror is not available; cannot offer network mirror" exit 1 fi # Set default if no value (see Debian mirror generator) db_get apt-setup/use_mirror [ "$RET" ] || db_set apt-setup/use_mirror true # Text is variable for Debian db_metaget apt-setup/use/netinst_old description db_subst apt-setup/use_mirror EXPLANATION "$RET" db_input medium apt-setup/use_mirror || [ $? -eq 30 ] db_go # or exit 10 db_get apt-setup/use_mirror if [ "$RET" = false ]; then exit 1 fi if db_get cdrom/codename && [ "$RET" ]; then db_set mirror/codename $RET fi if db_get cdrom/suite && [ "$RET" ]; then db_set mirror/suite $RET fi choose-mirror -n # no progress bar db_capb backup progresscancel fi STATE=1 while :; do case "$STATE" in 1) db_input low apt-setup/restricted || true ;; 2) db_input low apt-setup/universe || true ;; 3) db_input low apt-setup/multiverse || true ;; 4) db_input low apt-setup/backports || true ;; 5) if (db_get apt-setup/restricted && [ "$RET" = true ]) || \ (db_get apt-setup/multiverse && [ "$RET" = true ]); then db_input low apt-setup/partner || true fi ;; *) break ;; esac if db_go; then STATE=$(($STATE + 1)) else STATE=$(($STATE - 1)) fi done if [ $STATE -eq 0 ]; then exit 10 fi dists="main" alldists="main" db_get apt-setup/restricted if [ "$RET" = true ]; then dists="$dists restricted" alldists="$alldists restricted" else # Remove restricted from any previous cdrom entry if necessary. for file in $ROOT/etc/apt/sources.list.base \ $ROOT/etc/apt/sources.list.new; do if [ -e "$file" ]; then sed -i '/deb cdrom:/s/ restricted//g' "$file" fi done fi db_get mirror/protocol protocol="$RET" db_get mirror/codename codename="$RET" db_get mirror/$protocol/hostname hostname="$RET" db_get mirror/$protocol/directory directory="/${RET#/}" # Awful hack. Source for ports architectures is only available on # archive.ubuntu.com, not ports.ubuntu.com. if [ "$hostname" = ports.ubuntu.com ]; then srchostname=archive.ubuntu.com srcdirectory=/ubuntu else srchostname="$hostname" srcdirectory="$directory" fi if [ "$protocol" = http ]; then db_get mirror/$protocol/proxy proxy="$RET" if [ -n "$proxy" ]; then if ! grep -iq "Acquire::$protocol::Proxy" $ROOT/etc/apt/apt.conf.new; then echo "Acquire::$protocol::Proxy \"$proxy\";" >> $ROOT/etc/apt/apt.conf.new fi fi fi db_get apt-setup/proposed PROPOSED="$RET" cat >> $file <> $file <> $file if db_get apt-setup/universe && [ "$RET" = true ]; then alldists="$alldists universe" COMMENT= else cat >> $file <> $file <> $file <> $file <> $file <> $file if db_get apt-setup/backports && [ "$RET" = true ]; then COMMENT= else cat >> $file <> $file <> $file if db_get apt-setup/partner && [ "$RET" = true ]; then COMMENT= else cat >> $file <> $file <