I did a standard encrypted install of Cassini_Nova with KDE/Wayland on a laptop.
This laptop has a TB4 port which I use to connect to everything at my desk.
Unfortunately, my external/docked monitor is not detected / used for the initial prompt user for password phase of boot. Only after the LUCKS partition is mounted and the “main” kernel booted does my external display get detected and used.
Is there a dracut module that I should be building into my initrd so that the external display is detected or is there more to it that i’m missing?
The built in display functions fine; it’s how I usually enter the decryption password but when I am already docked / lid closed and I do a reboot I have to re-open the lid and enter the password.
So this had me wondering if all the drivers are present, i’m just missing some configuration directive along the lines of “mirror to all detected displays” versus the “only use built in display” configuration that’s in effect now…
Edit: It’s a very recent intel based laptop so the GPU is also intel. Thankfully no nvidia related headaches!
IIUC this is a HW controlled behavior.
AFAIK, the encryption password prompt is required to read the initrd image, which includes any system modules, or other configuration. Before reading the image, even if you add a module to initrd, it will be read after decryption. I am not sure if this can be included in the .efi executable. Maybe an expert (or Archwiki) could give a better opinion.
I suppose that the Laptop firmware (UEFI/BIOS) might have a setting to disable internal and enable external only, when the lid is closed on boot. If you can achieve that, I am not sure it will be without issues after booting the OS, but you can try. It’s a vendor’s thing, so…
I didn’t have any issue w/ encrypted ZFS on root using ubuntu w/ this dock … but that was also on a thinkpad. I just assumed it was something about how ubuntu was booting up to the password prompt as i could have sworn that external display worked on this system76 laptop when I moved the SSD over from the thinkpad to here but I may be mis-remembering that.
I just double checked and … yep, there’s just one! I was under the impression that there was a slim “just enough to ask for a password and kexec() into the decrypted kernel” that was booted first. Does not appear to be that way for endeavorOS; the kernel/initrd are both on /efi which is not encrypted the way / is.
If you are using systemd-boot, then yes that is the way it works. The decryption is handled by the boot image. In that case, you are probably correct, you need to figure out how to get the appropriate module or driver into the image. That is easy to do, if you can figure out what it is you need to add.
Especially since there’s like 3 different ways to send video over a USB-C cable. I’ll see what happens w/ the i915 driver loaded early and report back in the next day or so when I find a convenient time to reboot.
Built new initrd and ran UpdateInTerminal and then shutdown. Came back to desk and - with the lid closed - plugged in to the dock and hit the power button. Few seconds later, external display had the password prompt.
I was not expecting it to be that simple but I’m grateful that’s all it was.