Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Installation

virsh-tui runs on Linux. It needs the libvirt client tools at run time and a Rust toolchain to build.

Requirements

ToolPackage (Debian/Ubuntu, Fedora, Arch)Used for
virshlibvirt-clients, libvirt-client, libvirteverything (required)
virt-installvirtinst, virt-install, virt-installthe new domain wizard
virt-viewervirt-viewerthe graphical viewer (v)
ipiproute2host interfaces in the Networks view

A terminal with truecolor support gives the best result. On terminals without it, virsh-tui falls back to the xterm 256-colour palette. The layout needs at least 100 columns by 30 rows; 153 columns or more gives the side-by-side layout shown in the screenshots.

A font with box-drawing and braille characters is needed for the borders and graphs. Most modern monospace fonts have them (Fira Code, JetBrains Mono, DejaVu Sans Mono, Iosevka).

Build from source

You need Rust 1.88 or newer. Install it with rustup if your distribution ships an older version.

cargo install --locked --git https://github.com/SyscallBrain/virsh-tui

This puts the virsh-tui binary in ~/.cargo/bin. To build from a clone instead:

git clone https://github.com/SyscallBrain/virsh-tui
cd virsh-tui
cargo build --release
./target/release/virsh-tui --demo

Permissions

virsh-tui runs virsh as your user, so it sees exactly what virsh sees.

  • For qemu:///system, your user must be allowed to manage the system daemon. On most distributions that means being in the libvirt group: sudo usermod -aG libvirt "$USER", then log out and back in.
  • qemu:///session needs no extra rights; it manages the per-user daemon.
  • For remote hosts (qemu+ssh://user@host/system), set up key-based SSH login first. virsh-tui cannot answer password prompts.

Check that virsh -c qemu:///system list --all works in a shell before starting virsh-tui. If it does not, see Troubleshooting.