Files
quartz/content/10-19 LIFE/13 TECH SETUP/13.11 APPS/impala.md
Quartz Syncer 125a9b1752
All checks were successful
Build and Deploy Quartz / build (push) Successful in 26s
Published multiple files
2026-02-05 09:53:27 -07:00

117 lines
2.1 KiB
Markdown

---
publish: true
permalink: /10-19 LIFE/13 TECH SETUP/13.11 APPS/impala.md
title: impala
created: 2026-02-05T09:36:55.334-07:00
modified: 2026-02-05T09:41:11.146-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