Patches attached; three commits, one to correct each issue identified,
in the given order.

I have tested these + my 775128 patch (v2 - not yet uploaded as of this
moment), and they correctly amend the menu creation. I haven't actually
tested running an image or an installer included in one, but I expect it
to work perfectly - the menus created look good!
commit 67a5f6647393c2ac1493463d05252d63d442b187
Author: jnqnfe <jnq...@gmail.com>
Date:   Sun Jan 11 21:14:49 2015 +0000

    Fix insertion order of user supplied kernel parameters in grub/grub2 menu 
creation (#775143)
    
    To match syslinux, and because I believe that placing them before the 
'quiet' (d-i?) parameter is the correct place.

diff --git a/scripts/build/binary_grub b/scripts/build/binary_grub
index c311c12..2836d8f 100755
--- a/scripts/build/binary_grub
+++ b/scripts/build/binary_grub
@@ -85,19 +85,19 @@ Grub_install_entry ()
        do
                case "${TYPE}" in
                        Install)
-                               TAPPEND="${APPEND} ${QAPPEND}"
+                               TAPPEND="${APPEND} LB_BOOTAPPEND_INSTALL 
${QAPPEND}"
                                ;;
 
                        Expert)
-                               TAPPEND="priority=low ${APPEND}"
+                               TAPPEND="priority=low ${APPEND} 
LB_BOOTAPPEND_INSTALL"
                                ;;
 
                        Rescue)
-                               TAPPEND="rescue/enable=true ${APPEND} 
${QAPPEND}"
+                               TAPPEND="rescue/enable=true ${APPEND} 
LB_BOOTAPPEND_INSTALL ${QAPPEND}"
                                ;;
 
                        Auto)
-                               TAPPEND="auto=true priority=critical ${APPEND} 
${QAPPEND}"
+                               TAPPEND="auto=true priority=critical ${APPEND} 
LB_BOOTAPPEND_INSTALL ${QAPPEND}"
                                ;;
                esac
 
@@ -112,7 +112,7 @@ Grub_install_entry ()
 
 
                LINUX_INSTALL="${LINUX_INSTALL}\ntitle\t\t${LABEL} ${TYPE}"
-               LINUX_INSTALL="${LINUX_INSTALL}\nkernel\t\t/${KERNEL} 
${TAPPEND} ${LB_BOOTAPPEND_INSTALL}"
+               LINUX_INSTALL="${LINUX_INSTALL}\nkernel\t\t/${KERNEL} 
${TAPPEND}"
                LINUX_INSTALL="${LINUX_INSTALL}\ninitrd\t\t/${INITRD}"
        done
 }
diff --git a/scripts/build/binary_grub2 b/scripts/build/binary_grub2
index bf5f8ce..d65e7f9 100755
--- a/scripts/build/binary_grub2
+++ b/scripts/build/binary_grub2
@@ -80,13 +80,15 @@ Grub_install_entry ()
        INITRD="${3}"
        APPEND="${4}"
 
+       APPEND="${APPEND} LB_BOOTAPPEND_INSTALL"
+
        if [ "${LABEL}" != "rescue" ] && [ "${LABEL}" != "rescuegui" ]
        then
                APPEND="${APPEND} quiet"
        fi
 
        LINUX_INSTALL="${LINUX_INSTALL}\nmenuentry \"Debian GNU/Linux - 
${LABEL}\" {"
-       LINUX_INSTALL="${LINUX_INSTALL}\nlinux\t\t/${KERNEL} ${APPEND} 
LB_BOOTAPPEND_INSTALL"
+       LINUX_INSTALL="${LINUX_INSTALL}\nlinux\t\t/${KERNEL} ${APPEND}"
        LINUX_INSTALL="${LINUX_INSTALL}\ninitrd\t\t/${INITRD}"
        LINUX_INSTALL="${LINUX_INSTALL}\n}"
 }
commit 9f4094cdd10e45f9db912267873f8c005aad532c
Author: jnqnfe <jnq...@gmail.com>
Date:   Sun Jan 11 21:20:14 2015 +0000

    Fix quiet kernel parameter being excluded from rescue menu entries instead 
of expert menu entries (#775143)
    
    Live-build, when building grub2 menu entries, excludes this from rescue 
menu entries instead of expert.
    
    This is the opposite to what is done in the following:
     - Menu entries seen in official debian 7.7 disc images (grub2 and syslinux 
configs)
     - Menu entries live-build creates for grub (legacy)
     - Menu entries live-build creates for syslinux
    
    The evidence strongly suggests live-build grub2 menu creation was in the 
wrong!

diff --git a/scripts/build/binary_grub2 b/scripts/build/binary_grub2
index d65e7f9..c2f6862 100755
--- a/scripts/build/binary_grub2
+++ b/scripts/build/binary_grub2
@@ -82,7 +82,7 @@ Grub_install_entry ()
 
        APPEND="${APPEND} LB_BOOTAPPEND_INSTALL"
 
-       if [ "${LABEL}" != "rescue" ] && [ "${LABEL}" != "rescuegui" ]
+       if [ "${LABEL}" != "expert" ] && [ "${LABEL}" != "expertgui" ]
        then
                APPEND="${APPEND} quiet"
        fi
commit 5e7713ebe2fee20768c9e3c59aee9945cf567d2c
Author: jnqnfe <jnq...@gmail.com>
Date:   Sun Jan 11 21:25:18 2015 +0000

    Fix missing delimiter in grub menu kernel parameter lists (Closes: #775143)
    
    The '--' delimiter should appear before the final 'quiet' parameter (which 
is used by the debian installer I believe).
    
    This delimiter is added by live-build in syslinux configs, and is present 
in both grub2 and syslinux configs in an official debian 7.7 disc image, 
suggesting strongly that live-build grub/grub2 menu creation code is in the 
wrong here by missing it.

diff --git a/scripts/build/binary_grub b/scripts/build/binary_grub
index 2836d8f..cb1fb0f 100755
--- a/scripts/build/binary_grub
+++ b/scripts/build/binary_grub
@@ -79,7 +79,7 @@ Grub_install_entry ()
        INITRD="${3}"
        APPEND="${4}"
 
-       QAPPEND="quiet"
+       QAPPEND="-- quiet"
 
        for TYPE in Install Expert Rescue Auto
        do
diff --git a/scripts/build/binary_grub2 b/scripts/build/binary_grub2
index c2f6862..eda56f2 100755
--- a/scripts/build/binary_grub2
+++ b/scripts/build/binary_grub2
@@ -84,7 +84,7 @@ Grub_install_entry ()
 
        if [ "${LABEL}" != "expert" ] && [ "${LABEL}" != "expertgui" ]
        then
-               APPEND="${APPEND} quiet"
+               APPEND="${APPEND} -- quiet"
        fi
 
        LINUX_INSTALL="${LINUX_INSTALL}\nmenuentry \"Debian GNU/Linux - 
${LABEL}\" {"

Reply via email to