nina
NixOS is powerful, but it can be a lot. Nina keeps the whole workflow — packages, options, rebuilds, services, remote machines — right at the prompt. Written in Zig, zero dependencies.
TIMELINE 179 saves
ATLAS 25 files ⇓ bundle
HISTORY 179 saves
details
nina
NixOS Intuitive Navigation Assistant — by Asha Software
Nina wraps the full NixOS workflow in plain, memorable commands. Packages, rebuilds, generations, services, flakes, remote machines — all at the prompt, all fast.
install
nix profile add https://kepr.uk/nina/archive/HEAD.tar.gz
koh steal kepr.uk/nina && koh build
Experimental features nix-command and flakes are required
the commands
apply rebuild and switch
back roll back one generation
go <n> switch to generation n
history list all generations
clean remove old generations
search <q> find packages
install <pkg> add to profile or system
remove <pkg> remove from profile or system
try <pkg> test without installing
list show installed packages
edit open configuration.nix
check validate config
diff changes between generations
status machine health
update refresh channels
upgrade update and rebuild
log operation history
doctor diagnose issues
mood plain-language health
develop enter dev shell
flake flake management
build build a package
run run without installing
service manage services
store nix store tools
channel manage channels
profile user profile packages
info system information
boot boot entries
fmt format configuration.nix
repl nix repl with nixpkgs
option <q> search nixos options
pkg inspect packages
pin pin flake inputs
hash compute nix hash
fetch fetch and hash a url
goodbye uninstall nina
hello list machines
help this message
search ♡
nina search opens an inline widget — no fullscreen takeover, no alternate screen. Results stay below your prompt. Navigate with arrow keys, stop typing and results update, press Tab for package details.
:: search nixpkgs ripgrep 8 results
> ripgrep 15.1.0 Utility that combines the usability of The Silver Searcher
ripgrep-all 0.10.10 Ripgrep, but also searches PDFs, E-Books, Office docs
batgrep ... Search through files using ripgrep
ripgrep 15.1.0
Utility that combines the usability of The Silver Searcher with the raw speed of grep
attr pkgs.ripgrep
[enter] install [tab] info [up/down] nav [esc] cancel
Press Tab on any result to see its homepage and license. Press Enter to install — Nina asks whether you want it in your profile (instant, no rebuild) or system config.
Search uses nix search nixpkgs directly. No external API. Works offline after your first channel update. If you mistype a package name, Nina will suggest the closest match.
multi-machine
Any command runs on a remote machine with --on <name>. Configure in ~/.nina.conf:
[machine]
name = kyoshi
config = /etc/nixos
local = true
default = true
[machine]
name = azula
host = azula
user = june
ssh_key = ~/.ssh/id_ed25519
nina apply --on azula
nina service logs ollama --on azula
nina status --all
:: status
kyoshi gen 136 1h ago 10.2 GB
azula gen 42 3h ago 18.4 GB
config
~/.nina.conf — plain text, no surprises:
editor = hx
generations = 5
confirm = true
teach = false
color = true
[machine]
name = my-machine
config = /etc/nixos
local = true
default = true
teach = true shows the underlying nix command after each operation — useful if you're learning NixOS or just curious what nina is actually running.
Pink :: marks Nina's voice. Green for success. Red for errors. Yellow for warnings. Color turns off automatically when output is piped. Respects NO_COLOR.
nina.asha.software — turning NixOS into a friendlier place to live