From 2f5ae873b0d0cb0a0f94ba03a279db09fdeb5fa6 Mon Sep 17 00:00:00 2001 From: Lyndon Brown Date: Tue, 25 Feb 2020 04:03:05 +0000 Subject: [PATCH] bootloaders: fix ignoring LB_DEBIAN_INSTALLER_GUI in menu creation LB_DEBIAN_INSTALLER_GUI defines whether or not to provide the graphical installer. the installer_debian-installer script pays attention to it and does not download it if not wanted. the actual bootloaders however (both grub2/loopback and syslinux) ignore it, which leaves broken and unwanted menu entries. this fixes that. Gbp-Dch: Short Closes: #952890 --- scripts/build/binary_loopback_cfg | 27 ++++++++++++------- scripts/build/binary_syslinux | 9 +++++++ .../extlinux/{install.cfg => install_gui.cfg} | 0 share/bootloaders/extlinux/install_text.cfg | 5 ++++ .../isolinux/{install.cfg => install_gui.cfg} | 0 share/bootloaders/isolinux/install_text.cfg | 5 ++++ .../pxelinux/{install.cfg => install_gui.cfg} | 0 share/bootloaders/pxelinux/install_text.cfg | 5 ++++ .../syslinux/{install.cfg => install_gui.cfg} | 0 share/bootloaders/syslinux/install_text.cfg | 5 ++++ 10 files changed, 47 insertions(+), 9 deletions(-) rename share/bootloaders/extlinux/{install.cfg => install_gui.cfg} (100%) create mode 100644 share/bootloaders/extlinux/install_text.cfg rename share/bootloaders/isolinux/{install.cfg => install_gui.cfg} (100%) create mode 100644 share/bootloaders/isolinux/install_text.cfg rename share/bootloaders/pxelinux/{install.cfg => install_gui.cfg} (100%) create mode 100644 share/bootloaders/pxelinux/install_text.cfg rename share/bootloaders/syslinux/{install.cfg => install_gui.cfg} (100%) create mode 100644 share/bootloaders/syslinux/install_text.cfg diff --git a/scripts/build/binary_loopback_cfg b/scripts/build/binary_loopback_cfg index a390057b3..d126d9ced 100755 --- a/scripts/build/binary_loopback_cfg +++ b/scripts/build/binary_loopback_cfg @@ -247,16 +247,25 @@ then INITRD_GI="/install/gtk/initrd.gz" APPEND_GI="video=vesa:ywrap,mtrr vga=788 quiet ${LB_BOOTAPPEND_INSTALL}" - Grub_install_entry "Start installer" "installgui" "${KERNEL_GI}" "${INITRD_GI}" "${APPEND_GI}" + if [ "${LB_DEBIAN_INSTALLER_GUI}" = "true" ]; then + Grub_install_entry "Start installer" "installgui" "${KERNEL_GI}" "${INITRD_GI}" "${APPEND_GI}" - Grub_install_entry "Install in graphical mode" "installgui" "${KERNEL_GI}" "${INITRD_GI}" "${APPEND_GI}" - Grub_install_entry "Install in text mode" "install" "${KERNEL_DI}" "${INITRD_DI}" "${APPEND_DI}" - Grub_install_entry "Expert install in graphical mode" "expertgui" "${KERNEL_GI}" "${INITRD_GI}" "priority=low ${APPEND_GI}" - Grub_install_entry "Expert install in text mode" "expert" "${KERNEL_DI}" "${INITRD_DI}" "priority=low ${APPEND_DI}" - Grub_install_entry "Automatic install in graphical mode" "autogui" "${KERNEL_GI}" "${INITRD_GI}" "auto=true priority=critical ${APPEND_GI}" - Grub_install_entry "Automatic install in text mode" "auto" "${KERNEL_DI}" "${INITRD_DI}" "auto=true priority=critical ${APPEND_DI}" - Grub_install_entry "Rescue system in graphical mode" "rescuegui" "${KERNEL_GI}" "${INITRD_GI}" "rescue/enable=true ${APPEND_GI}" - Grub_install_entry "Rescue system in text mode" "rescue" "${KERNEL_DI}" "${INITRD_DI}" "rescue/enable=true ${APPEND_DI}" + Grub_install_entry "Install in graphical mode" "installgui" "${KERNEL_GI}" "${INITRD_GI}" "${APPEND_GI}" + Grub_install_entry "Install in text mode" "install" "${KERNEL_DI}" "${INITRD_DI}" "${APPEND_DI}" + Grub_install_entry "Expert install in graphical mode" "expertgui" "${KERNEL_GI}" "${INITRD_GI}" "priority=low ${APPEND_GI}" + Grub_install_entry "Expert install in text mode" "expert" "${KERNEL_DI}" "${INITRD_DI}" "priority=low ${APPEND_DI}" + Grub_install_entry "Automatic install in graphical mode" "autogui" "${KERNEL_GI}" "${INITRD_GI}" "auto=true priority=critical ${APPEND_GI}" + Grub_install_entry "Automatic install in text mode" "auto" "${KERNEL_DI}" "${INITRD_DI}" "auto=true priority=critical ${APPEND_DI}" + Grub_install_entry "Rescue system in graphical mode" "rescuegui" "${KERNEL_GI}" "${INITRD_GI}" "rescue/enable=true ${APPEND_GI}" + Grub_install_entry "Rescue system in text mode" "rescue" "${KERNEL_DI}" "${INITRD_DI}" "rescue/enable=true ${APPEND_DI}" + else + Grub_install_entry "Start installer" "install" "${KERNEL_DI}" "${INITRD_DI}" "${APPEND_DI}" + + Grub_install_entry "Install in text mode" "install" "${KERNEL_DI}" "${INITRD_DI}" "${APPEND_DI}" + Grub_install_entry "Expert install in text mode" "expert" "${KERNEL_DI}" "${INITRD_DI}" "priority=low ${APPEND_DI}" + Grub_install_entry "Automatic install in text mode" "auto" "${KERNEL_DI}" "${INITRD_DI}" "auto=true priority=critical ${APPEND_DI}" + Grub_install_entry "Rescue system in text mode" "rescue" "${KERNEL_DI}" "${INITRD_DI}" "rescue/enable=true ${APPEND_DI}" + fi fi # Assembling memtest configuration diff --git a/scripts/build/binary_syslinux b/scripts/build/binary_syslinux index 49aa6eb79..e863eb505 100755 --- a/scripts/build/binary_syslinux +++ b/scripts/build/binary_syslinux @@ -150,6 +150,15 @@ case "${LB_BUILD_WITH_CHROOT}" in ;; esac +# Use correct install menu set +if [ "${LB_DEBIAN_INSTALLER_GUI}" = "true" ]; then + rm "${_TARGET}"/install_text.cfg + mv "${_TARGET}"/install_gui.cfg "${_TARGET}"/install.cfg +else + rm "${_TARGET}"/install_gui.cfg + mv "${_TARGET}"/install_text.cfg "${_TARGET}"/install.cfg +fi + # Configuring files if [ -e "${_TARGET}/live.cfg.in" ] then diff --git a/share/bootloaders/extlinux/install.cfg b/share/bootloaders/extlinux/install_gui.cfg similarity index 100% rename from share/bootloaders/extlinux/install.cfg rename to share/bootloaders/extlinux/install_gui.cfg diff --git a/share/bootloaders/extlinux/install_text.cfg b/share/bootloaders/extlinux/install_text.cfg new file mode 100644 index 000000000..83f014753 --- /dev/null +++ b/share/bootloaders/extlinux/install_text.cfg @@ -0,0 +1,5 @@ +label install + menu label ^Install + linux /install/vmlinuz + initrd /install/initrd.gz + append vga=788 @APPEND_INSTALL@ --- quiet diff --git a/share/bootloaders/isolinux/install.cfg b/share/bootloaders/isolinux/install_gui.cfg similarity index 100% rename from share/bootloaders/isolinux/install.cfg rename to share/bootloaders/isolinux/install_gui.cfg diff --git a/share/bootloaders/isolinux/install_text.cfg b/share/bootloaders/isolinux/install_text.cfg new file mode 100644 index 000000000..83f014753 --- /dev/null +++ b/share/bootloaders/isolinux/install_text.cfg @@ -0,0 +1,5 @@ +label install + menu label ^Install + linux /install/vmlinuz + initrd /install/initrd.gz + append vga=788 @APPEND_INSTALL@ --- quiet diff --git a/share/bootloaders/pxelinux/install.cfg b/share/bootloaders/pxelinux/install_gui.cfg similarity index 100% rename from share/bootloaders/pxelinux/install.cfg rename to share/bootloaders/pxelinux/install_gui.cfg diff --git a/share/bootloaders/pxelinux/install_text.cfg b/share/bootloaders/pxelinux/install_text.cfg new file mode 100644 index 000000000..83f014753 --- /dev/null +++ b/share/bootloaders/pxelinux/install_text.cfg @@ -0,0 +1,5 @@ +label install + menu label ^Install + linux /install/vmlinuz + initrd /install/initrd.gz + append vga=788 @APPEND_INSTALL@ --- quiet diff --git a/share/bootloaders/syslinux/install.cfg b/share/bootloaders/syslinux/install_gui.cfg similarity index 100% rename from share/bootloaders/syslinux/install.cfg rename to share/bootloaders/syslinux/install_gui.cfg diff --git a/share/bootloaders/syslinux/install_text.cfg b/share/bootloaders/syslinux/install_text.cfg new file mode 100644 index 000000000..83f014753 --- /dev/null +++ b/share/bootloaders/syslinux/install_text.cfg @@ -0,0 +1,5 @@ +label install + menu label ^Install + linux /install/vmlinuz + initrd /install/initrd.gz + append vga=788 @APPEND_INSTALL@ --- quiet