You are not logged in.

#1 2026-05-01 00:15:01

callMeJP
Member
Registered: 2026-05-01
Posts: 4

[SOLVED] Grub only finds Arch on triple boot system

Hi guys. A while ago I installed arch with grub as the bootloader so I could use btrfs snapshots because that seemed to be the best way to do it. At the time I was dualbooting arch and windows together, and I didn't really notice that windows never showed up in the grub menu. Recently I installed NixOS as a third OS on my laptop with systemd boot and it finds windows and NixOS just fine, but doesnt find arch. This means I have to go into the bios every time I want to swap to or from arch. I was wondering if there was any way to let systemd boot find arch or vice-versa with grub?

Last edited by callMeJP (2026-05-01 07:36:45)

Offline

#2 2026-05-01 04:23:06

5hridhyan
Member
Registered: 2025-12-25
Posts: 825
Website

Re: [SOLVED] Grub only finds Arch on triple boot system

systemd boot find arch

https://wiki.archlinux.org/title/System … ng_loaders

vice-versa with grub?

https://wiki.archlinux.org/title/GRUB#D … ng_systems
should probably get the work done, for NixOS systemd-boot is the right choice, if you choose grub because of snapshots and stuff, in that case chainloading systemd-boot of NixOS to grub (to boot systemd-boot of Nix from Grub) makes sense.

Offline

#3 2026-05-01 05:08:52

callMeJP
Member
Registered: 2026-05-01
Posts: 4

Re: [SOLVED] Grub only finds Arch on triple boot system

Thanks for the help, I've found some success with systemd-boot now. I've searched through some of the related Grub sections in the arch wiki including the one that you linked, and I've gotten Grub to find windows in the menu. However Grub doesn't seem to find Nix or systemd-boot in the boot menu, and I can't figure out how to do the chainloading that you mentioned, how do you recommend I go about it?

Offline

#4 2026-05-01 06:04:12

5hridhyan
Member
Registered: 2025-12-25
Posts: 825
Website

Re: [SOLVED] Grub only finds Arch on triple boot system

I've found some success with systemd-boot now.

Good, if systemd-boot is already working, I would avoid adding GRUB chainloading unless you have a specific need for it...

how do you recommend I go about it?

If you still want to chainload, you can add a manual GRUB entry pointing to systemd-boot

find your EFI partition UUID:

lsblk -dno UUID /dev/your_EFI_partition

for the actual path of systemd-boot EFI binary assuming you have mounted your EFI partition, run

find /boot/EFI -name "*.efi"

also in the GRUB config, you must omit the /boot part if /boot is where the partition is mounted. GRUB sees the "root" of the partition itself, so your path in the config will likely be like
chainloader /EFI/systemd/systemd-bootx64.efi
or /EFI/nixos/bootx64.efi depending on it's side/setup

then open /etc/grub.d/40_custom and add

menuentry "systemd-boot" --class systemdboot {
    insmod fat
    insmod chain
    search --no-floppy --fs-uuid --set=root <YOUR_EFI_UUID>
    chainloader /EFI/.../systemd-bootx64.efi  #your systemd-boot binary w/ it's path
}

regenerate GRUB config afterwards.

Last edited by 5hridhyan (2026-05-01 06:18:01)

Offline

#5 2026-05-01 06:34:50

callMeJP
Member
Registered: 2026-05-01
Posts: 4

Re: [SOLVED] Grub only finds Arch on triple boot system

Thanks for that, I was able to follow most of the steps, including the last one, but I can't find the UUID? I've ran the command you showed onto my relevant partition: lsblk -dno UUID /dev/nvme0n1p5, but it just returns nothing. Everything else I could follow just fine, although EFI/ was located inside /efi instead, which i think is just a minor difference.

Offline

#6 2026-05-01 06:53:15

5hridhyan
Member
Registered: 2025-12-25
Posts: 825
Website

Re: [SOLVED] Grub only finds Arch on triple boot system

hmm, try w/ `sudo blkid /dev/nvme0n1p5`
p5 is unlikely to be the EFI partition. It is often p1, but you should verify it properly.
run

lsblk -o NAME,FSTYPE,FSVER,PARTTYPE,MOUNTPOINT,UUID

check FSTYPE as vfat and FSVER as FAT32, also it's PARTTYPE looks like "c12a7328-f81f-11d2-ba4b-00a0c93ec93b" that is your EFI partition --- use its UUID

EFI/ was located inside /efi instead, which i think is just a minor difference.

Not quite, that just means your EFI partition is mounted at /efi instead of /boot.`find /efi/EFI -name "*.efi"` find the bianary, as said omit the /efi, add it to chainloader in /etc/grub.d/40_custom

Edit:
uncertain about p5.

Edit2:
quote

Last edited by 5hridhyan (2026-05-01 07:57:41)

Offline

#7 2026-05-01 07:34:39

callMeJP
Member
Registered: 2026-05-01
Posts: 4

Re: [SOLVED] Grub only finds Arch on triple boot system

5hridhyan wrote:

sudo blkid  /dev/nvme0n1p5q

Cheers! It works!

5hridhyan wrote:

p5 is unlikely to be the EFI partition. It is often p1, but you should verify it properly.

It is confirmed p5, although i have no idea why windows takes up 4 partitions.

Thanks for the help, I'll mark this as solved now.

Last edited by callMeJP (2026-05-01 07:38:51)

Offline

#8 2026-05-01 08:19:09

5hridhyan
Member
Registered: 2025-12-25
Posts: 825
Website

Re: [SOLVED] Grub only finds Arch on triple boot system

JP wrote:
5hridhyan wrote:

sudo blkid  /dev/nvme0n1p5q

Cheers! It works!

you probably meant `/dev/nvme0n1p5`, anyways glad it helped.

It is confirmed p5, although i have no idea why windows takes up 4 partitions.

yikes
lets just hope Window's doesn't thinks "eh another ESP? probably a dupe, let me fix it" in new update lol

Last edited by 5hridhyan (2026-05-01 08:21:10)

Offline

Board footer

Powered by FluxBB