How to boot Debian installer from PureBoot?

I have a Librem 13 v3 with PureBoot, and trying to boot the Debian 10 installer from a USB disk.

If I select the USB disk through the PureBoot menus, it detects the GRUB configuration and shows me the various installation options. And from what I can tell, it actually boots the kernel, but the display is unreadable.

Specifically, at the very top of the screen I see a band of colorful pixels, some of which change when I press the arrow keys. So it appears that PureBoot has configured the framebuffer in some particular mode, and the Debian installer kernel is trying to reuse the same framebuffer but expects it to be a different resolution or depth or something.

This happens both for the ā€œtext modeā€ and ā€œgraphicalā€ Debian installers (which use the same kernel image but different initramfses.)

Any ideas? Has anybody else encountered this?

Is there any way to get PureBoot to launch GRUB from the USB disk (rather than trying to load Linux itself)? Is there a kernel command-line option that I could pass (using kexec from the PureBoot emergency shell) to tell Linux to use the same framebuffer mode that PureBoot uses, or else to reinitialize the framebuffer in some other compatible mode? (I donā€™t care if itā€™s 640x480, I just need it to be readable!)

1 Like

Here you say:

If I select the USB disk through the PureBoot menus, it detects the GRUB configuration and shows me the various installation options.

And here you ask:

Is there any way to get PureBoot to launch GRUB from the USB disk (rather than trying to load Linux itself)?

Iā€™m not sure what it is youā€™re after.

What version of PureBoot? Is it the latest?

Can you boot any other live/installer distro on that laptop? PureOS? Ubuntu?

Is any distro already installed? working?

Mmm. So, to clarify: PureBoot doesnā€™t use GRUB itself (as far as Iā€™m aware). PureBoot is capable of reading GRUBā€™s configuration file (grub.cfg) to determine the essential pieces of information (the filename of the kernel, filename of the initramfs, and the kernel command line) and then uses ā€˜kexecā€™ to boot the kernel.

I was curious if there was a way to get PureBoot to actually run GRUB itself, because (I hope) GRUB might know the correct way to initialize the display and hand it off to Linux.

PureBoot-beta-11 which appears to be the latest.

Yeah, Iā€™ve been able to boot the Debian live DVD, Iā€™ve been able to install and run Qubes as well.

But I never see any console log messages on the screen (as I would expect to see on a ā€œnormalā€ PC.) After it displays ā€œkexec_core: Starting new kernelā€, the screen stays frozen until the GUI comes up.

This seems like a clear bug somewhere in the stack (coreboot/heads/kexec/linux/i915), but I was wondering if anybody here knew a quick workaround.

1 Like

Can you install from that?

(I am more familiar with Ubuntu, where the ā€œliveā€ is the ā€œinstallerā€. You boot live and if you are just running ā€œliveā€, there is an option on the desktop to go ahead and ā€œinstallā€.)

Iā€™m hitting this issue as well. But I want to install Debian Bullseye, which doesnā€™t seem to have a live image, so Iā€™m kind of stuck :confused:

Librem mini, Pureboot 4.12

1 Like

please please please, list the full/exact filename of the ISO you are using when asking for help. I canā€™t troubleshoot or attempt to reproduce with just ā€˜Debian 10 ISOā€™ given there are at least a dozen different ones.

I know that the netinst ISO fails to boot on PureBoot b11, but the live ISO works last I tested.

Iā€™ve tried with https://cdimage.debian.org/cdimage/bullseye_di_alpha2/amd64/iso-cd/debian-bullseye-DI-alpha2-amd64-netinst.iso and https://cdimage.debian.org/cdimage/bullseye_di_alpha2/amd64/iso-cd/debian-bullseye-DI-alpha2-amd64-xfce-CD-1.iso

I get the weird pixels floppus mentioned.

With https://cdimage.debian.org/debian-cd/current-live/amd64/iso-hybrid/debian-live-10.4.0-amd64-standard.iso I can boot into a terminal, but canā€™t boot into the installer.

Here are the options I get when using the netinst image. It doesnā€™t seem to matter much which one I pick.

1 Like

Hereā€™s what the screen looks like when I pick the first Install option

For reference, hereā€™s what the screen looks like when booting PureOS normally, before it brings up the PureOS boot screen.

Sorry for not coming back to this earlier. Yes, the live DVD includes an installer (somewhat more limited than the standard installer) and thatā€™s what I ended up doing since I needed something quick for testing.

Well, you could install Buster from the live image, and upgrade from that.

Quite right, sorry for not being more precise! I believe the image I was trying to boot was ā€œdebian-10.3.0-amd64-DVD-1.isoā€.

