i made a gui for the one linux command i used every day

dev · Jan 16, 2026 · 1 min read

every linux machine i touched used the same command: update the system. it is powerful, it is long, and i could never remember the flags in the right order.

so i wrote one button for it.

the honest scope

it is a small gui around a package manager. it shows the available updates, lets you pick, shows a log, and tells you when it wants a reboot. that is it.

what i actually learned

  • the hard part is never the button. it is the failure states: no network, a held package, a mirror that is down, a lock file left behind by a crash
  • never run the update from a gui without a log. if the user is going to press one button, that button owes them a way to read what happened
  • "partially upgraded systems" is a real state and your ui has to have a screen for it
  • the gui is not the product. the transaction is the product, the gui is the convenience

the part i am proudest of

it refuses to run as root silently. if the update needs privileges, it tells you exactly what it needs and why, instead of asking for everything up front.

it is not a big project. it is the first one i finished, and i have started about nine others.