Repairing my Windows bootloader after Omarchy

The problem

Before I switched to Omarchy, I was running omakase-blue on one NVME drive, and Windows on another. Part of this is because I want to use full disk encryption, and part of this is because I was originally playing with Project Bluefin, which doesn’t support dual-boot off of a single disk.

I installed Omarchy via online ISO, and pointed it at my Linux drive.

After it installed, I no longer could boot into Windows. My BIOS didn’t even show the 2nd NVME drive as a boot option.

The solution

After some digging, I figured out a way to get things back without needing to reinstall any operating systems. My system looked like this after the Omarchy install:

❯ lsblk --output NAME,PTTYPE,PARTLABEL,FSTYPE,FSVER,LABEL,FSSIZE,FSAVAIL,FSUSE%,MOUNTPOINTS
NAME        PTTYPE PARTLABEL                    FSTYPE      FSVER LABEL FSSIZE FSAVAIL FSUSE% MOUNTPOINTS
zram0                                           swap        1     zram0                       [SWAP]
nvme0n1     gpt
├─nvme0n1p1 gpt                                 vfat        FAT32           2G    1.8G     9% /boot
└─nvme0n1p2 gpt                                 crypto_LUKS 2
  └─root                                        btrfs                     1.8T    1.8T     2% /var/log
                                                                                              /home
                                                                                              /var/cache/pacman/pkg
                                                                                              /
nvme1n1     gpt
├─nvme1n1p1 gpt    Microsoft reserved partition
├─nvme1n1p2 gpt    Basic data partition         ntfs
└─nvme1n1p3 gpt                                 ntfs

That is, the vfat, FAT32 partition with the bootloader was on nvme0n1, and it didn’t seem there was any corresponding partition on nvme1n1.

The good news is that this indicated that I could probably just restore the required boot files to nvme0n1p1 for Windows and be on my way.

Repairing the Windows bootloader files

To do so, I used Hiren’s BootCD PE on a USB drive with Ventoy.

Once in the Windows PE environment, we can restore the files with diskpart and bcdboot in the command prompt.

diskpart

> list volumes

# find the fat32 one, let's call it X
> select volume X
> assign letter K:

Now that we’ve assigned a letter, we can fix the files:

  bcdboot C:\Windows /s K: /f ALL

where /s specifies the volume letter of the system partition, and /f specifies the firmware type (ALL copies all of them).

At this point, I could once again boot from this drive and land in Windows.

Adding Windows to Limine

But, we could do even better! Having to use the BIOS boot menu is annoying: you typically have to spam an F-key at startup, and if you miss your opportunity, need to restart again. It would be nice to be able to just boot to the same bootloader and select Windows, like in a traditional single-drive, dual-boot setup.

Turns out that isn’t hard, since Omarchy uses Limine out of the box.

In Linux, we can just edit the boot config.

sudoedit /boot/limine.conf

Then, I added the following entry after the Omarchy ones, and before the EFI fallback.

/Windows
comment: Windows
comment: order-priority=40
    protocol: efi
    path: boot():/EFI/Microsoft/Boot/bootmgfw.efi

With this, I then configured my BIOS to with Limine as the first boot option, and disabled the others. Now, it boots to Limine on startup, and my Windows drive is once again an easy option to select. Nice.

Posts from blogs I follow

Kaizen #4: Overhauled homelab

I started this “blog-series” to force myself to write more about my set up, and my continuous iterations. But it didn’t happen… until today! This post has been a long time coming, and I have kept the ideas in my head and notes. I will walk through everythi…

via Tim Hårek July 05, 2026

Better Models: Worse Tools

Better Models: Worse Tools Armin reports on a weird problem he ran into while hacking on Pi: The short version is that newer Claude models sometimes call Pi’s edit tool with extra, invented fields in the nested edits[] array. And not Haiku or some small m…

via Simon Willison's Weblog July 04, 2026

Verizon is About to Break our Watches

Two years ago I bought a pair of Gizmo watches for my kids ( review). There's a companion app for texting and configuration ("Gizmohub"), and Verizon is moving everyone over to a new one ("Verizon Family"). But the new app doesn't work for watch-only acco…

via Jeff Kaufman's Writing July 04, 2026

Generated by openring-rs from my blogroll.