marchyo(7)Jylhis Manualmarchyo(7)

NAME

marchyo — a modular NixOS configuration flake with sensible defaults

SYNOPSIS

you@myhost — zsh
nix flake init -t github:Jylhis/marchyo#workstation

wrote flake.nix — desktop, development, users pre-wired

sudo nixos-rebuild switch --flake .#myhost

DESCRIPTION

My personal spin of Omarchy, rebuilt on NixOS. One flake input gives you a full Hyprland desktop, a development toolchain, and a themed user environment — declaratively, reproducibly, and without collecting nixpkgs pins.

Marchyo is batteries-included: mkNixosSystem selects the correct nixpkgs, Home Manager, stylix, overlay and marchyo modules for your system. You write the config; it picks the rest. I built it for my own machines — it might work for yours.

currently

  • tracking nixpkgs unstable (stable 26.05 on Intel macOS)
  • daily-driven on real hardware
  • omarchy parity: tracked in OMARCHY_PARITY.md

OPTIONS

Feature flags enable whole stacks. Everything lives under marchyo.*.

$ ls -la marchyo/
drwxr-xr-x desktop.enable hyprland · pipewire · fonts
drwxr-xr-x development.enable git · docker · qemu/kvm
drwxr-xr-x media.enable obs-studio auto
drwxr-xr-x office.enable papers · obsidian auto

EXAMPLES

The whole configuration. No separate nixpkgs input needed.

flake.nix
# marchyo is the only input
inputs.marchyo.url = "github:Jylhis/marchyo";

outputs = { marchyo, ... }: {
  nixosConfigurations.myhost = marchyo.lib.mkNixosSystem {
    system = "x86_64-linux";
    modules = [
      ./hardware-configuration.nix
      {
        marchyo.desktop.enable = true;
        marchyo.development.enable = true;
        marchyo.users.myuser = {
          fullname = "Your Name";
          email = "you@example.com";
        };
      }
    ];
  };
};

THEMING

Paper and Roast, straight from the Jylhis design tokens. The ☾ in the header flips this page the same way marchyo.theme.variant flips your desktop.

☀ paper
variant = "light";
☾ roast
variant = "dark";

FAQ

Why not just use Omarchy?

Omarchy is Arch. I wanted the same opinionated desktop with NixOS guarantees — rollbacks, one config for every machine, and no drift. Parity status is tracked in OMARCHY_PARITY.md.

Do I need my own nixpkgs input?

No. Marchyo is the only input; mkNixosSystem picks the right nixpkgs per system. If you wire modules manually, that responsibility is yours again.

Does it work on macOS?

Yes — mkDarwinSystem works the same way. Intel macs get pinned to stable nixos-26.05 (the last release supporting them); everything else rides unstable.

Home Manager only?

Use homeManagerModules.default in your own home-manager configuration — no NixOS system modules required.

SEE ALSO

docs(7), quickstart(1), github(1), omarchy(7)