Omarchy – A Review

Omarchy is an opinionated Arch + Hyprland Setup by DHH. DHH is the guy behind ruby on rails, co-founder of basecamp and many other things. I seem to agree with most of his opinions and am interested to get into ruby because primarily he is a big proponent of ruby. Ever since I heard he migrated from Mac to Linux and started the Omarchy project, I thought I’ll check it out.

First opinions

Omarchy is hardcore but approachable. That’s high praise.

Hardcore because you are still dealing with a tiling window manager laser focused on keyboard based navigation. So you’ll have to train that muscle. To start off, you need one keybinding. Command + Space. It launches the Omarchy menu. You can install, update, configure Wifi, Bluetooth and a lot lot more from this menu. This is really well done. This is core to what makes the OS approachable.

Omarchy also says that its meant for developers. So almost everything is a TUI (terminal UI). Want to setup wifi, TUI. Want to setup monitors, TUI. Do I like it, no. Should I learn syntax to do something as basic as changing the display resolution for my monitor, yes. Will I do it everyday? No. So does it matter that much, Nope.

Now a days, all it takes is a query in Claude to figure out how to do something. So its not really that hard to configure something. That being said, some of this could be more “Obvious” (I know that’s a loaded term, but hear me out).

Some pre-requisites to understand

DHH is a man of taste. It does not matter if you agree or disagree with his taste, its worth appreciating when someone has sound taste and work towards creating a world which adheres to their taste and shares it out in the open.

Second point, DHH really believes in beauty & aesthetics. Aesthetics is why he picked ruby as his primary programming language. In his Lex friedman’s interview, he mentions why he likes ruby and quotes an example of the ruby syntax `5.times` and how it just beautiful. I gotta agree, I’m a python aficionado usually, but man, it is beautiful. Isn’t it? I should spend some solid time learning ruby.

Now, I am also an aesthetics guy. I love obvious stuff and great design. So, I’ll be slightly critical here and there. But all of this is in good faith and I’m sure Omarchy will change for the better.

With this context, let’s talk about speed breakers.

Speed breaker: Configuring monitors

I understand Omarchy is limited by hyperland’s configuration language etc.. But configuring monitors is .. interesting.

You are supposed to write a line in a configuration file that looks like something like this

monitor=DP-2, 3440x1440@144, auto, 1

What I really would have liked is to use something like Hypermon. Wifi has a beautiful TUI, Hypermon would be a beautiful TUI for monitor configuration I believe.

Speed breaker: Laptop lid close after connecting to monitor keeps the laptop display active

I like to think a lot of developers have a setup where they connect a monitor, keyboard & a mouse and just use. Laptop lid close usually just disables that display and moves the rest of the windows in that workspace to the other workspaces. This is usually a very common behavior which all operating systems support at a box. For some reason it requires a good amount of work in this particular setup.

Here’s how I achieved this in Omarchy

bindl=,switch:on:Lid Switch,exec,hyprctl keyword monitor "eDP-1, disable"
bindl=,switch:off:Lid Switch,exec,hyprctl keyword monitor "eDP-1, preferred, auto, auto"

Once that’s done, then on laptop lid close the laptop display is switched off. Which will automatically move windows around etc..

Note that there is one catch with this. If the system starts off with laptop lid closed or you reload the desktop environment with the lid closed then the laptop monitor will switch back on because there is no laptop lid event to switch it off. Hopefully there is a better solution to this, I will iterate on this later sometime.

Speed breaker: Nothing like superwhisper

One thing I’ve been used to when I was in a Mac world was SuperWhisper. It is a simple application which transcribes voice to text. It has been very useful for me to write long-form blog posts, write prompts for kilo code etc.

Unfortunately, there is nothing like it on Linux. So, it’s a good time to start a new project, and I started a project called SpeechShift, which effectively takes voice and converts it to text and pastes it in the focused text box. Check it out, its already published on Pypi as well

What I’m enjoying

Apart from this, learning keybindings is work but then once you are used to it, it changes your life. So my suggestion is to stick through it and learn.

Installing and removing software is a breeze. The command + space menu is very well thought out and I think this is a beautifully well done setup.

Closing thoughts

I’ve been using a mac for a good 3 years as of now (before which I was using fedora on a thinkpad). My primary workhorse is a macbook, I think that will continue.

Macbooks have a dangerously good combination of insane battery life, great keyboard, solid build quality, extremely high performance processor and a decent operating system. So its very hard to find hardware at the same caliber for linux, so primary workhorse will still be a macbook. But whenever I’m working out of home or office, I think I’ll stick with Omarchy and see how it goes.

I think it’s high time Linux — and operating systems like it — had a capable agent powered by an LLM (for example, Claude) that can:

  • change configurations safely (along with rollbacks),
  • educate users and answer questions,
  • help onboard new users to the OS.

The learning curve is still a speed breaker; an integrated OS assistant that teaches skills and guides users through common tasks would make adoption much easier. Maybe this is an opportunity for me to do something here 😉