systemctl-tui: A Fast TUI for systemd Services and Logs

Summary
systemctl-tui is a fast and simple Text User Interface (TUI) designed for interacting with systemd services and their logs. Written in Rust, it allows users to quickly browse service status, view logs, and manage services like starting, stopping, or restarting them, all from a convenient terminal interface.
Repository Info
Tags
Click on any tag to explore related repositories
Introduction
systemctl-tui offers a fast and intuitive Text User Interface (TUI) for managing systemd services and reviewing their logs. Developed in Rust, this utility aims to simplify common system administration tasks by providing a streamlined, interactive terminal experience. It allows users to efficiently browse service statuses, view real-time logs, and perform actions such as starting, stopping, restarting, or reloading services, as well as viewing and editing unit files.
Installation
systemctl-tui is primarily designed for Linux environments, though it can function on WSL if systemd is enabled. Multiple installation methods are available:
Binary Release
For a quick setup, you can use the automated install script. Always verify scripts before piping them into your shell:
curl https://raw.githubusercontent.com/rgwood/systemctl-tui/master/install.sh | bash
By default, the script installs the binary to $HOME/.local/bin. You can change this by setting the DIR environment variable.
From Source (Rust)
If you prefer to build from source, ensure you have Rust installed. Then, choose one of the following:
- Run
cargo install systemctl-tui --locked - Clone the repository and build:
git clone https://github.com/rgwood/systemctl-tui.git cd systemctl-tui cargo build --releaseThe release binary will be located at
target/release/systemctl-tui.
Distro Packages
systemctl-tui is also available through various distribution package managers:
- Arch Linux: Install from the official repositories:
sudo pacman -S systemctl-tui - Nix: A package is available and can be installed with:
nix-shell -p systemctl-tui
Optional Setup
Consider these optional steps for enhanced usability:
- Alias
systemctl-tuitostfor quicker access. - Create a symlink to use
systemctl-tuiwithsudo:sudo ln -s ~/.cargo/bin/systemctl-tui /usr/bin/systemctl-tui
Examples
systemctl-tui provides a comprehensive, interactive view of your systemd services. Upon launch, it presents a list of services, their current status, and allows for easy navigation. Users can select a service to view its detailed status and real-time logs in a dedicated panel. The interface supports common actions like starting, stopping, restarting, and reloading services with simple keybindings. It also facilitates viewing and editing the underlying unit files, making it a powerful tool for quick diagnostics and configuration adjustments. The integrated help screen, accessible within the TUI, clearly outlines all available commands and shortcuts.
Why Use It
For anyone regularly interacting with systemd services, systemctl-tui offers significant advantages over the traditional command-line systemctl utility. Its TUI provides an immediate visual overview of service statuses, eliminating the need to repeatedly type commands. The ability to view live logs, manage services, and edit unit files from a single, responsive interface greatly enhances productivity and simplifies troubleshooting. Written in Rust, it benefits from excellent performance and reliability, making it a robust addition to any Linux administrator's toolkit.
Links
- GitHub Repository: https://github.com/rgwood/systemctl-tui
- Crates.io: https://crates.io/crates/systemctl-tui
- GitHub Releases: https://github.com/rgwood/systemctl-tui/releases
- Repology Packaging Status: https://repology.org/project/systemctl-tui/versions