In the last few days I was doing some experimentation on the librem 11. PureOS is great and all but I personally don’t really like debian and wanted to run arch on the librem 11.
So I flashed a couple USBs (I tried Manjaro, Garuda Linux and EndeavourOS). Pureboot seems to be quite picky though and does not want to boot some of the sticks (namely Manjaro and Garuda) showing me this message:
I did create the USB with either balena etcher and tried dd the iso to the usb as well to no avail.
I then googled around a bit and found out I could try straight Coreboot/SeaBiOS as well. So I did flash the latest version of that.
That one booted all three USBs I made just fine. Though there is a problem for me.
The keyboard are not properly registered by SeaBIOS it seems. With neither the keyboard-cover the librem 11 comes with nor my wireless-keyboard could reliably navigate SeaBios. It would recognize the keyboards for like 2 sec. So I can press ESC on boot But I can’t enter a number to boot from.
If I let it boot the stick oder nvme automatically I can’t use the keyboards to navigate the GRUB-Bootloader at all. Very Inconvinient…
I read on another thread that SeaBIOS is rather restrictive with USB-devices. But I don’t have a wired keyboard at the moment to test with.
So my questions boil down to:
Is there a possibility to allow PureBoot to boot any USB-stick?
Is there anything I need to modify on the isos or the stick to make them bootable on PureBoot?
Is there a fix for the keyboard-problem in seabios?
Generally Pureboot seems nicer for the Librem 11 since I can change settings even when only holding the tablet. I would love to boot any stick though (at my own risk of course)
Otherwise a fix for coreboot would be great so it actually makes at least the detachable keyboard usable.
I did also flash pre-compiled images for the librem 11 both times. I did not try self-compiling them from source yet.
Based on my PureBoot experience on the Librem 14, yes, no, and not sure. If PureBoot is not detecting the USB drive, disconnect it, turn off the Librem 11, reconnect the USB drive and turn on the Librem 11 again. You can also try using Ventoy and see if that makes any difference.
The librem 11 does recognize the sticks I am fairly certain at that. They are shown in the boot options when I click USB-Boot. I can then select a partition to boot from (most of the time 2) selecting either of those would sadly result in what you see in the screenshot above.
reconnecting did not really change something for me sadly. Also I am pretty certain I tried ventoy as well. I think the Live USB would boot. I can install it on the stick.
I would put my isos on it and it would not boot from with the same error.
Though tbh I am not 100% certain and might need to check again. Will do so somewhat later today when I get home.
1 - Let me try booting a recent Arch ISO and see what’s going on. I do try a lot of ISOs (and Heads community members run many OSes) but I haven’t tried Arch in a while. Most likely we can get this to work.
2 - You probably won’t need to make any changes to the ISOs. If there’s something problematic about the ISO that can’t be fixed in PureBoot right away, we can probably manually kexec into it for now to install (after that normal boot should be fine).
3 - Others have already mentioned that SeaBIOS is picky about USB keyboards, they’re right. The keyboard cover not working in SeaBIOS is a known issue currently. The wireless keyboard here is probably similar, I have tried many keyboards that work but there are still many that don’t. I think we are best off pursuing the PureBoot route.
@stefan230 Could you try the Arch 2023.11.01 install ISO?
Both PureBoot and SeaBIOS can boot the latest ISO, but the Arch kernel is unable to initialize the built-in display (and i915 panics on shutdown too).
I haven’t figured out whether this is a Linux upstream bug, specific to Arch, etc., but at any rate the kernel in the 2023.11.01 ISO works. I did not try the 2023.12.01 ISO.
You can always update after installation, but if you update the kernel you might still get that problem. External displays still worked, so if you have an issue you could use that to get back to a working kernel.
First up. Thank you very much for looking into this. I appreciate it.
I did try the normal Arch Iso and used the latest. What you describe basically resembles what I was seeing as well. Booting the arch-iso would spit i915-messages at me even when in the Live mode.
Personally I would think this is an upstream issue since it was somewhat persistant with derivates as well. I guess the never kernel messed something up there.
I can atleast provide the info that Manjaro and Garuda (both derivatives of arch) would boot when older isos are used. Garuda would experience the same issues you mentioned after being updated. Manjaro on the other hand was fine since they still have older stuff in their repos.
I can work around that. I will try some more isos when I come back home shortly.
My primary concern was that as it is. Neither Manjaro nor Garuda would boot at all. Not even coming as far as the panic. It would just show what can be seen in the photo of the first post.
Both sticks would boot fine with seaBIOS/coreboot though.
I will provide you with version numbers of the isos as well later if you want.
I will test around myself as well and come back here again
I had some time to test some different arch-based isos and see if they boot.
I tested some manjaro isos and some Isos of EndeavourOS.
22.1.3-230521 (based on Linux 6.1) date is 21st March 2023
23.1.3-240113 (based on Linux 6.6) date: 13th January 2024
Galileo 11-2023 (November 2023)
Cassini nova 03-2023 R3 (March 2023)
Both of the tested manjaro-isos did not boot and it comes to the error seen in the first post of this topic. Side Note: I did use the newer stick to succesfully install Manjaro on another intel-based (normal) laptop no problem.
Both of the EndeavourOS-Sticks generally booted. The newer of the two (Galileo) would sadly share its fate with arch and only display a black screen with some mangled white lines.
Cassini Nova booted up just fine and I could even get to the desktop and use the liveUSB no problem. Though Installing did not work as well I hoped it should have but I will have to test that tomorrow in more detail. I also remember I had Cassini Nova on that device before this whole ordeal as well.
I will report back tomorrow once I (hopefully finished installing something.
alrighty after some more trying and testing I got something arch installed on the librem 11 again. I did use EndeavourOS here since the manjaro isos sadly would not boot for me. But atleast I have something usable by now again (Though I still need to figure out how get autorotate working on kde-plasma on there)
So my “fix” for now was to use an older Endeavour-Iso which boots and install it in its offline-variant.
After installing and rebooting all worked fine since I basically installed the Live-Enviroment to my Tablet. Updates will be done, but one needs to make sure to install an alternative (older) kernel so one can still boot. I used a 6.1 kernel in the AUR.
So my issue more or less solved and I atleast have a usable system again. I still wonder though why the manjaro-isos do not work really. I would have liked that instead of endeavour but its all arch in the end so I am happy.
Looks like PureBoot isn’t able to parse the grub.cfg in the Manjaro / Garuda live ISOs (they look the same).
It looks like they have some logic to enumerate the kernels on the live ISO and generate menu entries for them. Since PureBoot doesn’t execute the entire grub.cfg but just picks out menu entries, it isn’t able to find these entries, which results in the error in the OP.
It should be possible to manually kexec into the ISO to install, if you are still interested in this I could figure out the kernel and command line and we could try it. If the installed grub.cfg is simpler (likely I think but have not checked), they’ll work after installing.
Thanks for linking to that related i915 issue, I’ll test the Librem 11 issue and report upstream if it’s an upstream bug.
Thanks for checking in @stefan230 - this is still in my queue but I expect to circle back to these shortly. The release testing for PureBoot 29 has been taking a lot of time since there are a lot of changes in this release, but I have not forgotten
I appreciate the heads-up. I this did not come off as naggy or something. I am just interested in this since it might open up more avenues for the Librem 11. Pureboot 29 does seem to have some options to look forward. Good luck with getting all that stuff done ^^
Ignore the message about “shutdown: no such file or directory”
Run kexec -e
I installed Manjaro and it booted fine, so this is only needed for the initial install. You will have to partition manually and create an unencrypted /boot partition, since PureBoot requires it. I didn’t test an installation of Garuda but it’s very similar, I expect it’ll be the same.
Thanks for your patience while this was queued up!