oh-my-posh -> starship, and niri binds shed their arrows #106

Merged
lament merged 3 commits from matugen into main 2026-07-22 12:35:20 -05:00
Owner
  • oh-my-posh -> starship as the prompt, fleet-wide - posh.nix deleted, new homeModules/shell/starship.nix, swapped in core.nix (servers) and homeConfigurations/ishtar.nix (standalone HM)
    • the module only wires shell-init + package + STARSHIP_CONFIG - settings = { } so HM writes no config file, because the actual starship.toml is managed per-host (noctalia injects into it, see below)
    • dotfiles/starship/starship.toml is the shared prompt body - two-line format, os/user/host/dir/git left + time right, nix_shell snowflake, cmd_duration/memory_usage on the right. styles reference palette names, never hex
    • git_status shows working changes as +$count green, not !N dirty - jj auto-snapshots, so unstaged edits are present, not "modified"
  • the palette = "noctalia" block is deliberately not in starship.toml (starship has no include), resolved per-host by disk ownership - same split as bat/btop/zen
    • servers: users/lament.nix writes a read-only xdg.configFile."starship.toml" = shared body + palette-catppuccin.toml (a fixed Catppuccin Mocha block mirroring the names noctalia's template emits, so a headless box renders the same prompt)
    • ishtar: a seedStarship HM activation rewrites the body from the repo every switch while preserving any [palettes.noctalia] block noctalia injected between its markers - so just home never leaves a body-less file (starship would read that as default -> blank prompt) and the live matugen palette survives. not a repo symlink: noctalia writing a tracked file would churn the repo per wallpaper
  • niri binds shed the arrow-key duplicates (config.kdl, mutable) - focus/move/monitor actions are vim hjkl only now, arrows dropped
    • numbered workspaces (Mod+1..5, Mod+Shift+1..5) -> relative Mod+Shift+U/I -> move-column-to-workspace-{down,up}, matching the existing Mod+U/I workspace-nav
  • nushell.nix comment repointed oh-my-posh -> starship (the prompt it auto-wires on nu enable)

left for later:

  • nushell still parked as an on-demand trial, not committed
- `oh-my-posh` -> `starship` as the prompt, fleet-wide - `posh.nix` deleted, new `homeModules/shell/starship.nix`, swapped in `core.nix` (servers) and `homeConfigurations/ishtar.nix` (standalone HM) - the module only wires shell-init + package + `STARSHIP_CONFIG` - `settings = { }` so HM writes **no** config file, because the actual `starship.toml` is managed per-host (noctalia injects into it, see below) - `dotfiles/starship/starship.toml` is the shared prompt **body** - two-line format, os/user/host/dir/git left + time right, `nix_shell` snowflake, `cmd_duration`/`memory_usage` on the right. styles reference palette *names*, never hex - `git_status` shows working changes as `+$count` green, not `!N` dirty - jj auto-snapshots, so unstaged edits are *present*, not "modified" - the `palette = "noctalia"` block is deliberately **not** in `starship.toml` (starship has no `include`), resolved per-host by disk ownership - same split as `bat`/`btop`/`zen` - servers: `users/lament.nix` writes a read-only `xdg.configFile."starship.toml"` = shared body + `palette-catppuccin.toml` (a fixed Catppuccin Mocha block mirroring the names noctalia's template emits, so a headless box renders the same prompt) - `ishtar`: a `seedStarship` HM activation rewrites the body from the repo every switch while **preserving** any `[palettes.noctalia]` block noctalia injected between its markers - so `just home` never leaves a body-less file (starship would read that as default -> blank prompt) and the live matugen palette survives. not a repo symlink: noctalia writing a tracked file would churn the repo per wallpaper - niri binds shed the arrow-key duplicates (`config.kdl`, mutable) - focus/move/monitor actions are vim `hjkl` only now, arrows dropped - numbered workspaces (`Mod+1..5`, `Mod+Shift+1..5`) -> relative `Mod+Shift+U`/`I` -> `move-column-to-workspace-{down,up}`, matching the existing `Mod+U`/`I` workspace-nav - `nushell.nix` comment repointed `oh-my-posh` -> `starship` (the prompt it auto-wires on nu enable) left for later: - nushell still parked as an on-demand trial, not committed
more niri things!
All checks were successful
CI / check (pull_request) Successful in 58s
CI / deploy (pull_request) Has been skipped
CI / build (pull_request) Successful in 2m33s
CI / dry-activate (pull_request) Successful in 1m21s
CI / check (push) Has been skipped
CI / build (push) Has been skipped
CI / dry-activate (push) Has been skipped
CI / deploy (push) Successful in 2m50s
f3c76b83a3
lament scheduled this pull request to auto merge when all checks succeed 2026-07-22 12:30:34 -05:00
lament merged commit f3c76b83a3 into main 2026-07-22 12:35:20 -05:00
lament deleted branch matugen 2026-07-22 12:35:20 -05:00
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Reference
lament/pantheon!106
No description provided.