* support nocolor-option for /etc/grml/fai/grml/grml_cleanup_chroot
+* copy files from $FAI_CONFIGDIR/... instead of using 'cat > $FILE << EOF ...'
+inside the /etc/grml/fai/config/scripts/GRML/-scripts
+
Bugs
----
#!/bin/sh
+set -u
+set -e
+
# make sure we have file-rc available before
# package_config/GRML is being executed:
-if [ -z "$target" ] ; then
- echo "Fatal: $target unset for $0 - can not continue therefore."
- exit 1
-fi
+
+# TODO: test whether adding file-rc to FAI_DEBOOTSTRAP_OPTS= would do the trick too
# work around http://trac.lighttpd.net/trac/ticket/657:
echo "Acquire::http::Pipeline-Depth "0";" >> $target/etc/apt/apt.conf
# install grml keys:
gpg --keyserver subkeys.pgp.net --recv-keys F61E2E7CECDEA787
gpg --export F61E2E7CECDEA787 > $target/etc/apt/grml.key
-chroot $target apt-key add /etc/apt/grml.key
+$ROOTCMD apt-key add /etc/apt/grml.key
# finally install file-rc:
-chroot $target apt-get update
-chroot $target apt-get --download-only --assume-yes install file-rc
-chroot $target /bin/sh -c "dpkg -i --force-all /var/cache/apt/archives/file-rc*.deb"
-chroot $target apt-get -f install file-rc
+$ROOTCMD apt-get update
+$ROOTCMD apt-get --download-only --assume-yes install file-rc
+$ROOTCMD /bin/sh -c "dpkg -i --force-all /var/cache/apt/archives/file-rc*.deb"
+$ROOTCMD apt-get -f install file-rc
# we don't need the invoke-rc.d and update-rc.d diversion
# because otherwise use of file-rc with aptitude fails:
if [ -L "$target"/usr/sbin/invoke-rc.d ] ; then
rm -f "$target"/usr/sbin/invoke-rc.d
- chroot $target dpkg-divert --package fai --rename --remove /usr/sbin/invoke-rc.d
+ $ROOTCMD dpkg-divert --package fai --rename --remove /usr/sbin/invoke-rc.d
fi
if [ -L "$target"/usr/sbin/update-rc.d ] ; then
dpkg --purge sysv-rc
- chroot $target apt-get --assume-yes --reinstall install file-rc
+ $ROOTCMD apt-get --assume-yes --reinstall install file-rc
fi
# debug:
-# chroot $target /bin/bash
+# $ROOTCMD /bin/bash
# vim:ft=sh expandtab ai tw=80 tabstop=4 shiftwidth=3
[ -r /etc/grml/grml-live.conf ] && . /etc/grml/grml-live.conf
[ -n "$HOSTNAME" ] || HOSTNAME=grml
-echo "$HOSTNAME" > "$target"/etc/hostname
+echo "$HOSTNAME" > $target/etc/hostname
set -u
set -e
-cp /etc/grml/fai/live-initramfs/live.conf "$target/etc/live.conf"
+cp /etc/grml/fai/live-initramfs/live.conf $target/etc/live.conf
cp /etc/grml/fai/live-initramfs/grml-script.init-top "$target/usr/share/initramfs-tools/scripts/init-top/grml"
-FILE=$(ls -1 "$target"/boot/vmlinuz-* | sort -r | head -1)
+FILE=$(ls -1 $target/boot/vmlinuz-* | sort -r | head -1)
KERNELVERSION=$(echo "${FILE##$target/boot/vmlinuz-}")
-chroot $target update-initramfs -c -t -k $KERNELVERSION
+$ROOTCMD update-initramfs -c -t -k $KERNELVERSION
set -u
set -e
-if grep -q "small" "$target"/etc/grml_version ; then
- cp "$target"/etc/runlevel.conf.livecd.small "$target"/etc/runlevel.conf
+if grep -q 'small' $target/etc/grml_version ; then
+ cp $target/etc/runlevel.conf.livecd.small $target/etc/runlevel.conf
else
- cp "$target"/etc/runlevel.conf.livecd "$target"/etc/runlevel.conf
+ cp $target/etc/runlevel.conf.livecd $target/etc/runlevel.conf
fi
[ -r /etc/grml/grml-live.conf ] && . /etc/grml/grml-live.conf
[ -n "$USERNAME" ] || USERNAME=grml
-cat > "$target"/etc/sudoers << EOF
+# FIXME: use /etc/grml/fai/... as base
+cat > $target/etc/sudoers << EOF
# sudoers file.
# This file MUST be edited with the "visudo" command as root.
# See the man page for details on how to write a sudoers file.
[ -r /etc/grml/grml-live.conf ] && . /etc/grml/grml-live.conf
[ -n "$USERNAME" ] || USERNAME=grml
-chroot "$target" addgroup --gid 1000 $USERNAME
-chroot "$target" useradd -d /home/$USERNAME -m -s /bin/zsh -g 1000 $USERNAME
+$ROOTCMD addgroup --gid 1000 $USERNAME
+$ROOTCMD useradd -d /home/$USERNAME -m -s /bin/zsh -g 1000 $USERNAME
-sed -i 's/^root::/root:*:/' "$target"/etc/shadow
-sed -i 's/^$USERNAME::/$USERNAME:*:/' "$target"/etc/shadow
+sed -i 's/^root::/root:*:/' $target/etc/shadow
+sed -i 's/^$USERNAME::/$USERNAME:*:/' $target/etc/shadow
-chroot "$target" chsh -s /bin/zsh root
-chroot "$target" chsh -s /bin/zsh $USERNAME
+$ROOTCMD chsh -s /bin/zsh root
+$ROOTCMD chsh -s /bin/zsh $USERNAME
set -u
set -e
-cp "$target"/etc/locale.gen.minimal "$target"/etc/locale.gen
-chroot "$target" locale-gen
+cp $target/etc/locale.gen.minimal $target/etc/locale.gen
+$ROOTCMD locale-gen
[ -r /etc/grml/grml-live.conf ] && . /etc/grml/grml-live.conf
[ -n "$USERNAME" ] || USERNAME=grml
+# FIXME: use /etc/grml/fai/... as base
cat > "$target"/etc/fstab << EOF
# /etc/fstab - static file system information
# <filesystem> <mountpoint> <type> <options> <dump> <pass>
set -u
set -e
-chroot "$target" mv /etc/motd.dpkg-new /var/run/motd
+$ROOTCMD mv /etc/motd.dpkg-new /var/run/motd
set -u
set -e
-rm -f "$target/etc/apt/sources.list"
+rm -f $target/etc/apt/sources.list
-chroot "$target" ln -s /etc/apt/sources.list.grml /etc/apt/sources.list
+$ROOTCMD ln -s /etc/apt/sources.list.grml /etc/apt/sources.list
-cat > "$target"/etc/apt/preferences << EOF
+# FIXME: use /etc/grml/fai/... as base
+cat > $target/etc/apt/preferences << EOF
// main grml-repository:
Package: *
Pin: origin deb.grml.org
[ -r /etc/grml/grml-live.conf ] && . /etc/grml/grml-live.conf
[ -n "$HOSTNAME" ] || HOSTNAME=grml
-cat > "$target"/etc/hosts << EOF
+# FIXME: use /etc/grml/fai/... as base
+cat > $target/etc/hosts << EOF
127.0.0.1 $HOSTNAME localhost
# The following lines are desirable for IPv6 capable hosts
set -u
set -e
-cat >> "$target"/etc/network/interfaces << EOF
+# FIXME: use /etc/grml/fai/... as base
+cat >> $target/etc/network/interfaces << EOF
# The loopback interface
# automatically added when upgrading
auto lo
set -u
set -e
-if [ -r "$target"/usr/bin/vim.basic ] ; then
- chroot "$target" update-alternatives --set editor /usr/bin/vim.basic
+# FIXME: use /etc/grml/fai/... as base
+if [ -r $target/usr/bin/vim.basic ] ; then
+ $ROOTCMD update-alternatives --set editor /usr/bin/vim.basic
fi
set -u
set -e
-cp /etc/grml/fai/grml/grml_cleanup_chroot "$target/root/"
-chroot "$target" /root/grml_cleanup_chroot
-rm "$target/root/grml_cleanup_chroot"
+cp /etc/grml/fai/grml/grml_cleanup_chroot $target/root/
+$ROOTCMD /root/grml_cleanup_chroot
+rm $target/root/grml_cleanup_chroot
set -u
set -e
-touch "$target"/etc/grml_cd
+touch $target/etc/grml_cd
set -u
set -e
-if [ -r "$target"/usr/bin/xterm ] ; then
- chroot "$target" update-alternatives --set x-terminal-emulator /usr/bin/xterm
+if [ -r $target/usr/bin/xterm ] ; then
+ $ROOTCMD update-alternatives --set x-terminal-emulator /usr/bin/xterm
fi
-if [ -r "$target"/etc/X11/cursors/whiteglass.theme ] ; then
- chroot "$target" update-alternatives --set x-cursor-theme /etc/X11/cursors/whiteglass.theme
+if [ -r $target/etc/X11/cursors/whiteglass.theme ] ; then
+ $ROOTCMD update-alternatives --set x-cursor-theme /etc/X11/cursors/whiteglass.theme
fi