Skip to content

First run

You’ve run the install and the first darwin-rebuild switch has finished. Here’s what changed and what to try first.

  • AeroSpace (tiling) is running. Windows now arrange themselves.
  • SketchyBar replaced the menu bar with workspace pills, weather, media, battery, and a clock.
  • Ghostty is your terminal; opening it drops you straight into a zellij session, themed in fog-grey.
  • Pounce is listening on ⌘Space.
  • The haus command is on your PATH.

⌘Space — Pounce

Open the command palette. Type to fuzzy-search apps and commands, hit Return. Start here for everything.

Tap ⇪ — Launch mode

Tap (don’t hold) Caps-Lock, then press an app’s letter to launch or focus it. T = terminal, B = browser out of the box.

Tap ⇪, then ←↓↑→ — Focus

Tap Caps-Lock, then an arrow to move focus between tiled windows — keep arrowing to keep moving. Hold with an arrow to move the focused window instead. No Vim keys to learn.

Tap ⇪, then 1–4 — Workspaces

Tap Caps-Lock, then a digit to jump to that workspace — the same leader that launches an app. Add to the digit (or to an app’s letter) to throw the current window there instead.

  1. Tap ⇪, then T — Ghostty opens and tiles. You’re in zellij.
  2. ⌘Space, type saf, Return — Safari launches. That’s Pounce.
  3. Tap ⇪, then ← / → — focus jumps between the two windows (keep arrowing).
  4. ⌥/ — the tiled split flips between horizontal and vertical. (⌥, swaps to an accordion instead.)
  5. ⌘Space, type emoji, Return — the palette swaps to an emoji grid in place. Pick one; it’s copied (and pasted, if you granted Accessibility).

Some Pounce features (clipboard auto-paste, emoji paste) synthesize keystrokes, which macOS gates behind Accessibility:

Terminal window
pounce --request-accessibility # approve the system dialog
pounce --check-accessibility # prints true when it's granted

Your identity and app list live in ~/.config/nix/hosts/<hostname>/default.nix. Open it fast with:

Terminal window
haus edit

A few first tweaks people reach for:

{
# Change the accent that tints lazygit, fzf, yazi, and the browser
nebelhaus.theme.accent = "sapphire";
# Prefer a different editor
nebelhaus.hearth.editor = "nvim";
# Add an app to the launcher + workspace roster
nebelhaus.apps.slack = {
key = "s";
name = "Slack";
workspace = "S";
appId = "com.tinyspeck.slackmacgap";
barIcon = ":slack:";
cask = "slack";
};
# Or just install casks without giving them a launcher key
homebrew.casks = [ "discord" ];
}

Then apply it:

Terminal window
haus rebuild

See Theming & accents, Window management, and the full options reference to go deeper.

CommandWhat it does
haus rebuildBuild, then switch — your everyday apply
haus updatePull new nebelhaus versions, then rebuild
haus statusCurrent generation + how stale the rice is
haus rollbackReturn to the previous generation
haus doctorHealth check: Nix, CLT, GUI agents, cask drift

The full list is on the haus CLI page.