Merge pull request #354 from fbelavenuto/351-the-installer-will-overwrite-dsm-loader-when-direct-boot-is-true

Fixing directboot DoM EFI variables
This commit is contained in:
Fabio Belavenuto 2022-11-28 09:01:36 -03:00 committed by GitHub
commit 048345a3c5

View File

@ -102,10 +102,10 @@ fi
# Prepare command line # Prepare command line
CMDLINE_LINE="" CMDLINE_LINE=""
CMDLINE_DIRECT=""
grep -q "force_junior" /proc/cmdline && CMDLINE_LINE+="force_junior " grep -q "force_junior" /proc/cmdline && CMDLINE_LINE+="force_junior "
[ ${EFI} -eq 1 ] && CMDLINE_LINE+="withefi " [ ${EFI} -eq 1 ] && CMDLINE_LINE+="withefi "
[ "${BUS}" = "ata" ] && CMDLINE_LINE+="synoboot_satadom=${DOM} dom_szmax=${SIZE} " [ "${BUS}" = "ata" ] && CMDLINE_LINE+="synoboot_satadom=${DOM} dom_szmax=${SIZE} "
CMDLINE_DIRECT="${CMDLINE_LINE}"
CMDLINE_LINE+="console=ttyS0,115200n8 earlyprintk log_buf_len=32M earlycon=uart8250,io,0x3f8,115200n8 elevator=elevator root=/dev/md0 loglevel=15" CMDLINE_LINE+="console=ttyS0,115200n8 earlyprintk log_buf_len=32M earlycon=uart8250,io,0x3f8,115200n8 elevator=elevator root=/dev/md0 loglevel=15"
for KEY in ${!CMDLINE[@]}; do for KEY in ${!CMDLINE[@]}; do
VALUE="${CMDLINE[${KEY}]}" VALUE="${CMDLINE[${KEY}]}"
@ -117,7 +117,6 @@ done
# Escape special chars # Escape special chars
CMDLINE_LINE=`echo ${CMDLINE_LINE} | sed 's/>/\\\\>/g'` CMDLINE_LINE=`echo ${CMDLINE_LINE} | sed 's/>/\\\\>/g'`
CMDLINE_DIRECT=`echo ${CMDLINE_DIRECT} | sed 's/>/\\\\>/g'` CMDLINE_DIRECT=`echo ${CMDLINE_DIRECT} | sed 's/>/\\\\>/g'`
grub-editenv ${GRUB_PATH}/grubenv set dsm_cmdline="${CMDLINE_DIRECT}"
echo -e "Cmdline:\n\033[1;36m${CMDLINE_LINE}\033[0m" echo -e "Cmdline:\n\033[1;36m${CMDLINE_LINE}\033[0m"
# Wait for an IP # Wait for an IP
@ -139,6 +138,7 @@ done
DIRECT="`readConfigKey "directboot" "${USER_CONFIG_FILE}"`" DIRECT="`readConfigKey "directboot" "${USER_CONFIG_FILE}"`"
if [ "${DIRECT}" = "true" ]; then if [ "${DIRECT}" = "true" ]; then
grub-editenv ${GRUB_PATH}/grubenv set dsm_cmdline="${CMDLINE_DIRECT}"
echo -e "\033[1;33mReboot to boot directly in DSM\033[0m" echo -e "\033[1;33mReboot to boot directly in DSM\033[0m"
grub-editenv ${GRUB_PATH}/grubenv set next_entry="direct" grub-editenv ${GRUB_PATH}/grubenv set next_entry="direct"
reboot reboot