matheus-git/systemd-manager-tui

A TUI application for managing systemd services.

Rust

1,590

393 commits

updated Oct 10, 2026

See the code

README

Systemd manager tui

rust

A TUI application for managing systemd services.

This tool allows you to manage systemd services with ease. You can view logs, list services, view properties, edit unit files, and control their lifecycle: start, stop, restart, mask, unmask, enable, and disable using the D-Bus API. It also supports Vim-like navigation. It is possible to navigate between system and user units and choose to list only running services or all units.

Quick Preview

screenshot_list

View screenshots

Usage

systemd-manager-tui

# With a filter
systemd-manager-tui -f docker

# Without watching system and user units for failure notifications
systemd-manager-tui -n
# or: systemd-manager-tui --no-notifications

Install

After installation, you can create an alias to make it easier to use.

sudo dpkg -i ./systemd-manager-tui_x.x.x-x_amd64.deb 

Download the .deb file from Releases

sudo dnf install ./systemd-manager-tui_x.x.x-x_x86_64.rpm

Download the .rpm file from Releases

Arch linux

yay -S systemd-manager-tui

https://aur.archlinux.org/packages/systemd-manager-tui

NixOS

nix run github:matheus-git/systemd-manager-tui

NixOS with flakes Read here

Binary

chmod +x systemd-manager-tui
./systemd-manager-tui

Download binary from Releases

Cargo

cargo install --locked systemd-manager-tui

Main libraries

  • ratatui - 0.29.0
  • zbus - 5.5.0

Testing

Run the regular test suite with:

cargo test

The regular suite includes unit, application-flow, and Ratatui rendering tests using TestBackend, so it does not require an interactive terminal or a running systemd instance.

Real integration tests against the system and user D-Bus buses are available as an opt-in suite. Run them on a systemd-based Linux host where the current user has an active user manager and both systemctl and systemd-run are available:

cargo test infrastructure::systemd_service_adapter::tests -- --ignored --test-threads=1

The integration suite reads real system units and creates an isolated transient user service to exercise lifecycle operations. The temporary service is stopped and cleaned up automatically. These tests are ignored during a regular cargo test so environments without systemd, such as many CI containers, continue to work.

Contributing

Contributions are welcome! Please open an issue or submit a pull request for any improvements or bug fixes.

📝 License

This project is open-source under the MIT License.

manager
rust
systemctl
systemd
tui

matheus-git/systemd-manager-tui

A TUI application for managing systemd services.

Rust

1,590

393 commits

updated Oct 10, 2026

See the code

README

Systemd manager tui

rust

A TUI application for managing systemd services.

This tool allows you to manage systemd services with ease. You can view logs, list services, view properties, edit unit files, and control their lifecycle: start, stop, restart, mask, unmask, enable, and disable using the D-Bus API. It also supports Vim-like navigation. It is possible to navigate between system and user units and choose to list only running services or all units.

Quick Preview

screenshot_list

View screenshots

Usage

systemd-manager-tui

# With a filter
systemd-manager-tui -f docker

# Without watching system and user units for failure notifications
systemd-manager-tui -n
# or: systemd-manager-tui --no-notifications

Install

After installation, you can create an alias to make it easier to use.

sudo dpkg -i ./systemd-manager-tui_x.x.x-x_amd64.deb 

Download the .deb file from Releases

sudo dnf install ./systemd-manager-tui_x.x.x-x_x86_64.rpm

Download the .rpm file from Releases

Arch linux

yay -S systemd-manager-tui

https://aur.archlinux.org/packages/systemd-manager-tui

NixOS

nix run github:matheus-git/systemd-manager-tui

NixOS with flakes Read here

Binary

chmod +x systemd-manager-tui
./systemd-manager-tui

Download binary from Releases

Cargo

cargo install --locked systemd-manager-tui

Main libraries

  • ratatui - 0.29.0
  • zbus - 5.5.0

Testing

Run the regular test suite with:

cargo test

The regular suite includes unit, application-flow, and Ratatui rendering tests using TestBackend, so it does not require an interactive terminal or a running systemd instance.

Real integration tests against the system and user D-Bus buses are available as an opt-in suite. Run them on a systemd-based Linux host where the current user has an active user manager and both systemctl and systemd-run are available:

cargo test infrastructure::systemd_service_adapter::tests -- --ignored --test-threads=1

The integration suite reads real system units and creates an isolated transient user service to exercise lifecycle operations. The temporary service is stopped and cleaned up automatically. These tests are ignored during a regular cargo test so environments without systemd, such as many CI containers, continue to work.

Contributing

Contributions are welcome! Please open an issue or submit a pull request for any improvements or bug fixes.

📝 License

This project is open-source under the MIT License.

manager
rust
systemctl
systemd
tui

Project health

Latest release

1.3.0 · Oct 10, 2026

Releases this year

8

Significant stargazers

(top 24 of 38)

Ismaël Mejía

207 followers · starred May 2026

Ryan Lahfa

471 followers · starred Mar 2026

Vitalii Kryvenko

95 followers · starred Apr 2025

Bruno P. Kinoshita

384 followers · starred Jul 2025