How to Install Omarchy on a Partition (Dual-Boot Windows)

· Travis Rodgers  · 5 min read

Installing the Omarchy ISO is intentionally simple and opinionated:

Select a disk > Wipe the entire disk > Encrypt everything > Install Omarchy

There is no option to install into a specific partition, preserve free space, or coexist alongside Windows in a dual-boot scenario.

If you want any of that, you must use the manual Omarchy installation path, and while the documentation almost gets you there, there’s some important steps left out for those not privy to partitioning disks from the command line.

As one who just set this up, I wanted to capture the entire process here in case I needed to do it again, and of course for the benefit of anyone reading this.

Goal: Omarchy Partition and Windows/Linux Dual-Boot

So I still needed to use DaVinci Resolve for video editing so I set out to create a dual-boot of Windows and Omarchy Linux. Here’s the overview:

I have a desktop build with:

  • A 1TB NVMe: I installed Windows on this, the entire thing.
  • A 2TB NVMe: I want to partition 500GB of this to be for Omarchy. The other 1.5T I want to partition as an NTFS so I can share data between Omarchy and Windows.

Let’s look at how to set up this partition.

Prerequisites

You’ll need:

  • An Arch Linux ISO. For the manual setup you are installing Arch Linux. Then you will curl the Omarchy package and install it that way.
  • USB drive (8GB+)
  • Secure Boot disabled
  • Wired keyboard or 2.4GHz dongle keyboard
    (Bluetooth will NOT work at the LUKS prompt)

Step 1: Create an Arch Linux Boot USB

Download the Arch Linux ISO ISO and use a tool like Balena Etcher to create a bootable stick.

Step 2: Boot the Arch Linux ISO

Boot from the Arch Linux USB. Hit F2 (or Del or F7) when the computer boots up to enter the BIOS and boot Arch Linux from your USB stick. You’ll land at:

root@archiso ~#

If you need Wi-Fi run these commands:

iwctl
station wlan0 scan
station wlan0 connect <your-network-name>

Step 3: Start archinstall

Launch the installer:

archinstall

And here’s where the fun begins!

Now I can’t take all the credit for these instructions. Omarchy has a solid writeup on manually installing Omarchy but nothing about partitioning. Yet I came across this helpful information by a DoppioJP and tweaked it for my scenario (and added a few things).

Here are the combined findings:

Step 4: Configuring Arch Linux before installing Omarchy

So Omarchy’s docs have all the settings you need to configure Arch Linux with prior to an Omarchy install.

Be sure to go through and set each one as described, from disk encryption, passwords, region, etc. Everything is straightforward except the Disk configuration and File system parts. Let me walk you through these step-by-step.

Step 5: Setting up Disk configuration and file system (partitioning)

In this example, I am on a mini-PC so will only have 512GB to demonstrate, but the concept is the same.

Choose Disk configuration > Partitioning > Manual Partitioning (not best-effort).

Choose your entire disk (not your USB stick)

Next you will see two existing disks.

a screenshot of the Udemy course LLM Engineering: Master AI, Large Language Models & Agents

One is the Omarchy boot disk between 1-2GiB. That is fine. The other existing larger disk is the rest of the space that Omarchy will use to install its operating system. Click on this and choose Delete Partition.

You will now see a delete happening to the large disk (since we deleted that partition), an existing boot disk, and that large disk is now marked free.

a screenshot of the Udemy course LLM Engineering: Master AI, Large Language Models & Agents

From the free disk we want to create our partitions. Say I want to create a 300GB partition for Omarchy and leave 175GB free to later make into an NTFS drive to share between my Omarcy and Windows operating systems. Let’s click on the free disk and create a partition of 300GiB.

a screenshot of the Udemy course LLM Engineering: Master AI, Large Language Models & Agents

Hit Enter. Now choose btrfs for this Omarchy partition, hit enter, and now you will see that you have a create command for a new partition of 300GiB and a free space of 175GiB.

a screenshot of the Udemy course LLM Engineering: Master AI, Large Language Models & Agents

Now before we choose Confirm and exit to run these partition instructions, here’s where DoppioJP’s info was so very helpful. Since we aren’t letting it choose the best setup for us, we have to do a few more things manually.

First, click on the create partition (300GiB in my case) and choose mark as compressed (you’ll see compress=zstd in the table)

Next, click on the same create partition again and choose Set subvolumes. Choose Add subvolume and add these:

namemountpoint
@/
@home/home
@log/var/log
@pkg/var/cache/pacman/pkg

You’ll do this for all four, then choose Confirm and exit.

And there you go.

Choose confirm and exit and it will create your 1-2GB boot, your 300GB partition, and leave the rest free.

Step 6: Finish installation

Now go ahead and make sure, again, that all the other configuration up just as noted in the Omarchy manual install documentation (and be sure only to apply the encryption to the partition we created (in our case the 300GiB)), finish the Arch install, reboot your machine, log in with the user you created, and install Omarchy on your new partition by running:

curl -fsSL https://omarchy.org/install | bash

And be sure to install Omarchy on the partition we created for it.

What about the unallocated space?

So in my own example, I had left some free unallocated space to use as an NTFS drive that both Omarchy and Windows could both access.

I created this from Windows:

  • Open Disk Management
  • Right-click the Unallocated space
  • Click New Simple Volume
  • Accept the full size
  • Assign a drive letter (e.g. D: or V:)
  • Format as: NTFS, Default allocation size, and label it something like Shared or Media

And I mounted it on Omarchy Linux:

  • Run lsblk -f
  • Find the NTFS partition (for example /dev/nvme0n1p3)
  • Run sudo mkdir -p /mnt/shared && sudo mount -t ntfs3 /dev/nvme0n1p3 /mnt/shared

And made sure to set it to auto-mount at boot:

  • Get the UUID: blkid /dev/nvme0n1p3
  • Edit fstab: sudo nvim /etc/fstab
  • Add this line replacing UUID: UUID=XXXX-XXXX /mnt/shared ntfs3 defaults,noatime 0 0
  • Save, exit, and test: sudo mount -a, and if no errors, you’re all set.

Let me know any questions or comments below.

This page may contain affiliate links. Please see my affiliate disclaimer for more info.

Related Posts

View All Posts »
How to Manage Dotfiles with GNU Stow

How to Manage Dotfiles with GNU Stow

A simple, powerful workflow for managing any Linux dotfiles with GNU Stow. This guide walks you step-by-step through setting up a clean, scalable dotfiles system using a Ghostty config as the example.