X-Git-Url: http://git.grml.org/?a=blobdiff_plain;f=backend%2Finitramfs-tools%2Flive.hook;h=1efa687051a1aefe9ac31de6cd039f64f0fce67f;hb=51f4b9d56200bec4e3e8ca8a209cf84f75308b82;hp=f48cb5a831cb9454d0f8442b8f2f3be6ac110b87;hpb=20a36dd1e76d50c02968a50212a59c34efb3e79a;p=live-boot-grml.git diff --git a/backend/initramfs-tools/live.hook b/backend/initramfs-tools/live.hook index f48cb5a..1efa687 100755 --- a/backend/initramfs-tools/live.hook +++ b/backend/initramfs-tools/live.hook @@ -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 @@ -16,6 +16,12 @@ do fi done +# Grml version information: +if [ -r /etc/grml_version ] +then + cp /etc/grml_version "${DESTDIR}"/etc +fi + # Checking live-boot if [ ! -e /bin/live-boot ] then @@ -28,11 +34,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 +59,16 @@ do done # udev dependencies -for FILE in /lib/udev/*_id -do - copy_exec "${FILE}" -done +if [ "${MINIMAL:-}" != "true" ] && [ "${MINIMAL:-}" != "yes" ] +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:-}" != "true" ] && \ + [ "${DISABLE_CDROM:-}" != "yes" ] 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 +113,7 @@ manual_add_modules hfsplus # Filesystem: jffs2 manual_add_modules jffs2 -if [ -x /usr/bin/rsync ] +if [ -x /usr/bin/rsync ] && [ "${MINIMAL:-}" != "true" ] && [ "${MINIMAL:-}" != "yes" ] then copy_exec /usr/bin/rsync /bin fi @@ -105,36 +125,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:-}" != "true" ] && [ "${DISABLE_FAT:-}" != "yes" ] 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:-}" != "true" ] && [ "${DISABLE_NTFS:-}" != "yes" ] +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:-}" != "true" ] && [ "${DISABLE_CDROM:-}" != "yes" ] +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:-}" != "true" ] && [ "${DISABLE_USB:-}" != "yes" ] +then + manual_add_modules sd_mod +fi # Hardware: network auto_add_modules net @@ -145,10 +171,6 @@ then copy_exec /usr/bin/eject /bin fi -# Program: mount -# fuse does not work with klibc mount -copy_exec /bin/mount /bin/mount.util-linux - [ "${QUIET}" ] || echo -n " utils" # Feature: Verify Checksums @@ -169,17 +191,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 +205,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}" != "true" ] && [ "${DISABLE_FUSE:-n}" != "yes" ] 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 +240,28 @@ 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 +# libnss_dns.so.*: DNS +# libnss_files.so.*: /etc/hosts and /etc/passwd +# libnss_compat.so.*: /etc/passwd + +for _SHLIB in $(find /lib /usr/lib -name 'libnss_dns.so.*' -o -name 'libnss_files.so.*') +do + copy_exec "${_SHLIB}" +done - for _SHLIB in $(find /lib -name 'libnss_dns.so.*') - do - copy_exec "${_SHLIB}" - done +if [ ! -e "${DESTDIR}/etc/nsswitch.conf" ] +then + # Needed to make "hostname -f" honor the domainname provided by DHCP + echo "hosts: files dns" > "${DESTDIR}/etc/nsswitch.conf" +fi - # might be needed if /etc/hosts is used - #mkdir -p "${DESTDIR}/etc" - #cp -p /etc/nsswitch.conf "${DESTDIR}/etc" - ;; -esac +# vlan support +if [ -x /sbin/vconfig ] +then + copy_exec /sbin/vconfig + manual_add_modules 8021q +fi [ "${QUIET}" ] || echo .