A rofi based dynamic menu applet to manage Wi-Fi using NetworkManager nmcli.
Inspired by rofi-wifi-menu and the GOAT Catppuccin rofi theme.
- A daemon to run Wi-Fi scans managable by an external tool (like Waybar)
- Main menu to enable/disable Wi-Fi, manually trigger a scan and open a submenu to manage known networks
- Submenu to manage known networks (control autoconnect, forget network)
- rofi
- NetworkManager
- Iosevka Nerd Font (or any other Nerd Font you prefer)
- libnotify compatible notification daemon (dunst, mako,...)
- GNU Coreutils and gawk
Clone the repo and copy its contents to wherever u prefer. Ideally add its scripts
directory to your PATH
as well.
Run wifimenu
.
You can use an external tool (eg. Waybar) to periodically perform a Wi-Fi scan using wifidaemon
. wifidaemon
prompts nmcli
to scan for available Wi-Fi stations and gather information about current Wi-Fi connection. wifimenu
uses this data to render it in its menu.
You do not have to periodically scan using wifidaemon
tho. wifimenu
starts a scan when run if no Wi-Fi scan was performed in the last 30s. This scan timeout can be set by a wifidaemon_timeout
environment variable
eg.
# .bashrc/.zshrc
export wifidaemon_timeout=60#s
You can find the theming .rasi files in the config
directory.
.
└── config
├── colors.rasi # color scheme
├── font.rasi # font setting
├── pwd.rasi # password prompt theme
└── wifimenu.rasi # main menu and submenu theme