+# set password of user root {{{
+passwords()
+{
+ echo "Activating shadow passwords."
+ shadowconfig on
+
+ CHPASSWD_OPTION=
+ if chpasswd --help 2>&1 | grep -q -- '-m,' ; then
+ CHPASSWD_OPTION='-m'
+ fi
+
+
+ if [ -n "$ROOTPASSWORD" ] ; then
+ echo root:"$ROOTPASSWORD" | chpasswd $CHPASSWD_OPTION
+ export ROOTPASSWORD=''
+ else
+ a='1'
+ b='2'
+ echo "Setting password for user root:"
+ while [ "$a" != "$b" ] ; do
+ echo -n "Enter new UNIX password for user root: "
+ read -s a
+ echo
+ echo -n "Retype new UNIX password for user root: "
+ read -s b
+ echo
+ if [ "$a" != "$b" ] ; then
+ echo "Sorry, passwords do not match. Retry."
+ a='1'
+ b='2'
+ else
+ echo root:"$a" | chpasswd $CHPASSWD_OPTION
+ unset a
+ unset b
+ fi
+ done
+ fi
+}
+# }}}
+
+# set up /etc/hosts {{{
+hosts() {
+ if [ -f /etc/hosts ] ; then
+ sed -i "s#127.0.0.1 .*#127.0.0.1 localhost $HOSTNAME#" /etc/hosts
+ [ -n "$HOSTNAME" ] && sed -i "s/grml/$HOSTNAME/g" /etc/hosts
+ else
+ cat > /etc/hosts << EOF
+127.0.0.1 localhost $HOSTNAME
+
+#127.0.0.1 localhost
+#127.0.1.1 $HOSTNAME.example.org $HOSTNAME
+
+# The following lines are desirable for IPv6 capable hosts
+#::1 ip6-localhost ip6-loopback $HOSTNAME
+::1 ip6-localhost ip6-loopback
+fe00::0 ip6-localnet
+ff00::0 ip6-mcastprefix
+ff02::1 ip6-allnodes
+ff02::2 ip6-allrouters
+ff02::3 ip6-allhosts
+EOF
+ fi
+}
+# }}}
+
+# set up /etc/network/interfaces {{{
+interfaces() {
+ if ! [ -r /etc/network/interfaces ] || ! grep -q "auto lo" /etc/network/interfaces ; then
+ echo "Setting up /etc/network/interfaces"
+ cat >> /etc/network/interfaces << EOF
+
+# loopback device: