synh8 0.1.1

A synaptic-inspired TUI for managing APT packages on Debian/Ubuntu. Linux only.
Documentation

synh8

A Synaptic-inspired TUI for managing APT packages on Debian/Ubuntu systems, built with Rust and ratatui.

Linux only. Requires libapt-pkg-dev and root privileges.

Built with LLMs. See LLM.md.

Features

  • Browse, search, install, upgrade, and remove packages from the terminal
  • Full-text search (FTS5) across package names and descriptions
  • Vim-style navigation and visual mode for batch-marking packages
  • Automatic dependency resolution with preview before committing
  • Live progress display for downloads and installs
  • Run apt update with real-time download progress
  • Configurable columns and sort order
  • Changelog viewer

APT locking

Unlike apt, aptitude, and synaptic, synh8 does not hold the dpkg/APT lock while running. It checks the lock on startup and before committing changes, but does not prevent other tools from modifying package state while the UI is open. If you run apt install in another terminal while synh8 is open, synh8 won't notice. You're root. You know what you're doing.

Usage

Must be run as root:

sudo synh8

Keybindings

Arrow keys, PgUp/PgDn, Home/End act on the focused pane. Tab/Shift+Tab cycles focus between Filters, Packages, and Details.

Key Context Action
s Global Search
u Global Run apt update
F2 Global Settings (columns, sort)
Esc Global Clear search / cancel visual mode
Space Packages Toggle mark
v Packages Visual mode (multi-select)
c Packages View changelog
a Packages Apply pending changes
x Packages Mark all upgradable
z Packages Unmark all
,/. Details Switch tab (Info/Deps/RDeps)
q Any Quit

Installation

sudo apt install libapt-pkg-dev
cargo install synh8

Or build from source:

sudo apt install libapt-pkg-dev
git clone https://github.com/folknor/synh8.git
cd synh8
cargo build --release

License

MIT