ZurĂĽck zu den Updates
New releaseAug 21, 2026

wlctl v0.1.10

🛜 TUI zur Verwaltung von WLAN/Ethernet/VPN unter Linux mit Network Manager

Teilen

wlctl

WiFi TUI fĂĽr NetworkManager.

CI Crates.io Downloads License

demo

Warum

impala ist ein großartiges WiFi-TUI, aber es spricht mit iwd. Wenn deine Distribution bereits NetworkManager verwendet (die meisten tun das — GNOME, KDE, Ubuntu, Fedora, Pop, …), kannst du impala nicht einfach einsetzen, ohne den Stack auszutauschen. wlctl behält die Benutzeroberfläche von impala bei und richtet sie an NetworkManager, sodass es einfach neben dem funktioniert, was deine Desktop-Umgebung bereits tut.

Funktionen

  • Station- und Access-Point-Modi
  • WPA Enterprise (802.1X)
  • Mehrere Adapter – wähle aus, welchen du steuern möchtest, wechsle spontan
  • VPN-Verbindungen – ein-/ausschalten, Autoconnect verwalten und gespeicherte VPN-/WireGuard-Profile löschen, wie nmtui; ein aktiver Tunnel wird als Abzeichen oben rechts angezeigt
  • wlctl doctor – durchläuft rfkill, Treiber, Assoziation, IP, DHCP, Gateway, DNS, Internet
  • QR-Code teilen, versteckte Netzwerke, Geschwindigkeitstest
  • Vim-Tasten, jede Tastenkombination konfigurierbar

Installation

# crates.io
cargo install wlctl

# Arch (AUR)
yay -S wlctl-bin

# Nix (run without installing)
nix run github:aashish-thapa/wlctl

# from source
git clone https://github.com/aashish-thapa/wlctl && cd wlctl
cargo build --release

Unter NixOS fĂĽge den Flake als Input hinzu und verwende wlctl.packages.${system}.default, oder wirf ihn mit nix shell github:aashish-thapa/wlctl in eine Shell.

Benötigt laufenden NetworkManager. Nerd Fonts optional, für Symbole.

Nutzung

wlctl startet die TUI. wlctl doctor, wenn etwas kaputt ist und du wissen willst, auf welcher Ebene.

Global

AktionTaste
Panel wechselnTab / Shift+Tab
Bewegenj k / Pfeiltasten
Adaptermodus wechseln (Station ↔ AP)Ctrl+R
VPN-Verbindungenv
Beendenq / Ctrl+C
Pop-up schlieĂźenEsc

Bekannte Netzwerke

AktionTaste
Verbinden / TrennenLeertaste oder Eingabe
Automatisch verbinden umschaltent
Netzwerk vergessend
Diesen als Internetpfad festlegenu
Alle anzeigena
QR teilenp
Geschwindigkeitstest (benötigt speedtest-cli)Shift+S

Wenn sowohl WiFi als auch Ethernet aktiv sind, wird der Link, über den NetworkManager tatsächlich das Internet routet, grün hervorgehoben, und die Fußzeile der Box zeigt es an (󰖟 Internet: WiFi · <ssid>). Drücke u auf der Ethernet-Zeile oder dem verbundenen WiFi, um die Standardroute darauf zu ändern (der andere Link bleibt aktiv).

Die Fußzeile der Gerätebox zeigt die LAN-IP des aktiven Adapters an (z.B. 󰩟 wlan0 · 192.168.1.20), damit du dich per SSH verbinden kannst, ohne ip addr auszuführen.

Neue Netzwerke

AktionTaste
Verbinden / TrennenLeertaste oder Eingabe
Mit verstecktem verbindenh
Nach Name filtern/
Alle anzeigena

Drücke /, um die Scanliste während der Eingabe nach SSID zu filtern; Eingabe behält den Filter, Esc löscht ihn.

VPN-Verbindungen (öffnen mit v)

AktionTaste
Ein-/AusschaltenLeertaste oder Eingabe
Autoconnect umschaltena
Profil löschen (bestätige y/n)d
WireGuard-Konfiguration importiereni
SchlieĂźenEsc

Die zugewiesene IP und Betriebszeit des ausgewählten Tunnels werden unter der Liste angezeigt, solange er aktiv ist.

WireGuard-Konfigurationen importieren: Drücke i, dann füge die gesamte Konfiguration ein (die meisten Anbieter – Proton, Mullvad – geben dir einfach den Text) oder gib den Pfad zu einer .conf-Datei ein und drücke Eingabe. wlctl parst sie und erstellt ein NetworkManager-Profil – kein nmcli nötig. Eingefügte Konfigurationen werden nach dem Server-Endpunkt benannt; Dateiimporte nach dem Dateinamen. ~ wird in Pfaden expandiert. Das Profil wird ohne Autoconnect hinzugefügt; aktiviere es mit Eingabe. OpenVPN .ovpn-Dateien werden hier nicht unterstützt – importiere diese mit nmcli connection import type openvpn file <path> (erfordert das NetworkManager-openvpn-Plugin).

Gerätepanel

AktionTaste
Adapterinfoi
Stromversorgung umschalteno
Diagnose?

Station-Modus

AktionTaste
Scannens

Access-Point-Modus

AktionTaste
AP startenn
AP stoppenx

Konfiguration

~/.config/wlctl/config.toml. Alle Tasten sind neu belegbar.

switch = "r"
mode = "station"
esc_quit = false
vpn = "v"

[device]
infos = "i"
toggle_power = "o"
doctor = "?"

[station]
toggle_scanning = "s"

[station.known_network]
toggle_autoconnect = "t"
remove = "d"
show_all = "a"
share = "p"
speed_test = "S"
prefer = "u"

[station.new_network]
show_all = "a"
connect_hidden = "h"
filter = "/"

[access_point]
start = "n"
stop = "x"

vs. impala

impalawlctl
BackendiwdNetworkManager
Koexistiert mit Standard-Desktop-Netzwerkstackneinja
Multi-Adapter-Auswahl—ja
VPN-Verbindung umschalten—ja
doctor-Unterbefehl—ja

Danksagungen

Abgezweigt von pythops/impala. UI und Architektur stammen von ihnen.

Lizenz

GPLv3

Kategorien