Setting up iwd when first installing Arch proved to be quite a
hassle, especially because I was relying on campus WiFi via eduroam. Eduroam has a lot of mandatory configuration options that are abstracted away when using typical network managers.
iwd is the recommended way of getting connected to the internet during the arch install, it felt particularly important to document how to set it up for beginners!
Note: This guide is specific to the University of Waterloo, but the setup is applicable to any other institution which uses
Here’s the config file you should place at
/var/lib/iwd/eduroam.8021x. Be sure to replace the
[Security] EAP-Method=PEAP EAP-Identityemail@example.com EAP-PEAP-CACert=/etc/ssl/certs/GlobalSign_Root_CA_-_R3.pem EAP-PEAP-Phase2-Method=MSCHAPV2 EAP-PEAP-Phase2-Identity=WATID@uwaterloo.ca EAP-PEAP-Phase2-Password=YOUR_PASSWORD EAP-PEAP-ServerDomainMask=eduroam.uwaterloo.ca [Settings] AutoConnect=true
You can find the keys to the values in the Arch wiki, but the values are unique to each university, and are obtained by digging through the “eduroam installer” (a python script).
iwctl (command line front-end for
iwd) can get you connected:
iwctl station wlan0 connect eduroam
And you’re in!
Make sure everything in the config file is spelled correctly!
Connecting to non-eduroam networks is much simpler, you just need the password to your network!
When connecting to other networks,
iwdwill automatically generate config files at
Investigating Errors: #
When connecting to a network and it seems to inexplicably not work, you can use:
systemctl status iwd
to better understand what’s going wrong.