13069415fd
Some checks failed
build liminix / build_vm_qemu_mips (pull_request) Failing after 27s
WLAN oper wait until the WLAN interface is ready. Signed-off-by: Raito Bezarius <masterancpp@gmail.com>
49 lines
1.4 KiB
Nix
49 lines
1.4 KiB
Nix
## Hostapd
|
|
## =======
|
|
##
|
|
## Hostapd (host access point daemon) enables a wireless network
|
|
## interface to act as an access point and authentication server,
|
|
## providing IEEE 802.11 access point management, and IEEE
|
|
## 802.1X/WPA/WPA2/EAP Authenticators. In less technical terms,
|
|
## this service is what you need for your Liminix device to
|
|
## provide a wireless network that clients can connect to.
|
|
##
|
|
## If you have more than one wireless network interface (e.g.
|
|
## wlan0, wlan1) you can run an instance of hostapd on each of them.
|
|
|
|
{ lib, pkgs, config, ...}:
|
|
let
|
|
inherit (lib) mkOption types;
|
|
inherit (pkgs) liminix;
|
|
in {
|
|
options = {
|
|
system.service.hostapd = mkOption {
|
|
type = liminix.lib.types.serviceDefn;
|
|
};
|
|
|
|
system.service.hostapd-ready = mkOption {
|
|
type = liminix.lib.types.serviceDefn;
|
|
};
|
|
};
|
|
config = {
|
|
system.service.hostapd = liminix.callService ./service.nix {
|
|
interface = mkOption {
|
|
type = liminix.lib.types.service;
|
|
};
|
|
package = mkOption {
|
|
type = types.package;
|
|
default = pkgs.hostapd;
|
|
};
|
|
params = mkOption {
|
|
type = types.attrs;
|
|
};
|
|
};
|
|
|
|
system.service.hostapd-ready = liminix.callService ./ready.nix {
|
|
interface = mkOption {
|
|
type = liminix.lib.types.interface;
|
|
description = "Interface for which to wait that the oper state Master or Master (VLAN) has been reached.";
|
|
};
|
|
};
|
|
};
|
|
}
|