# wpa_supplicant 2.11 — supplicant WPA2 para asociar el WiFi del medio live al AP (kernel metal). # # El handshake WPA2 de 4 vías lo hace un supplicant en userspace; busybox NO lo trae. Habla con iwlwifi # vía el driver nl80211 (netlink), que enlaza libnl-3/libnl-genl-3 (recipes/libnl.toml). DHCP lo da # udhcpc de busybox (ya en el producto) una vez asociada la interfaz. # # Crypto: CONFIG_TLS=internal ⇒ NO depende de openssl (suficiente para WPA2-PSK, el WiFi de casa). Para # WPA-Enterprise/EAP-TLS habría que pasar a CONFIG_TLS=openssl + dep openssl. Sólo medio live en metal. # # wpa_supplicant usa un build propio: un `.config` con CONFIG_* en el subdir wpa_supplicant/, luego make. # Los binarios (wpa_supplicant/wpa_cli/wpa_passphrase) se copian a /usr/sbin (no `make install`). name = "wpa_supplicant" version = "2.11" [source] tarball = "https://w1.fi/releases/wpa_supplicant-2.11.tar.gz" sha256 = "912ea06f74e30a8e36fbb68064d6cdff218d8d591db0fc5d75dee6c81ac7fc0a" [build] compiler = "zig-cc" target = "x86_64-linux-musl" link = "static" [deps] build = ["libnl", "make"] [build.phases] configure = ''' cat > wpa_supplicant/.config <<'EOF' CONFIG_DRIVER_NL80211=y CONFIG_LIBNL32=y CONFIG_CTRL_IFACE=y CONFIG_CTRL_IFACE_UNIX=y CONFIG_BACKEND=file CONFIG_TLS=internal CONFIG_INTERNAL_LIBTOMMATH=y CONFIG_INTERNAL_LIBTOMMATH_FAST=y CONFIG_IEEE8021X_EAPOL=y CONFIG_PEERKEY=y EOF ''' compile = "cd wpa_supplicant && make -j\"$(nproc)\" wpa_supplicant wpa_cli wpa_passphrase" install = "mkdir -p /out/usr/sbin && cd wpa_supplicant && cp wpa_supplicant wpa_cli wpa_passphrase /out/usr/sbin/"