Wpa supplicant: Difference between revisions
imported>Vater link for an example to configure (the at european universities well known) [https://eduroam.org eduroam] with wpa_supplicant |
imported>Vater mNo edit summary |
||
Line 10: | Line 10: | ||
To be able to use <code>wpa_gui</code> or <code>wpa_cli</code> as user put the following in your <code>configuration.nix</code> file: | To be able to use <code>wpa_gui</code> or <code>wpa_cli</code> as user put the following in your <code>configuration.nix</code> file: | ||
<syntaxHighlight lang= | <syntaxHighlight lang=nix> | ||
networking.wireless.userControlled.enable = true; | networking.wireless.userControlled.enable = true; | ||
</syntaxHighlight> | </syntaxHighlight> | ||
Line 32: | Line 32: | ||
From the shell terminal, use the <code>wpa_cli</code> command line tool and specify the network interface device with -g | From the shell terminal, use the <code>wpa_cli</code> command line tool and specify the network interface device with -g | ||
<syntaxHighlight lang= | <syntaxHighlight lang=bash> | ||
wpa_cli -g /run/wpa_supplicant/wlp3s0 | wpa_cli -g /run/wpa_supplicant/wlp3s0 | ||
list_network | list_network | ||
Line 40: | Line 40: | ||
As a means to debug if things are working, open another terminal and examine the logs by: | As a means to debug if things are working, open another terminal and examine the logs by: | ||
<syntaxHighlight lang= | <syntaxHighlight lang=bash> | ||
journalctl -u wpa_supplicant -f | journalctl -u wpa_supplicant -f | ||
</syntaxHighlight> | </syntaxHighlight> | ||
Line 46: | Line 46: | ||
== External links == | == External links == | ||
[https://www.stura.htw-dresden.de/stura/ref/hopo/dk/nachrichten/eduroam-meets-nixos (german) article ''eduroam meets NixOS'' ()] (instance ''University of Applied Sciences Dresden'': The [https://cat.eduroam.org/?idp=5106&profile=5098 eduroam installer for GNU/Linux] works [https://www.htw-dresden.de/en/university/organisation/it-service-centre/services-for-workplace-and-communication/wi-fi-/-wlan/eduroam/linux for example for Ubuntu] but not [[NixOS]]) | [https://www.stura.htw-dresden.de/stura/ref/hopo/dk/nachrichten/eduroam-meets-nixos (german) article ''eduroam meets NixOS'' (with configuration)] (instance ''University of Applied Sciences Dresden'': The [https://cat.eduroam.org/?idp=5106&profile=5098 eduroam installer for GNU/Linux] works [https://www.htw-dresden.de/en/university/organisation/it-service-centre/services-for-workplace-and-communication/wi-fi-/-wlan/eduroam/linux for example for Ubuntu] but not [[NixOS]]) |
Revision as of 03:12, 22 December 2020
General
wpa_supplicant can be enabled on NixOS with networking.wireless.enable = true
.
Extra configuration can be specified inside networking.wireless.extraConfig
.
wpa_supplicant_gui
To be able to use wpa_gui
or wpa_cli
as user put the following in your configuration.nix
file:
networking.wireless.userControlled.enable = true;
Also your user must be part of the wheel
group (replace USER with your username):
users.extraUsers.USER.extraGroups = [ "wheel" ];
Using wpa_supplicant from within the configuration file
You can configure your networks with the option networks
. You have to fill the name(s) of your wifi(s) after the option and the preshared-key(s) (usually called psk
). If you do not want to have your secret key in plaintext, you can use pskRaw, generated with wpa_passphrase SSID password
. An example of using networks :
networking.wireless.networks.Wifi_name.pskRaw = "pskRaw generated";
If you have multiple networks, and you want to set the priority, you can use networking.wireless.networks.Wifi_name.priority = <value>;
Switching Network
From the shell terminal, use the wpa_cli
command line tool and specify the network interface device with -g
wpa_cli -g /run/wpa_supplicant/wlp3s0
list_network
select_network 2
As a means to debug if things are working, open another terminal and examine the logs by:
journalctl -u wpa_supplicant -f
External links
(german) article eduroam meets NixOS (with configuration) (instance University of Applied Sciences Dresden: The eduroam installer for GNU/Linux works for example for Ubuntu but not NixOS)