Update documentation and config file
[grml-debootstrap.git] / chroot-script
old mode 100644 (file)
new mode 100755 (executable)
index 4807303..3cd2196
@@ -4,7 +4,7 @@
 # Authors:       grml-team (grml.org), (c) Michael Prokop <mika@grml.org>
 # Bug-Reports:   see http://grml.org/bugs/
 # License:       This file is licensed under the GPL v2.
-# Latest change: Mon Apr 23 11:51:59 CEST 2007 [mika]
+# Latest change: Sam Apr 28 20:19:58 CEST 2007 [mika]
 ################################################################################
 
 set -e # exit on any error
@@ -45,8 +45,13 @@ stage() {
 
 # define chroot mirror {{{
 chrootmirror() {
-  if [ -n "$CHROOTMIRROR" ] ; then
-     echo "deb $CHROOTMIRROR $RELEASE main contrib non-free" > /etc/apt/sources.list
+  if [ -n "$ISO" ] ; then
+     echo "deb $ISO $RELEASE main contrib" > /etc/apt/sources.list
+     [ -n "$CHROOTMIRROR" ] && echo "deb $CHROOTMIRROR $RELEASE main contrib non-free" >> /etc/apt/sources.list
+  else
+    if [ -n "$CHROOTMIRROR" ] ; then
+       echo "deb $CHROOTMIRROR $RELEASE main contrib non-free" > /etc/apt/sources.list
+    fi
   fi
 }
 # }}}
@@ -70,8 +75,10 @@ EOF
      gpg --export F61E2E7CECDEA787 | apt-key add - || /bin/true # not yet sure
      # why it's necessary, sometimes we get an error even though it works [mika]
 
-     if grep -q grml /etc/apt/preferences 2>/dev/null ; then
-        cat >> /etc/apt/preferences >> EOF
+     # make sure we install packages from grml's pool only if not available
+     # from Debian!
+     if ! grep -q grml /etc/apt/preferences 2>/dev/null ; then
+        cat >> /etc/apt/preferences << EOF
 // debian pool (default):
 Package: *
 Pin: release o=Debian
@@ -82,6 +89,7 @@ Package: *
 Pin: origin deb.grml.org
 Pin-Priority: 991
 EOF
+     fi
   fi
 }
 # }}}
@@ -267,13 +275,20 @@ hosts() {
 
 # set up /etc/network/interfaces {{{
 interfaces() {
-  if ! [ -f /etc/network/interfaces ] ; then
+  touch /etc/network/interfaces
+  # make sure we add the entries only once
+  if ! grep -q eth0 /etc/network/interfaces ; then
      echo "Setting up /etc/network/interfaces"
      cat >> /etc/network/interfaces << EOF
+
+# loopback device:
 iface lo inet loopback
-iface eth0 inet dhcp
 auto lo
-auto eth0
+
+# eth0:
+# iface eth0 inet dhcp
+# auto eth0
+
 EOF
   fi
 }
@@ -388,7 +403,9 @@ grub() {
 # make sure we don't have any running processes left {{{
 services() {
   for service in ssh mdadm mdadm-raid ; do
-      [ -x "/etc/init.d/$service" ] && "/etc/init.d/$service" stop
+    if [ -x /etc/init.d/"$service" ] ; then
+       /etc/init.d/"$service" stop || /bin/true
+    fi
   done
 }
 # }}}