From 43a3f13acfe1ca7e9ca4a40eec31797482a8febb Mon Sep 17 00:00:00 2001 From: Eric Hameleers Date: Wed, 16 Nov 2016 01:23:01 +0100 Subject: (e)liloconfig need patching to make them work properly on Slackware Live. The cause is the use of hard-coded '/mnt' instead of using $T_PX variable. In Slackware's official installer, the computer's hard disk is always mounted at /mnt so that there is no apparent issue. Slackware Live's 'setup2hd' however, needs to mount the hard disk on /setup2hd because /mnt is already used. --- make_slackware_live.sh | 4 +++- patches/eliloconfig.patch | 25 +++++++++++++++++++++++++ patches/liloconfig.patch | 22 ++++++++++++++++++++++ 3 files changed, 50 insertions(+), 1 deletion(-) create mode 100644 patches/eliloconfig.patch create mode 100644 patches/liloconfig.patch diff --git a/make_slackware_live.sh b/make_slackware_live.sh index 929369d..bf934fe 100755 --- a/make_slackware_live.sh +++ b/make_slackware_live.sh @@ -1337,7 +1337,9 @@ if ls ${LIVE_ROOTDIR}/boot/vmlinuz-huge-* 1>/dev/null 2>/dev/null; then rm -r usr sbin cd - 1>/dev/null # Fix some occurrences of '/mnt' that should not be used in the Live ISO: - sed -i -e 's, /mnt, ${T_PX},g' -e 's,T_PX=/mnt,T_PX=/setup2hd,g' ${LIVE_ROOTDIR}/usr/share/${LIVEMAIN}/* + sed -i -e 's, /mnt, ${T_PX},g' -e 's,=/mnt/,=${T_PX}/,g' -e 's,T_PX=/mnt,T_PX=/setup2hd,g' ${LIVE_ROOTDIR}/usr/share/${LIVEMAIN}/* + patch ${LIVE_ROOTDIR}/usr/sbin/liloconfig ${LIVE_TOOLDIR}/patches/liloconfig.patch + patch ${LIVE_ROOTDIR}/usr/sbin/eliloconfig ${LIVE_TOOLDIR}/patches/eliloconfig.patch # Fix some occurrences of '/usr/lib/setup/' are covered by $PATH: sed -i -e 's,/usr/lib/setup/,,g' -e 's,:/usr/lib/setup,:/usr/share/${LIVEMAIN},g' ${LIVE_ROOTDIR}/usr/share/${LIVEMAIN}/* # Add the Slackware Live HD installer: diff --git a/patches/eliloconfig.patch b/patches/eliloconfig.patch new file mode 100644 index 0000000..8b5fb47 --- /dev/null +++ b/patches/eliloconfig.patch @@ -0,0 +1,25 @@ +--- eliloconfig.orig 2016-04-01 20:37:40.000000000 +0200 ++++ eliloconfig 2016-11-12 01:32:24.804762277 +0100 +@@ -75,9 +75,9 @@ + exit + fi + +-# If there's no vfat mounted on /boot/efi or /mnt/boot/efi, forget it: ++# If there's no vfat mounted on /boot/efi or $T_PX/boot/efi, forget it: + if ! mount | grep vfat | grep -wq /boot/efi ; then +- if ! mount | grep vfat | grep -wq /mnt/boot/efi ; then ++ if ! mount | grep vfat | grep -wq $T_PX/boot/efi ; then + if [ "$T_PX" = "/" ]; then + echo "ERROR: No EFI System Partition mounted on /boot/efi." + fi +@@ -90,8 +90,8 @@ + EFI_DEVICE=$(mount | grep vfat | grep -w /boot/efi | cut -b 1-8) + EFI_PARTITION=$(mount | grep vfat | grep -w /boot/efi | cut -f 1 -d ' ' | cut -b 9- | tr -d [a-z]) + else +- EFI_DEVICE=$(mount | grep vfat | grep -w /mnt/boot/efi | cut -b 1-8) +- EFI_PARTITION=$(mount | grep vfat | grep -w /mnt/boot/efi | cut -f 1 -d ' ' | cut -b 9- | tr -d [a-z]) ++ EFI_DEVICE=$(mount | grep vfat | grep -w $T_PX/boot/efi | cut -b 1-8) ++ EFI_PARTITION=$(mount | grep vfat | grep -w $T_PX/boot/efi | cut -f 1 -d ' ' | cut -b 9- | tr -d [a-z]) + fi + + # There better be a kernel: diff --git a/patches/liloconfig.patch b/patches/liloconfig.patch new file mode 100644 index 0000000..6a0e96c --- /dev/null +++ b/patches/liloconfig.patch @@ -0,0 +1,22 @@ +--- liloconfig.orig 2016-07-12 01:21:03.000000000 +0200 ++++ liloconfig 2016-11-12 11:57:41.585974417 +0100 +@@ -767,7 +767,7 @@ + + # If we're installing from the umsdos.gz rootdisk, suggest skipping LILO: + if [ ! "$T_PX" = "/" ]; then +- if mount | grep " on /mnt " | grep umsdos 1> /dev/null 2> /dev/null ; then ++ if mount | grep " on $T_PX " | grep umsdos 1> /dev/null 2> /dev/null ; then + dialog --title "SKIP LILO CONFIGURATION? (RECOMMENDED)" --yesno "Since \ + you are installing to a FAT partition, it's suggested that you do not \ + configure LILO at this time. (Instead, use your bootdisk. For booting \ +@@ -1236,8 +1236,8 @@ + if [ -r $TMP/lilo.conf ]; then + dialog --title "YOUR NEW /etc/lilo.conf" --textbox "$TMP/lilo.conf" 22 70 + else +- if [ -r /mnt/etc/lilo.conf ]; then +- dialog --title "YOUR OLD /etc/lilo.conf" --textbox "/mnt/etc/lilo.conf" 22 70 ++ if [ -r $T_PX/etc/lilo.conf ]; then ++ dialog --title "YOUR OLD /etc/lilo.conf" --textbox "$T_PX/etc/lilo.conf" 22 70 + elif [ "$T_PX" = "/" -a -r /etc/lilo.conf ]; then + dialog --title "YOUR OLD /etc/lilo.conf" --textbox "/etc/lilo.conf" 22 70 + else -- cgit v1.2.3