Home

Awesome

<div align="center"> <h2> TUI for managing wifi </h2> </div>

πŸ“Έ Demo

πŸ’‘ Prerequisites

A Linux based OS with iwd installed.

[!NOTE] You might need to install nerdfonts for the icons to be displayed correctly.

πŸš€ Installation

πŸ“₯ Binary release

You can download the pre-built binaries from the release page release page

πŸ“¦ crates.io

You can install impala from crates.io

cargo install impala

🐧Arch Linux

You can install impala from the official repositories with using pacman.

pacman -S impala

Nixpkgs

nix-env -iA nixpkgs.impala

βš’οΈ Build from source

Run the following command:

git clone https://github.com/pythops/impala
cd impala
cargo build --release

This will produce an executable file at target/release/impala that you can copy to a directory in your $PATH.

πŸͺ„ Usage

Global

Tab or Shift + Tab: Switch between different sections.

j or Down : Scroll down.

k or Up: Scroll up.

ctrl+r: Switch adapter mode.

?: Show help.

esc: Dismiss the different pop-ups.

q or ctrl+c: Quit the app.

Device

i: Show device information.

o: Toggle device power.

Station

s: Start scanning.

Space: Connect/Disconnect the network.

Known Networks

a: Enable/Disable auto-connect.

d: Remove the network from the known networks list.

Access Point

n: Start a new access point.

x: Stop the running access point.

Custom keybindings

Keybindings can be customized in the config file $HOME/.config/impala/config.toml


switch = "r"
mode = "station"

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

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

[station]
toggle_scanning = "s"
toggle_connect = " "

[station.known_network]
toggle_autoconnect = "a"
remove = "d"

βš–οΈ License

GPLv3