Sounds like youā€™re able to reproduce the issue, then. :stuck_out_tongue: Iā€™d be very surprised if there were any differences between the ā€œnetinstā€ / ā€œCDā€ / ā€œDVDā€ images for the same release.

but there are :slight_smile:

According to Wiki: ā€œCalamares is used by Manjaro, Netrunner, KaOS, KDE neon, Lubuntu, Sabayon Linux, Chakra, EndeavourOS, the Live medium of Debian, and several less known Linux distributions.ā€ Is it here about issue with Calamares vs DebianInstaller? Meaning DebianInstaller cannot execute anything usable on/with i915 Librem laptop graphics to start with, just guessing.

Yep. Two entirely separate things - the live system installer (which I guess is Calamares?) is a program that runs under an X11 session, whereas the normal Debian installer runs on the Linux console. (There is a ā€œtextā€ mode and a ā€œgraphicalā€ mode and I donā€™t know exactly how the latter works, whether itā€™s using X11 under the hood or something else, but either way, neither mode seemed to work from PureBoot.)

Alright, I downloaded the live debian 10.4 gnome dvd and installed from that. I chose the ā€œreplace existing OSā€ option, which seems to set up one partition for / and one partition for swap. I answered Yes when asked if it should be encrypted.
Wasnā€™t sure if I should have installed the bootloader to the MBR or to /. I chose /. The installer exited with an error when trying to install the bootloader.
Now when trying to boot I get this

And thatā€™s all I get. I canā€™t seem to find a way around that to boot from USB again.
I should probably have partitioned the disk manually to have the /boot partition separate and unencrypted. Iā€™d try to reinstall, but like I wrote, canā€™t seem to find an option to boot from USBā€¦

Let us say we are moving forward, at this point of time, by accepting the fact that PureBoot needs /boot partition defined within /dev/nvme0nXp1. Only thing Iā€™m aware now is that you need help from someone that is familiar with PureBoot and perhaps write here short, yet additional (unofficial?) manual if DebianInstaller (perhaps under advanced modes) can be used on Librem laptop.

Yes, Iā€™m quite sure that ā€œreplace existing OSā€ option was sort of fatal one to choose. I recommend again not to forget to use fdisk -l before starting to replace (partition) anything on your main, currently workable main OS SSD.

Looks like good choice, but we donā€™t know if this is the only correct option. In addition, my proposal would be to stick with the following partition setup (as you need to avoid automated partitioning process anyway):

/dev/nvme0nXp1 /boot 256M, max. 512M,
/dev/nvme0nXp2 /swap same or double of your RAM size,
/dev/nvme0nXp3 / 32G, max. 64G,
/dev/nvme0nXp4 /home.

I guess as first step you need to revert to PureOS and from there plan well how to proceed with Debian-amd64-DVD-1.iso, to use DebianInstaller again and write here this unofficial approach if you succeed to install Debian 10 by means of accepting PureBoot rules (without potential bug as @floppus refered to) before using Debian DVD installer at all. You need help now and I hope this will happen soon (luck of time might be issue here, please be patient).

Thanks!

Iā€™d like to go with something like this

$ lsblk
NAME                 MAJ:MIN RM   SIZE RO TYPE  MOUNTPOINT
nvme0n1              259:0    0 465.8G  0 disk
ā”œā”€nvme0n1p1          259:1    0   243M  0 part  /boot
ā”œā”€nvme0n1p2          259:2    0     1K  0 part
ā””ā”€nvme0n1p5          259:3    0 465.5G  0 part
  ā””ā”€nvme0n1p5_crypt  253:0    0 465.5G  0 crypt
    ā”œā”€esk--vg-root   253:1    0 449.6G  0 lvm   /
    ā””ā”€esk--vg-swap_1 253:2    0  15.9G  0 lvm   [SWAP]
1 Like

When I drop into busybox recovery shell I can see that my USB stick is connected when running dmesg or lsusb. It doesnā€™t show up in /dev/ though. And lsblk isnā€™t available.

If I answer Yes in the dialog if I want to configure the /boot device now I get

No matter what I pick I get

And then I get the original dialog back. If I chose No I get the recovery shell.

Is there some key combination I can press while booting up to get into the normal menu where I can select USB boot? Or are there any commands I can type in the recovery shell to boot from the USB stick?

As long as you can boot it again from USB install media you are fine to proceed! Iā€™m not sure if I have time now to help you with manual partitioning of your SSD, by using Calamares. Do you need additional help with partitioning at all? And sorry, I donā€™t posses Librem laptop so donā€™t count on me on everything.

As long as you can boot it again from USB install media you are fine to proceed!

Thatā€™s exactly the problem Iā€™m having, I canā€™t boot from the USB stick any more. I just get that red dialog. If I could boot from the USB stick I used to install debian in the first place I would have done so. :slight_smile: