iwgtk is a wireless networking GUI for Linux. It is a front-end for iwd (iNet Wireless Daemon), with supported functionality similar to that of iwctl. Features include viewing and connecting to available networks, managing known networks, provisioning new networks via WPS or Wi-Fi Easy Connect, and an indicator (tray) icon displaying connection status and signal strength.
Launch the application window: iwgtk
Launch the indicator daemon: iwgtk -i
The most common use case for iwgtk is to start the indicator daemon every time
you log into your desktop. If your desktop environment supports the XDG
autostart standard, this should happen automatically due to the
iwgtk-indicator.desktop
file which is placed in /etc/xdg/autostart/
during
installation.
A systemd unit file to start the indicator daemon is also provided. If your
distro uses systemd and your desktop environment supports systemd's
graphical-session.target
unit, then iwgtk can be started at the beginning of
every desktop session by enabling the iwgtk.service
unit.
Icon colors and other options can be customized by editing the application's
configuration file. The system-wide configuration file is located at
$(sysconfdir)/iwgtk.conf
. $(sysconfdir)
is usually either /etc
or
/usr/local/etc
, depending on your build-time prefix
setting. iwgtk.conf
can be copied to ~/.config/iwgtk.conf
if desired, in which case the
system-wide configuration file will be ignored. For further instructions, please
see man 5 iwgtk
and refer to the comments in iwgtk.conf
.
- iwd (>= 1.29)
- gtk4 (>= 4.6)
- libqrencode
- adwaita-icon-theme (or an equivalent icon package)
- meson (>= 0.60.0)
- scdoc
To build iwgtk and install to /usr/local
, run:
meson setup build
cd build
meson compile
sudo meson install
To install to /usr
instead of /usr/local
, replace meson setup build
with:
meson setup --prefix=/usr build
iwgtk's icon should show up on any system tray which supports the StatusNotifierItem API. If your tray only supports the older XEmbed API, then a compatibility layer such as snixembed is required.
The following trays support StatusNotifierItem:
- KDE Plasma
- swaybar
- xfce4-panel (must be built with the optional libdbusmenu-gtk3 dependency)
The following trays only support XEmbed, and require a compatibility layer:
- AwesomeWM
- i3bar
As of iwd 1.23, membership in either the netdev
or wheel
group is required
to control iwd:
# usermod -a -G netdev YOUR_USER_ACCOUNT
If no netdev
group exists on your system, then you'll need to create it prior
to running the above usermod
command:
# groupadd netdev
Copyright 2020-2023 Jesse Lentz jesse@twosheds.org and contributors (see below)
iwgtk is licensed under the GPL version 3 or later.
The application icon is from the wifi states collection by i cons from the Noun Project. This icon is licensed under the Creative Commons BY license.
- Jove Yu
- Jaron Viëtor (Thulinma)
- tinywrkb
- Érico Nogueira Rolim
- VaguePenguin
- Andrew Benson
- Alex Piechowski (grepsedawk)
- Luigi Baldoni