nixos intuitive navigation assistant

nina

turning nixos into a cozier place to live ♡

NixOS is powerful, but it can be a lot. Nina keeps the whole workflow — packages, options, rebuilds, services, remote machines — right at the prompt.

start with one of these
nix profile add github:hopeineveryline/nina
nix run github:hopeineveryline/nina

Install once, or borrow her for a run first.

inline package search

search · option · install · try · copy

prompt-native install recovery

fuzzy install · stays at the prompt

watch the machine breathe

status · service list · logs

stay steady across boxes

apply --on · status --all · clean

search.nixos.org, but you never have to leave the terminal

Nina pulls up a little inline menu with the package info and actions you'd normally have to hunt for separately.

june@kyoshi ~ nina

no more memorizing nix incantations

Nina wraps the flake workflow in plain, predictable verbs. See what a flake offers, step into a dev shell, or build outputs — all without context-switching.

nina flake show

Inspect any flake's outputs — packages, apps, dev shells, NixOS modules — without reading the source.

inspect · outputs

nina develop

Enter a dev shell with all dependencies ready. No manual nix develop flags to remember.

dev shells

nina build

Build any flake output. Results linked locally as ./result. Clean and predictable.

build · outputs

nina flake update

Update lock files without hunting for the right --update-input syntax.

update · locks
$ nina flake show
✦ what this flake offers
packages: default nina
apps: default nina
devShells: cargo rustc pkg-config
$ nina develop
✦ entering dev shell
· flake devShell: default
· type exit when you want your regular shell back
✓ shell spawned

one steady tool for the work nixos keeps throwing at you

She handles the parts of NixOS that used to mean switching tabs, hunting for package names, and reading through config docs — all from one warm, consistent prompt.

inline package + option search

Search stays attached to the prompt instead of taking over the whole terminal. Browse nixpkgs, preview NixOS options, install, try, or copy — all without leaving your flow.

search · option · install · try

prompt-native install recovery

Misspelled or fuzzy installs recover inline with a compact selector — no fullscreen app, no context switch.

install · remove · try · list

system changes, without the cliff edge

Preview a change, test it, apply it, or roll back without switching mental models halfway through the job.

diff · test · apply · back

remote boxes still feel local

When you move from your laptop to a server, Nina keeps the verbs steady, right through deploys, storage cleanup, and machine-wide checks.

apply --on · status --all · clean

a few good verbs to keep nearby

These are the ones you'll reach for on a normal NixOS day.

search + install at the prompt

Inline package search, option search, and install that recovers from typos without dropping you into a separate screen.

nina searchnina optionnina installnina remove

change the machine

Diff, test, apply, or roll back — with backup, diff preview, and automatic rollback if something goes wrong.

nina diffnina checknina applynina back

flakes and dev shells

See what a flake exposes, step into a dev shell, build outputs, and manage flake lifecycle.

nina flake shownina developnina buildnina flake

system inspection and care

Check status, manage services, inspect the store, profile packages, and keep the machine clean.

nina statusnina servicenina storenina clean

generation and history browsing

Go back to any generation, compare two, see what changed, or delete old ones.

nina gonina historynina gennina log

machine config and editing

Edit configuration.nix safely, get system info, manage channels, and run across machines.

nina editnina infonina channelnina boot

package and profile tools

Inspect package metadata, deps, and closures. Manage user profiles and temporary pins.

nina pkgnina profilenina pinnina unpin

remote machine support

Any command can run on a remote machine via SSH with `--on <machine>`. Health checks across the fleet.

nina moodnina hellonina status --allnina doctor

A small shelf, but a useful one.

same voice, even over ssh

Nina keeps remote work from turning into a whole new personality. Same verbs, same little reassurances, same sense of where you are.

kyoshi local · /etc/nixos local default
gen 348 · 3m ago
azula june@azula · ~/.ssh/id_ed25519 ssh
gen 192 · 14m ago
nina apply --on azula nina service logs ollama -f nina status --all

she tells you how she feels!

Nina has little feelings she shows at the prompt. A calm dango when things are fine, a happy bounce after a clean apply, a sad slump when something needs attention. It's a small thing, but it makes the terminal feel a little less lonely.

idle
happy
sad
sweep
dance

she's ready when you are

Put her in your profile once and she'll be there every time you open a terminal. Or just borrow her for a run first — no commitment needed.

# keep nina in your profile
nix profile install github:hopeineveryline/nina
# or just borrow her for one run
nix run github:hopeineveryline/nina
♡ hi, i’m nina
♡ tell me what you want to do with nix
flake-friendly · nixos 24.05+