mullvad-tui is a terminal user interface for Mullvad VPN that implements most of the GUI features for headless servers or l33t h4x0rs who just don't want to use a GUI. It includes mouse support.
The mullvad daemon protocol may drift across versions, and the mullvad Rust API is very strict. mullvad-tui has a compatibility shim, but it is still recommended to update mullvad-tui and the mullvad app/daemon around the same time.
Download the latest release from the releases page.
Currently published packages:
rpmfile for Fedora/RHELdebfile for Debian/Ubuntutar.gzfile with a statically-linked binary for any other Linux distro
For Arch Linux, there are AUR packages:
mullvad-vpnmullvad-vpn-bin
git clone --recurse-submodules https://github.com/d10n/mullvad-tui.git
cd mullvad-tuiThe mullvadvpn-app/ submodule is used for the daemon RPC client and types. If you cloned without --recurse-submodules, run git submodule update --init --recursive.
cargo buildThe binary output is at target/debug/mullvad-tui.
make staticThe static binary output is at target/crt-static/x86_64-unknown-linux-gnu/release/mullvad-tui.
Quality gate:
cargo fmt --all --check
cargo clippy --all-targets --all-features -- -D warnings
cargo test --all-targetsTo run a focused test:
cargo test -p mullvad-tui maps_navigation_keys -- --nocapture- Copyright d10n and any potential future contributors (see AUTHORS).
- Licensed under
GPL-3.0-or-later. See./LICENSES/GPL-3.0-or-later.txt.
