117 lines
2.1 KiB
Markdown
117 lines
2.1 KiB
Markdown
---
|
|
publish: true
|
|
permalink: /apps/impala
|
|
title: impala
|
|
created: 2026-02-05T09:36:55.334-07:00
|
|
modified: 2026-02-05T12:16:17.110-07:00
|
|
tags:
|
|
- wifi
|
|
- network
|
|
- terminal
|
|
cssclasses: ""
|
|
---
|
|
|
|
impala is a TUI for managing WiFi on Linux using iwd as the backend. Much nicer than `iwctl` for day-to-day WiFi management.
|
|
|
|
## Installation
|
|
|
|
**Arch Linux:**
|
|
```bash
|
|
sudo pacman -S impala
|
|
```
|
|
|
|
**Cargo:**
|
|
```bash
|
|
cargo install impala
|
|
```
|
|
|
|
## Prerequisites
|
|
|
|
- **iwd** must be running (not wpa_supplicant)
|
|
- NetworkManager should use iwd backend (see [[10-19 LIFE/13 TECH SETUP/13.13 OS SETUP/Network]])
|
|
- Nerd Fonts (optional) for icons
|
|
|
|
## Usage
|
|
|
|
```bash
|
|
impala
|
|
```
|
|
|
|
### Key Bindings
|
|
|
|
| Key | Action |
|
|
|-----|--------|
|
|
| `j/k` | Navigate up/down |
|
|
| `Enter` | Connect to network |
|
|
| `d` | Disconnect |
|
|
| `r` | Refresh networks |
|
|
| `s` | Scan for networks |
|
|
| `a` | Toggle Access Point mode |
|
|
| `q` | Quit |
|
|
|
|
### Connecting to Networks
|
|
|
|
1. Launch `impala`
|
|
2. Navigate to network with `j/k`
|
|
3. Press `Enter` to connect
|
|
4. Enter password if prompted
|
|
|
|
### Hidden Networks
|
|
|
|
Press `/` to search/enter a hidden network SSID.
|
|
|
|
### WPA Enterprise (802.1X)
|
|
|
|
impala supports enterprise authentication. Select the network and follow prompts for username/password or certificate.
|
|
|
|
### QR Code Sharing
|
|
|
|
Press `Q` on a connected network to display a QR code for sharing credentials.
|
|
|
|
## Configuration
|
|
|
|
Config file: `~/.config/impala/config.toml`
|
|
|
|
```toml
|
|
[keybindings]
|
|
quit = "q"
|
|
scan = "s"
|
|
connect = "Enter"
|
|
disconnect = "d"
|
|
|
|
[appearance]
|
|
# Uses terminal colors by default
|
|
```
|
|
|
|
## Integration
|
|
|
|
### Ashell
|
|
|
|
In ashell config, use impala for WiFi management:
|
|
```toml
|
|
[settings]
|
|
wifi_more_cmd = 'kitty -e bash -c "impala"'
|
|
```
|
|
|
|
### Hyprland keybind
|
|
|
|
```bash
|
|
bind = $mainMod, W, exec, kitty -e impala
|
|
```
|
|
|
|
## Troubleshooting
|
|
|
|
### "iwd not running"
|
|
|
|
```bash
|
|
sudo systemctl enable --now iwd
|
|
```
|
|
|
|
### Conflicts with NetworkManager
|
|
|
|
NetworkManager must use iwd as backend, not wpa_supplicant. See [[10-19 LIFE/13 TECH SETUP/13.13 OS SETUP/Network#NetworkManager + iwd]].
|
|
|
|
## Resources
|
|
|
|
- GitHub: https://github.com/pythops/impala
|