1. Copy "resolv.conf" before running apt-get update / yum update.
Without this DNS is probably not available/working.
2. Copy /etc/sudoers from the host, if we're installing sudo.
95 lines
1.6 KiB
Bash
Executable File
95 lines
1.6 KiB
Bash
Executable File
#!/bin/sh
|
|
#
|
|
# This script sets up the /etc/apt/sources.list for APT.
|
|
#
|
|
# Steve
|
|
# --
|
|
# http://www.steve.org.uk/
|
|
|
|
|
|
prefix=$1
|
|
|
|
|
|
#
|
|
# Source our common functions
|
|
#
|
|
if [ -e /usr/lib/xen-tools/common.sh ]; then
|
|
. /usr/lib/xen-tools/common.sh
|
|
else
|
|
. ./hooks/common.sh
|
|
fi
|
|
|
|
|
|
#
|
|
# Log our start
|
|
#
|
|
logMessage Script $0 starting
|
|
|
|
|
|
#
|
|
# You'll probably need DNS to run "apt-get update".
|
|
#
|
|
cp /etc/resolv.conf ${prefix}/etc
|
|
|
|
|
|
#
|
|
# Attempt to auto-magically detect the use of a Proxy for apt-get, and
|
|
# replicate that setup in our new guest.
|
|
#
|
|
#
|
|
# Process any of the present apt-conf setup lines.
|
|
#
|
|
for i in /etc/apt/apt.conf /etc/apt/apt.conf.d/* ; do
|
|
|
|
#
|
|
# If the file exists. (Need this in case the literal glob fails.)
|
|
#
|
|
if [ -e $i ] ; then
|
|
|
|
#
|
|
# Save the matching line(s) to the proxy guess file.
|
|
#
|
|
logMessage The use of a proxy detected.
|
|
grep -i HTTP::Proxy $i >> ${prefix}/etc/apt/apt.conf.d/proxy-guess
|
|
fi
|
|
done
|
|
|
|
|
|
|
|
#
|
|
# Setup the sources.list file for new installations of Debian GNU/Linux.
|
|
#
|
|
cat <<E_O_APT > ${prefix}/etc/apt/sources.list
|
|
#
|
|
# /etc/apt/sources.list
|
|
#
|
|
|
|
|
|
#
|
|
# ${dist}
|
|
#
|
|
deb ${mirror} ${dist} main contrib non-free
|
|
deb-src ${mirror} ${dist} main contrib non-free
|
|
|
|
#
|
|
# Security updates
|
|
#
|
|
deb http://security.debian.org/ stable/updates main contrib non-free
|
|
deb-src http://security.debian.org/ stable/updates main contrib non-free
|
|
|
|
|
|
E_O_APT
|
|
|
|
|
|
|
|
#
|
|
# Now that the sources have been setup make sure the system is up to date.
|
|
#
|
|
chroot ${prefix} /usr/bin/apt-get update
|
|
|
|
|
|
#
|
|
# Log our finish
|
|
#
|
|
logMessage Script $0 finished
|