#trouble switching to surface Linux kernel
47 messages · Page 1 of 1 (latest)
I’m not sure but u may have to turn secure boot again idk much but it may be worth a try
ive disabled secure boot, but im still not sure how to load the kernel
run mkinitcpio -P to make an initramfs for the custom kernel and regenerate the grub config
This seems to have had some effect, but the boot menu I'm given still only shows "arch Linux" which boots the default kernel and "UEFI Firmware settings".
I've realised that what I assumed was the "grub boot menu" looks completely different to every photo of it online. I don't know what this is
oh.. thats.. systemd boot
try copying /boot/loader/entries/arch.conf to /boot/loader/entries/surface and editing it where you change the title, /vmlinuz-linux to /<name of kernel. just run ls inside of /boot to find it>, and /initramfs-linux.img to <initramfs of kernel. ls in /boot to find the name>. no need to change options though
my /boot/loader/entries is empty
output of lsblk?
cat /boot/loader/loader.conf?
hm..
iis it bad?
im probably going to have to search around a little. kind of expected atleast the loader.conf to contain something
unless..
are you using a UKI?
sorry, how would i check that?
cat /etc/mkinitcpio.conf
this may be weong actually ^. clearly going to have to read up a little
ls /boot/EFI?
aha. so it is in fact a uki. also. i did in fact miss the mkinitcpio conf check. i shouldve asked for a check on cat /etc/mkinitcpio.d/linux preset
well, it automatically reads out the efi entry from /boot/EFI/Linux, which means we just have to modify/add an entry for your kernel in its own config so it builds a UKI for the other kernel as well
could you run ls /etc/mkinitcpio.d? just in case the kernel created its own preset there
it seems to have done so, yes
open it in your favorite editor and:
comment out default_image (just add a # to the front)
uncomment default_uki (remove the #)
afterwards, save and preferably run cat on both files as i wish to doublecheck that the default .efi locations match (essentially using the linux.preset as a sanity check)
am i to do the same to linux.preset too or just surface?
just want the output from running cat on linux.preset. it shouldnt be modified however
understood
feel free to also uncomment default_optns from the surface preset. afterwards save and run mkinitcpio -P. after a reboot, the entry should appear
(basically why i asked for linux.preset as a sanitycheck)
@fickle mirage wait. i made a small mistake
?
in default_uki, the /efi/EFI part should be changed to /boot/EFI as it is in linux.preset. small oversight on my end
after that you should be able to run mkinitcpio -P and reboot
relevant page if you have issues next time:
https://wiki.archlinux.org/title/Unified_kernel_image#.preset_file
also. please follow the steps given below:
... solved