Released: nixmate — a TUI for managing NixOS

Hey everyone,

I built nixmate, a terminal UI that brings together the NixOS tools I found myself using daily but scattered across different commands.

10 modules: generations (browse/diff/delete/pin), error translator (50+ patterns with AI fallback), services (systemd + Docker + Podman), storage (store analysis + GC), config showcase (SVG poster + architecture diagram), options explorer, rebuild dashboard with live progress, flake input manager, package search, and a health checker.

Also works as a pipe: nixos-rebuild switch 2>&1 | nixmate

13 themes, EN/DE, works over SSH.

Try it: nix run github:daskladas/nixmate

Repo: GitHub - daskladas/nixmate: All your NixOS tools in one TUI — generations, rebuilds, services, errors, and more.

Written in Rust, MIT licensed. First release (v0.7.0), so rough edges are expected — feedback and issues very welcome!

2 Likes

forgive me for making assumptions, but for transparency, is this like some vibe coding type of thing?

edit: the OP DM’d me stating their account seemed unable to respond to threads yet, tho for transparency, let me note my experience with this tool here.

i guess checking the readme and trying it out things felt a bit unnatural, maybe not even just for the llm-reminiscent use of emoji in the docs, but just the polish ratio between the ‘marketing side’ (readme, mascot, emojis) vs program UX (+ low commit count) felt… less like what a programmer would produce, i guess. the tendency to key-binds far from the home row (F-keys, number keys), the high level of apparent features while quite some did not actually work for me, things just felt a bit off, i guess.

i hadn’t tried the error translator yet, tho maybe i’m not the target audience for feedback on that one anymore, as a user since (minus a year) 2018 now.

on a non-flake nixos configuration located outside /etc/nixos, my experience was:

  • 1 generations: packages/diff tabs showed none
  • 2 error translator: did not try, i’m mostly used to the error messages now
  • 3 services & ports: i found ports here (normally using netstat -tulpn), but no services seemed listed
  • 4 storage: this showed me i didn’t need to clean up, so i did not try further
  • 5 showcase: this generated images, but i felt i did not need this
  • 6 this seemed to work and seemed useful-ish
  • 7 rebuild: i did not try this (i was used to setting NIX_PATH’s nixos-configuration to my path outside /etc/nixos, hadn’t bothered checking if i’d set it declaratively yet)
  • 8 flake inputs: did not try as my nixos config is not flaked-based
  • 9 package search: not working (i normally use nps)
  • 0 doctor: did not try, no issues to remedy
14 Likes
  • 1 generations: worked nice for me
  • 2 error translator: did crash for me
  • 9 package search: did crash for me
3 Likes

This does look vibe coded. Can we get a disclosure about AI involvement and what verifications were done, if used?

2 Likes

There is a disclosure at the bottom of the README:

This project uses AI-assisted development. All code is reviewed, tested, and maintained by a human.

Regardless, my spidy senses tingled at the claims alone. The brave new world is tiring.

6 Likes

I think we should ban vibe coded projects on discourse at this point. The amount of slop is getting really tiring. Because it takes a lot of mental energy only to figure out you’re being conned. It’s extremely disrespectful for people’s time.

46 Likes

This is kind of off-topic here (I’ll open a discussion on this some time soon), but I think the times where we allow anyone to make an announcement about anything without any prior community vetting might be coming to an end. Our “announcements” category currently is the local equivalent to “everyone gets #1 on Hacker News regardless of votes” and maybe that’s not for the best

14 Likes

Hey, thanks for the feedback — couldn’t reply earlier due to account restrictions.

To be transparent: yes, I used AI extensively during development. The AI disclosure in the README was added the same day it was raised here — I hadn’t considered how important that transparency is. Lesson learned.

Since then, reported issues have been fixed — crashes in error translator and package search, config path support, and keybind visibility. Details in the v0.7.3 changelog.

I’m learning Nix and Rust, and I’m here long-term. Feedback is always welcome, here or on GitHub.

1 Like