# Coming from Omarchy

Nomarchy and [Omarchy](https://omarchy.org) are cousins: the same
Hyprland + Waybar desktop feel, the same opinionated "beautiful out of the
box," one-command theming, and a keyboard-driven menu. If you liked
Omarchy, you'll be at home here in minutes.

The one real difference is the **foundation**:

|            | Omarchy | Nomarchy |
|------------|---------|----------|
| Base       | Arch Linux | NixOS |
| Config     | **imperative** dotfiles you edit in `~/.config`, live | **declarative** — built from a flake; changed via the menu or your `home.nix`/`system.nix` |
| Packages   | `pacman` / `yay` / AUR, anytime | `nixpkgs` — added to your flake (no AUR) |
| Recovery   | reinstall / restore dotfiles | **every rebuild is a bootable generation** — roll back from the boot menu |

This page maps the day-to-day deltas. Nothing about the *desktop* has to
be relearned — only *how you change it*.

---

## The one mental shift: declarative, not dotfiles

In Omarchy you open a file under `~/.config`, save it, and the change is
live. In Nomarchy the whole desktop is **built from your flake**, so you
change it one of two ways:

1. **The menu** (`SUPER+M`) — the everyday path. It writes the change into
   your flake's state and rebuilds for you. You never hand-edit a config
   for theming, night light, wallpaper, keyboard layout, power, etc.
2. **Your flake** — for anything the menu doesn't cover, edit
   `home.nix` / `system.nix` (a handful of `nomarchy.*` options and plain
   Home-Manager/NixOS), then run a rebuild.

The payoff for the extra indirection: **a bad change never bricks you.**
Every `nomarchy-rebuild` is a new NixOS generation; if one misbehaves,
reboot and pick the previous entry from the boot menu — your files
(`/home`) are never touched. See [RECOVERY.md](RECOVERY.md).

> Editing `~/.config/hypr/*` by hand won't stick — Home-Manager owns those
> files and rewrites them on the next rebuild. Change the source (menu or
> flake) instead.

---

## Install

| | |
|---|---|
| **Omarchy** | Run the bootstrap on a fresh Arch install. |
| **Nomarchy** | Boot the ISO and run **`nomarchy-install`** (single-disk UEFI, optional LUKS, hibernation-ready swap). |
| **Already on NixOS?** | Convert in place, no reformat — [MIGRATION.md](MIGRATION.md). |

---

## Keybindings (they'll feel familiar)

The full, always-current list is one keypress away: **`SUPER+?`** opens the
live cheatsheet — you never have to memorize this table.

| Key | Action |
|-----|--------|
| `SUPER+Return` | Terminal |
| `SUPER+Space` | App launcher |
| `SUPER+M` | Main menu (theme, network, audio, power, tools…) |
| `SUPER+T` | Theme picker |
| `SUPER+SHIFT+T` | Next wallpaper |
| `SUPER+E` | File manager (yazi) |
| `SUPER+X` | Power menu (lock / suspend / hibernate / reboot …) |
| `SUPER+CTRL+L` | Lock screen |
| `SUPER+?` | Keybindings cheatsheet |
| `Print` | Screenshot region → clipboard |
| `SUPER+CTRL+<key>` | Jump straight to a menu module (clipboard `V`, calc `C`, emoji `E`, capture `S`, …) |

---

## Theming

Both distros reskin everything from one place. In Nomarchy:

- **`SUPER+T`** (or `nomarchy-menu theme`) — pick from 24 presets with live
  previews; it rebuilds and applies to Hyprland, Waybar, the terminal,
  btop and GTK/Qt at once.
- Or from a shell: `nomarchy-state-sync apply <slug>` (e.g. `gruvbox`,
  `rose-pine`, `nord`).
- Tweak gaps / rounding / fonts / opacity / icon pack without leaving the
  theme system — see [OVERRIDES.md](OVERRIDES.md). One git-tracked JSON
  (`state.json`) is the single source of truth.

---

## Installing software

There is no AUR. Two paths:

- **Keep it:** add the package to `home.packages` in your flake's
  `home.nix`, then `nomarchy-home`. It's now declared, reproducible, and
  part of your rollback history. A curated default app set already ships —
  you extend the list.
- **Just this once:** `nix shell nixpkgs#<pkg>` drops you into a shell with
  it on `PATH`, gone when you exit — the equivalent of a throwaway install.

Search with `nsearch <name>` (`nix search nixpkgs`).

---

## Update & roll back

| | Omarchy | Nomarchy |
|---|---|---|
| **Update** | update command | `nomarchy-pull` (bump inputs), then `nomarchy-rebuild` (system) + `nomarchy-home` (desktop) |
| **Roll back** | restore dotfiles | reboot → pick the previous **generation** in the boot menu (or a snapper snapshot) |
| **Health check** | — | `nomarchy-doctor` (System › Doctor) — read-only pass/fail sheet, each ✖ shows its fix |

On a failed rebuild, `nomarchy-rebuild` / `nomarchy-home` print the last
log lines and point you at `nomarchy-doctor` and [RECOVERY.md](RECOVERY.md)
— you're never left guessing.

---

## What's exactly the same

Hyprland tiling and feel, Waybar, the rofi-driven menu, the blur/rounding
aesthetic, keyboard-first everything, and strong opinionated defaults. The
desktop is the part you already know — this page is only about the NixOS
plumbing underneath.
