When it comes to desktop, it is pretty common that we may end up needing a ready-to-use Windows host beside our daily use Linux system. If that is your case, forget about spamming your F key at startup so you can boot one or another from your motherboard’s boot selector and just let Systemd care about that.
- You are using systemd-boot as UEFI manager, NOT GRUB
- You run Arch Linux and Windows on the same machine (it doesn’t matter if they are installed on different partitions or separate physical disks)
First things first! Fire up your Arch, get a root shell and mount the Window’s EFI partition:
mount /dev/sdXN /mnt # replace 'sdXN' accordingly to your Windows' disk address
/mnt/EFI/Microsoft folder inside the
cp -r /mnt/EFI/Microsoft/ /boot/EFI/Microsoft/
Add a new entry for Windows by creating a new
/boot/loader/entries/windows.conf file, containing:
title Windows 10 efi /EFI/Microsoft/Boot/bootmgfw.efi
Apply changes by running:
Check that the new entry is showing correctly with:
It should output something like this:
Boot Loader Entries: title: Arch Linux id: arch.conf source: /boot/loader/entries/arch.conf linux: /vmlinuz-linux initrd: /initramfs-linux.img title: Windows 10 id: windows.conf source: /boot/loader/entries/windows.conf
Once done, reboot your system and wait for systemd-boot to show up with both Arch and Windows 10 entries.
Until we meet again!