Coming from Other Distros
Most of what you know still applies on Marchyo. Hyprland is still Hyprland, a terminal is still a terminal, and your browser works the way it always did. The one real difference is how the system changes: you don’t install things or edit settings by hand. You describe what you want in your configuration and rebuild. This chapter maps the habits you already have onto that idea.
The golden rule
Section titled “The golden rule”Never install anything imperatively. No pacman -S, no apt install, no
pip install --user, no nix-env -i or nix profile install, and no hand edits to
the files in ~/.config. If you want something on your machine, add it to your
configuration and rebuild:
environment.systemPackages = with pkgs; [ gimp inkscape];sudo nixos-rebuild switch --flake .#workstationThe same goes for settings. Many of the files in ~/.config are generated from your
configuration, so a hand edit there is overwritten on the next rebuild. Change the
matching marchyo.* option instead. If you’re not sure of a package’s name,
nix search nixpkgs <name> looks it up without installing anything.
This feels slower for the first week. After that it pays you back: every change is written down, every machine can be rebuilt identically, and a bad change is undone by booting the previous generation (see Updating).
From omarchy
Section titled “From omarchy”You’ll feel at home quickly. Marchyo takes omarchy’s ideas and builds them
declaratively, so the shape of the desktop is familiar: Hyprland, a curated set of
apps chosen for you, one coherent theme, and a keyboard-first workflow. Many binds
match on purpose. Super + Ctrl + A, Super + Ctrl + B, and Super + Ctrl + W
open the audio mixer, Bluetooth, and Wi-Fi tools in floating terminals,
Super + Escape opens the power menu, and Super + Alt + Space opens the system
menu.
A few things differ:
- App launch binds are plain
Super + <letter>.Super + Bis the browser,Super + Fthe file manager,Super + Ethe editor,Super + Returnthe terminal. Web apps such as YouTube and GitHub sit onSuper + Shiftchords. The full map is in Hotkeys. - There is no
omarchy-install-*. Turning on a whole feature group is one flag, such asmarchyo.development.enable, or themarchyo install developmentcommand, which edits your configuration and rebuilds for you. - Updating is
nixos-rebuild. Instead of a migration engine, your system is pinned inflake.lock.marchyo upgradebumps it and rebuilds, and every rebuild leaves a generation you can roll back to. - One command instead of many scripts. Where omarchy has its
omarchy-*commands, Marchyo has a singlemarchyocommand for themes, toggles, capture, menus, and web apps. See The marchyo CLI.
From Arch
Section titled “From Arch”Pacman and the AUR go away. Packages come from nixpkgs, and you list them in your
configuration instead of installing them. You don’t need to track partial upgrades
or .pacnew files: the whole system is rebuilt from one pinned set, so it is always
consistent. Services work the same way. Rather than systemctl enable, you enable
the service in your configuration, and it is started on rebuild.
The Arch Wiki is still useful for understanding how a tool works. When it tells you
to edit a file in /etc or install a package, translate that into the matching
NixOS or marchyo.* option.
From macOS or Windows
Section titled “From macOS or Windows”The biggest change is the tiling compositor. Windows don’t float wherever you drop
them. Each new window takes a share of the screen, and the layout rearranges itself
as you open and close things. You move between windows and workspaces with the
keyboard far more than with the mouse. Navigation teaches the
handful of binds you need, and Super + K shows every bind any time you forget one.
Super is the key you already know as Command or the Windows key, and nearly every
shortcut starts with it. Super + R opens the app launcher, the closest thing to
Spotlight or the Start menu.
There is no settings app. Your settings live in configuration.nix: the browser is
marchyo.defaults.browser, the theme is marchyo.theme.variant, and so on. For the
quick, everyday changes, the system menu (Super + Alt + Space) and the
marchyo CLI let you switch themes, flip toggles, and
connect to Wi-Fi without opening a file.
If you want to stay on your Mac, Marchyo can also manage it through nix-darwin. You keep the macOS desktop and get Marchyo’s shell, Git setup, fonts, packages, and system defaults on top, built from the same kind of configuration.