Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

petitboot doesn't ignore EFI entries #72

Open
jonsger opened this issue May 20, 2020 · 1 comment
Open

petitboot doesn't ignore EFI entries #72

jonsger opened this issue May 20, 2020 · 1 comment
Labels

Comments

@jonsger
Copy link

jonsger commented May 20, 2020

I'm running petitboot with openSUSE Tumbleweed on a Talos Blackbird. Some months ago petitboot didn't find the boot entry anymore. I had to manually add a new one entering the initrd and kernel name.

After some investigation (together with the openSUSE community) I found the following:

openSUSE has /etc/grub.d/95_textmode

#!/bin/sh
cat <<EOF
if [ "\${grub_platform}" = "efi" ]; then
  # On EFI systems we can only have graphics *or* serial, so allow the user
  # to switch between the two
  hiddenentry 'Text mode' --hotkey 't' {
    set textmode=true
    terminal_output console
  }
fi
EOF

It will be included in /boot/grub2/grub.cfg

210 ### BEGIN /etc/grub.d/95_textmode ###
211 if [ "\${grub_platform}" = "efi" ]; then
212  # On EFI systems we can only have graphics *or* serial, so allow the user
213 # to switch between the two
214  hiddenentry 'Text mode' --hotkey 't' {
215    set textmode=true
216    terminal_output console
217  }
218 fi
219 ### END /etc/grub.d/95_textmode ###

This somehow can not be parsed by petitboot and petitboot refuses to boot. Removing the file and running sudo update-bootloader resolves the issue. openSUSE had following /etc/grub.d/95_textmode in place before, which was good as well:

#!/bin/sh
cat <<EOF
if [ -d /sys/firmware/efi ]; then
  echo "
  # On EFI systems we can only have graphics *or* serial, so allow the user
  # to switch between the two
  hiddenentry 'Text mode' --hotkey 't' {
    set textmode=true
    terminal_output console
  }"
fi
EOF

Let me know if you need any further information from me.

@jonsger
Copy link
Author

jonsger commented May 20, 2020

petitboot/pb-discover.log: sda2 contains the Tumbleweed system. Line numbers can be seen above.

[15:19:15] Snapshot successfully created for sda2
[15:19:15] mounting device /dev/sda2 read-only
[15:19:15] trying parsers for sda2
[15:19:15] parse error: 214('{'): syntax error, unexpected '{', expecting elif or else or fi
[15:19:15] Running command:
 exe:  /usr/sbin/pb-plugin
 argv: '/usr/sbin/pb-plugin' 'scan' '/var/petitboot/mnt/dev/sda2'
Scanning device /var/petitboot/mnt/dev/sda2
No plugins found

@oohal oohal added the bug label Jun 5, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants