Profile
Back to NewsBack
GitHub Trending 2 min
Reader Mode
kainctl/isd: isd (interactive systemd) – a better way to work with systemd units

kainctl/isd: isd (interactive systemd) – a better way to work with systemd units

4 hours ago

isd – interactive systemd

isd logo

isd – a better way to work with systemd units

Simplify systemd management with isd! isd is a TUI offering fuzzy search for units, auto-refreshing previews, smart sudo handling, and a fully customizable interface for power-users and newcomers alike.

isd is a keyboard-focused, highly customizable TUI with the following features:

  • Quickly switch between system and user units
  • Fuzzy search units
  • Auto refresh previews
  • Quickly open outputs in a pager or editor
  • Auto sudo prefixing if required
  • Auto rescale depending on terminal window size (fluid design)
  • Extensive command palette with many keyboard shortcuts
  • Fully configurable keybindings
  • Optional input state caching for common inputs
  • Theme support
  • YAML configuration file _with auto-complete_

Demo

https://github.com/user-attachments/assets/a22868c0-fc01-4973-86ea-410b80b188a8

Click here for a higher quality recording.

Documentation

The documentation is live at:

Installation

The tool can be installed via uv, nix, and as an AppImage. Refer to the official installation documentation for more details.

Acknowledgments

Big thanks to the developers of:

  • systemd for creating the most widely used service manager for Linux
  • NixOS for piquing my interest in systemd and service managers
  • sysz for providing a starting point and a desire to build a more complex systemctl TUI
  • textual for making it a breeze to create TUIs in Python
  • Zensical for building a solid and simple to use static site generator for the documentation
  • asciinema for developing an easy to use _and self-hostable_ terminal recorder and player
  • vhs for creating a scriptable terminal program
  • posting for showing me how to use textual

Star history ⭐

Star History Chart</a>
Chat with me