Make missing ZFS config file failures into warnings, bug #438200
[genkernel.git] / gen_bootloader.sh
index ad846cf4fe51b5deefa71d75fd793145af7c0b76..5848bd24220c8aeefe6c0b254a3221afde19dda3 100755 (executable)
@@ -32,7 +32,7 @@ set_bootloader_grub_read_device_map() {
 }
 
 set_bootloader_grub2() {
-    local GRUB_CONF
+       local GRUB_CONF
        for candidate in \
                        "${BOOTDIR}/grub2/grub.cfg" \
                        "${BOOTDIR}/grub/grub.cfg" \
@@ -46,11 +46,12 @@ set_bootloader_grub2() {
        if [[ -z "${GRUB_CONF}" ]]; then
                print_error 1 "Error! Grub2 configuration file does not exist, please ensure grub2 is correctly setup first."
                return 0
-    fi
+       fi
 
-    print_info 1 "You can customize Grub2 parameters in /etc/defaults/grub."
-    print_info 1 "Running grub2-mkconfig to create ${GRUB_CONF}..."
-    grub2-mkconfig -o "${GRUB_CONF}"
+       print_info 1 "You can customize Grub2 parameters in /etc/default/grub."
+       print_info 1 "Running grub2-mkconfig to create ${GRUB_CONF}..."
+       grub2-mkconfig -o "${GRUB_CONF}"
+       [ "${BUILD_RAMDISK}" -ne 0 ] && sed -i 's/ro single/ro debug/' "${GRUB_CONF}"
 }
 
 set_bootloader_grub() {
@@ -88,11 +89,9 @@ set_bootloader_grub() {
                        # Add grub configuration to grub.conf
                        echo "# Genkernel generated entry, see GRUB documentation for details" >> ${GRUB_CONF}
                        echo "title=Gentoo Linux ($KV)" >> ${GRUB_CONF}
-                       if [ "${BUILD_INITRD}" = '0' ]
+                       echo -e "\tkernel /kernel-${KNAME}-${ARCH}-${KV} root=${GRUB_ROOTFS}" >> ${GRUB_CONF}
+                       if [ "${BUILD_INITRD}" = '1' ]
                        then
-                               echo -e "\tkernel /kernel-${KNAME}-${ARCH}-${KV} root=${GRUB_ROOTFS}" >> ${GRUB_CONF}
-                       else
-                               echo -e "\tkernel /kernel-${KNAME}-${ARCH}-${KV} root=/dev/ram0 init=/linuxrc real_root=${GRUB_ROOTFS}" >> ${GRUB_CONF}
                                if [ "${PAT}" -gt '4' ]
                                then
                                    echo -e "\tinitrd /initramfs-${KNAME}-${ARCH}-${KV}" >> ${GRUB_CONF}