6 stable releases
Uses new Rust 2024
| 1.1.0 | Dec 26, 2025 |
|---|---|
| 1.0.4 | Dec 13, 2025 |
| 1.0.3 | Dec 12, 2025 |
| 1.0.2 | Dec 11, 2025 |
| 1.0.1 | Dec 10, 2025 |
#1429 in Command line utilities
355KB
1.5K
SLoC
Systemctl Manager - TUI 🔧
A simple utility to interact with systemd services through a TUI, featuring handy shortcuts to make service management easier (Vim-Keys).

[!NOTE] This binary is primarily a learning project. While it works for my use case, its main purpose is educational.
[!WARNING] This project requires
systemdto be installed on your system.
Motivation
When I started using Linux, I got tired of typing the same commands repeatedly. As a newcomer, I created a small bash script with a hardcoded list of common services and a menu to run different commands.
This project is a re-implementation of that script in Rust, meant to help me learn more about the language and its ecosystem while also extending the original functionality.
Installation
Cargo
cargo install systemctl-manager
AUR
yay -S systemctl-manager
Usage
Use the sm binary to interact with systemd services. When you run the binary, a list of available services will be displayed with vim-like navigation.
[!NOTE] Operations that modify services (start, stop, restart, enable, disable) require
sudoprivileges. The application will prompt for your password when needed.
Key bindings: Key bindings:
- Navigate using arrow keys or vim-like keys (
j/k) - Press
i/a/I/Ato filter services by name - Press
/to search for text matches in the service list - Press
wto start the selected service - Press
eto stop the selected service - Press
rto reload the selected service - Press
tto restart the selected service - Press
yto enable the selected service - Press
uto disable the selected service - Press
Ctrl+qto quit the application
Exiting alternative modes:
- Press
Ctrl+corEscto dismiss the current mode - Press
Enterto confirm the current mode
Known Limitations
This is a custom implementation tailored to my own workflow, so there is plenty of room for improvement.
Feel free to fork the project, open issues, or contribute suggestions.
Missing Features
- Support for multiple selections
- Should operation keybindings be moved to a secondary menu to make the default message bar clearer?
Contributing
This is primarily a learning project, but contributions are welcome! Feel free to:
- Open issues for bugs or feature requests
- Submit pull requests
- Share feedback on the code
Acknowledgments
Built with:
License
MIT License
Dependencies
~2.9–7.5MB
~160K SLoC