Iwd
iwd is a newer WiFi backend for handling access point association and authentication, and is meant to replace wpa_supplicant
.
Network discovery and roaming tend to be more reliable with iwd
when compared to wpa_supplicant
. iwd
is capable of performing network scans, and can more quickly reconnect to known networks after resume. It is also capable of band steering when the same SSID is available on different frequencies, choosing the fastest frequency if signal strength is above some configurable threshold. wpa_supplicant
is not capable of doing this, and popular higher level software (e.g. NetworkManager) may not be capable of doing this either.
Installation
postmarketOS will use iwd as the default WiFi backend in the future. In the meantime, this backend can be used easily in postmarketOS (as of pmaports!4564) in two ways:
- selecting it at the
pmbootstrap init
prompt and building a custom image afterwards:
$ pmbootstrap init ... (025339) [14:19:48] Available providers for postmarketos-base-ui-wifi (2): (025339) [14:19:48] * wpa_supplicant: Use wpa_supplicant as the WiFi backend. (default) (025339) [14:19:48] * iwd: Use iwd as the WiFi backend (recommended, but may not work with all devices in 'testing') [14:19:48] Provider [wpa_supplicant]: iwd ... $ pmbootstrap install
- or in an existing install by marking
wpa_supplicant
for removal, accepting the replacement withiwd
, and rebooting:
$ sudo apk add !wpa_supplicant The following packages will be REMOVED: ifupdown-ng-wifi libnl3 pcsc-lite-libs postmarketos-base-ui-wifi-wpa_supplicant wpa_supplicant wpa_supplicant-openrc The following NEW packages will be installed: iwd iwd-openrc postmarketos-base-ui-wifi-iwd Need to download 927 KiB of packages. After this operation, 2580 KiB of disk space will be freed. Do you want to continue [Y/n]? y ... $ sudo reboot