Add configuration variables to build a stripped down initrd
[live-boot-grml.git] / backend / initramfs-tools / live.hook
index f48cb5a..8be2335 100755 (executable)
@@ -8,7 +8,7 @@ set -e
 
 # Reading configuration file from filesystem and live-media
 for _FILE in /etc/live/boot.conf /etc/live/boot/* \
-            /lib/live/mount/media/live/boot.conf /lib/live/mount/media/live/boot/*
+            /run/live/medium/live/boot.conf /run/live/medium/live/boot/*
 do
        if [ -e "${_FILE}" ]
        then
@@ -28,11 +28,21 @@ fi
 [ "${QUIET}" ] || echo -n " core"
 
 mkdir -p "${DESTDIR}/bin"
-cp -a /bin/live-boot /lib/live/boot "${DESTDIR}/bin"
+cp -a /bin/live-boot "${DESTDIR}/bin"
 
 mkdir -p "${DESTDIR}/lib/live"
 cp -a /lib/live/boot "${DESTDIR}/lib/live"
 
+mkdir -p "${DESTDIR}/etc/live"
+if [ -e /etc/live/boot.conf ]
+then
+       cp -a /etc/live/boot.conf "${DESTDIR}/etc/live"
+fi
+if [ -e /etc/live/boot ]
+then
+       cp -a /etc/live/boot "${DESTDIR}/etc/live"
+fi
+
 # klibc dependencies
 for FILE in /lib/libacl* /lib/libblkid* /lib/libuuid* /lib/libdevmapper* /lib/libattr*
 do
@@ -43,12 +53,15 @@ do
 done
 
 # udev dependencies
-for FILE in /lib/udev/*_id
-do
-       copy_exec "${FILE}"
-done
+if [ "${MINIMAL:-}" != "y" ]
+then
+       for FILE in /lib/udev/*_id
+       do
+               copy_exec "${FILE}"
+       done
+fi
 
-if [ -e /lib/udev/rules.d/60-cdrom_id.rules ]
+if [ -e /lib/udev/rules.d/60-cdrom_id.rules ] && [ "${DISABLE_CDROM:-}" != "y" ]
 then
        mkdir -p "${DESTDIR}/lib/udev/rules.d"
        cp -p /lib/udev/rules.d/60-cdrom_id.rules "${DESTDIR}/lib/udev/rules.d"
@@ -93,7 +106,7 @@ manual_add_modules hfsplus
 # Filesystem: jffs2
 manual_add_modules jffs2
 
-if [ -x /usr/bin/rsync ]
+if [ -x /usr/bin/rsync ] && [ "${MINIMAL:-}" != "y" ]
 then
        copy_exec /usr/bin/rsync /bin
 fi
@@ -105,36 +118,42 @@ manual_add_modules squashfs
 manual_add_modules sqlzma
 manual_add_modules unlzma
 
-# Filesystem: aufs/overlayfs/unionfs
+# Filesystem: aufs/overlay
 manual_add_modules aufs
 manual_add_modules overlay
-manual_add_modules unionfs
 
-# Filesystem: unionfs-fuse
-if [ -x /usr/bin/unionfs-fuse ]
+# Filesystem: vfat
+if [ "${DISABLE_FAT:-}" != "y" ]
 then
-       copy_exec /usr/bin/unionfs-fuse /bin
+       manual_add_modules nls_cp437
+       manual_add_modules nls_iso8859-1
+       manual_add_modules nls_utf8
+       manual_add_modules nls_ascii
+       manual_add_modules vfat
 fi
 
-# Filesystem: vfat
-manual_add_modules nls_cp437
-manual_add_modules nls_iso8859-1
-manual_add_modules nls_utf8
-manual_add_modules vfat
-
 # Filesystem: ntfs
-manual_add_modules ntfs
+if [ "${DISABLE_NTFS:-}" != "y" ]
+then
+       manual_add_modules ntfs
+fi
 
 [ "${QUIET}" ] || echo -n " devices"
 # Hardware: cdrom
-manual_add_modules ide-cd
-manual_add_modules ide-generic
-manual_add_modules ohci1394
-manual_add_modules sbp2
-manual_add_modules sr_mod
+if [ "${DISABLE_CDROM:-}" != "y" ]
+then
+       manual_add_modules ide-cd
+       manual_add_modules ide-generic
+       manual_add_modules ohci1394
+       manual_add_modules sbp2
+       manual_add_modules sr_mod
+fi
 
 # Hardware: usb
-manual_add_modules sd_mod
+if [ "${DISABLE_USB:-}" != "y" ]
+then
+       manual_add_modules sd_mod
+fi
 
 # Hardware: network
 auto_add_modules net
@@ -169,17 +188,10 @@ then
 fi
 
 # Program: udev
-if [ -x /sbin/udevadm ]
+if [ -x /bin/udevadm ]
 then
        [ "${QUIET}" ] || echo -n " udev"
-       copy_exec /sbin/udevadm
-fi
-
-# Program: wget
-if [ -x /usr/bin/wget ]
-then
-       [ "${QUIET}" ] || echo -n " wget"
-       copy_exec /usr/bin/wget /bin
+       copy_exec /bin/udevadm
 fi
 
 # Program: blockdev
@@ -190,24 +202,27 @@ then
 fi
 
 # FUSE kernel module
-manual_add_modules fuse
-
-# FUSE filesystem: httpfs2
-if [ -x /usr/bin/httpfs2_ssl ]
-then
-       [ "${QUIET}" ] || echo -n " httpfs:ssl"
-       copy_exec /usr/bin/httpfs2_ssl /bin/httpfs
-elif [ -x /usr/bin/httpfs2 ]
+if [ "${DISABLE_FUSE:-n}" != "y" ]
 then
-       [ "${QUIET}" ] || echo -n " httpfs"
-       copy_exec /usr/bin/httpfs2 /bin/httpfs
-fi
+       manual_add_modules fuse
 
-# FUSE filesystem: curlftpfs
-if [ -x /usr/bin/curlftpfs ]
-then
-       [ "${QUIET}" ] || echo -n " ftpfs"
-       copy_exec /usr/bin/curlftpfs /bin
+       # FUSE filesystem: httpfs2
+       if [ -x /usr/bin/httpfs2_ssl ]
+       then
+               [ "${QUIET}" ] || echo -n " httpfs:ssl"
+               copy_exec /usr/bin/httpfs2_ssl /bin/httpfs
+       elif [ -x /usr/bin/httpfs2 ]
+       then
+               [ "${QUIET}" ] || echo -n " httpfs"
+               copy_exec /usr/bin/httpfs2 /bin/httpfs
+       fi
+
+       # FUSE filesystem: curlftpfs
+       if [ -x /usr/bin/curlftpfs ]
+       then
+               [ "${QUIET}" ] || echo -n " ftpfs"
+               copy_exec /usr/bin/curlftpfs /bin
+       fi
 fi
 
 # iSCSI
@@ -222,23 +237,19 @@ fi
 
 # Some experimental stuff
 
-case "${LIVE_DNS}" in
-       true)
-               [ "${QUIET}" ] || echo -n " dns"
+[ "${QUIET}" ] || echo -n " dns"
 
-               # /lib/libnss_dns.so.*:a   DNS
-               # /lib/libnss_files.so.*:  /etc/hosts and /etc/passwd
-               # /lib/libnss_compat.so.*: /etc/passwd
+# /lib/libnss_dns.so.*:a   DNS
+# /lib/libnss_files.so.*:  /etc/hosts and /etc/passwd
+# /lib/libnss_compat.so.*: /etc/passwd
 
-               for _SHLIB in $(find /lib -name 'libnss_dns.so.*')
-               do
-                       copy_exec "${_SHLIB}"
-               done
+for _SHLIB in $(find /lib -name 'libnss_dns.so.*')
+do
+       copy_exec "${_SHLIB}"
+done
 
-               # might be needed if /etc/hosts is used
-               #mkdir -p "${DESTDIR}/etc"
-               #cp -p /etc/nsswitch.conf "${DESTDIR}/etc"
-               ;;
-esac
+# might be needed if /etc/hosts is used
+#mkdir -p "${DESTDIR}/etc"
+#cp -p /etc/nsswitch.conf "${DESTDIR}/etc"
 
 [ "${QUIET}" ] || echo .