Iwd

iwd (iNet Wireless Daemon) is Article description::an up-and-coming wireless daemon for Linux. It is written by Intel and aims to replace wpa_supplicant.

= Installation =

USE flags
Some packages are aware of the USE flag.

Emerge
Install the package:

= Network management = Gentoo is all about choice, so there should be various methods available for network management. But iwd is new, and not methods support iwd fully. Be sure to heed the warning in the network management article about mixing and matching the different methods for network management.

Netifrc
Netifrc is Gentoo's default method of managing networks, but unfortunately it does not support iwd as backend yet, see. Make sure that any symbolic links to for the wireless interfaces are removed:

Select another, working, method for network management.

Iwd native
As of version 0.19 iwd contains a DHCP client and can manage routes and DNS resolving.

To activate it edit or create as follows:

Dhcpcd
Add both the dhcpcd and then iwd service to the default runlevel and start them up:

Use iwctl to make connections.

NetworkManager
NetworkManager supports iwd. Make sure to set the "iwd" USE flag:

or other [//en.wikipedia.org/wiki/NetworkManager#Graphical_front-ends_and_command_line_interfaces NetworkManager frontends] can be used as per normal to make connections.

Connman
Connman supports iwd somewhat. Make sure to set the "iwd" USE flag en (re-)emerge:

Connman still relies on wpa_supplicant for scanning, but connecting via iwd is possible.

= Connecting to an access point with iwctl =

is iwd's tool to control iwd. It supports both a command line interface and an interactive mode. A complete command line would be to see what adapters you might be able to use:

An interactive session of commands can be used to connect to a WiFi network access point. First check the status of the WiFi network interface, set it in scanning mode if needed, and then obtain the list of WiFi access points. Finally connect to the access point.

= Interface management = Starting with version 0.18 iwd is actively managing network interfaces [//iwd.wiki.kernel.org/interface_lifecycle]. On startup it may destroy an existing network interface and create a new one. The newly created interface will be configured optimally for iwd's use. Note that currently interface renaming is not supported. This means that an interface that was detected by udev, and renamed to say 'wlp2s0' will be destroyed and a new one named for example 'wlan0' might be created. When iwd exists it destroys the wireless interface it created.

It is possible to suppress this behaviour by passing commandline options -p (+the the name of the phy) and -i (+ the name of the interface) to the iwd daemon.

= See also =

= External resources =
 * [//lwn.net/Articles/770991 Iwd: simplifying WiFi management]