Proof Portal
Omarchy
ProbeLabs65 findings · 95 requirementsA proof layer — requirements, tests and verified fixes — for two of Omarchy's subsystems: the application menu (launcher scripts, QML model, JSONC config, search and selection) and the lock screen (lock scripts, QML, PAM authentication). Scope is deliberately limited to those components of omacom/omarchy; the rest of the distribution is not covered.
No Wi-Fi on Apple Silicon Macs: the Broadcom quirk's chip-ID gate includes BCM4378/BCM4387
Reported by thejamescollins · filed Aug 19, 2026Closed upstream on 2026-10-08 by the bot omarchybot, as not planned.
At a glance
- 1 · What is claimed?
- Only the report text below — no validator has restated it as checkable claims yet.
- 2 · What does it affect?
- Not yet mapped to any requirement or component.
- 3 · Is it reproducible?
- No validation has been run yet.
- 4 · What remains unclear?
- Not validated yet: no claims, no reproducer.
- 5 · What happens next?
- Our staff decide whether the report is valid. Where this project allows it, agents decide whether it duplicates another report or a known issue. No decision has been recorded yet.
Original report
System details
2021 16" MacBook Pro, Apple M1 Max, 32GB RAM (MacBookPro18,2 / apple,j316c), Broadcom BCM4387 [14e4:4433], Asahi Linux on Arch Linux ARM aarch64, linux-asahi 7.1.6.asahi1-1, Omarchy 4.0.0
What's wrong?
With Wi-Fi firmware loading and wlan0 present, no network can be joined. Scanning lists everything in range. Connecting hangs, times out, and NetworkManager reports it like a wrong password. After a couple of attempts the chip stops answering the driver, so scanning dies too, and only a driver reload or a reboot brings it back.
Not to be confused with the other Apple Silicon Wi-Fi problem, which gives no wlan0 at all: that one comes from omarchy_hooks.conf reassigning HOOKS and dropping Asahi's asahi initcpio hook, already reported in #6876. Everything here is with firmware loading correctly.
The cause is install/hardware/apple/fix-brcmfmac-supplicant.sh, which writes options brcmfmac feature_disable=0x82000 for any Apple machine matching a brcmfmac PCI ID from brcm_hw_ids.h. Two of those nine IDs are Apple Silicon parts, not Intel Macs:
| ID | Constant | Hardware |
|---|---|---|
4425 | BRCM_PCIE_4378_DEVICE_ID | BCM4378, M1 |
4433 | BRCM_PCIE_4387_DEVICE_ID | BCM4387, M1 Pro/Max/Ultra, M2 |
On a BCM4387 the flag does the opposite of its job. It is meant to fix a WPA handshake that never completes, and instead it stops association happening at all. Without the flag the same machine joins the same AP normally.
#6652 flagged this risk itself, with "The chip-ID list is derived, not tested", and asked for confirmation from an iMac19,x or a 2017 MacBook Pro. This is confirmation, from the other end of the list.
Reproduce
- Apple Silicon Mac on Asahi, with vendor firmware loading so
wlan0exists and scanning works. - Confirm
/etc/modprobe.d/brcmfmac.confcontainsoptions brcmfmac feature_disable=0x82000, written by the script at install time or bymigrations/1786391100.shon an existing install. Reboot. - Try to join a WPA2/WPA3 transition-mode AP. It never associates, then the chip wedges.
- Remove
/etc/modprobe.d/brcmfmac.conf, reboot, and join the same AP again. It works.
Logs
wpa_supplicant: wlan0: Trying to associate with aa:bb:cc:00:00:01 (SSID='<redacted>' freq=2462 MHz)
wpa_supplicant: FT: Invalid key management type (2)
wpa_supplicant: wlan0: Authentication with aa:bb:cc:00:00:02 timed out.
ieee80211 phy0: brcmf_msgbuf_query_dcmd: Timeout on response for query command
ieee80211 phy0: brcmf_msgbuf_tx_ioctl: Failed to reserve space in commonring
ieee80211 phy0: brcmf_cfg80211_scan: scan error (-12)Same on 2.4 GHz and 5 GHz, against several BSSIDs, under NetworkManager, iwd and a hand-written wpa_supplicant config alike. Forcing plain WPA2-PSK on the client does not help while the flag is set. The AP is a UniFi mesh in WPA2/WPA3 transition mode with PMF optional and 802.11r on, which is the case the quirk targets.
Evidence
Across boots on this machine, with the flag set association never completes and the kernel logs 188, 583 and 669 brcmf_msgbuf_query_dcmd: Timeout lines. Without it there are none, and it connects 6 to 11 seconds after boot. Reloading in place with modprobe brcmfmac feature_disable=0, same AP and same profile in the same session, connected immediately and then roamed across four BSSIDs including one that had been failing minutes earlier.
Suggested fix
- lspci -nn | grep -E "14e4:(43ba|43bb|43bc|43a3|43dc|4464|4488|4425|4433)" >/dev/null; }; then
+ lspci -nn | grep -E "14e4:(43ba|43bb|43bc|43a3|43dc|4464|4488)" >/dev/null; }; thenAn [[ $(uname -m) == x86_64 ]] guard would also work and would survive future IDs being added. I have no BCM4378 to test, so dropping 4425 is precautionary rather than confirmed.
Workaround until then: a later-sorting drop-in wins, since the kernel keeps the last value for a scalar parameter.
# /etc/modprobe.d/zz-brcmfmac-keep-offload.conf
options brcmfmac feature_disable=0Full omarchy debug output available on request. I left it out because it runs to 3280 lines and carries a username, MAC and SSID throughout.
Thanks for the #6652 work. This is a narrow follow-up rather than a complaint: the quirk is clearly right for the hardware it was tested on, and the ID list just reaches two parts nobody had one of.
View raw text
### System details 2021 16" MacBook Pro, Apple M1 Max, 32GB RAM (MacBookPro18,2 / apple,j316c), Broadcom BCM4387 [14e4:4433], Asahi Linux on Arch Linux ARM aarch64, linux-asahi 7.1.6.asahi1-1, Omarchy 4.0.0 ### What's wrong? With Wi-Fi firmware loading and `wlan0` present, no network can be joined. Scanning lists everything in range. Connecting hangs, times out, and NetworkManager reports it like a wrong password. After a couple of attempts the chip stops answering the driver, so scanning dies too, and only a driver reload or a reboot brings it back. Not to be confused with the other Apple Silicon Wi-Fi problem, which gives no `wlan0` at all: that one comes from `omarchy_hooks.conf` reassigning `HOOKS` and dropping Asahi's `asahi` initcpio hook, already reported in #6876. Everything here is with firmware loading correctly. The cause is `install/hardware/apple/fix-brcmfmac-supplicant.sh`, which writes `options brcmfmac feature_disable=0x82000` for any Apple machine matching a `brcmfmac` PCI ID from `brcm_hw_ids.h`. Two of those nine IDs are Apple Silicon parts, not Intel Macs: | ID | Constant | Hardware | |---|---|---| | `4425` | `BRCM_PCIE_4378_DEVICE_ID` | BCM4378, M1 | | `4433` | `BRCM_PCIE_4387_DEVICE_ID` | BCM4387, M1 Pro/Max/Ultra, M2 | On a BCM4387 the flag does the opposite of its job. It is meant to fix a WPA handshake that never completes, and instead it stops association happening at all. Without the flag the same machine joins the same AP normally. #6652 flagged this risk itself, with "The chip-ID list is derived, not tested", and asked for confirmation from an `iMac19,x` or a 2017 MacBook Pro. This is confirmation, from the other end of the list. #### Reproduce 1. Apple Silicon Mac on Asahi, with vendor firmware loading so `wlan0` exists and scanning works. 2. Confirm `/etc/modprobe.d/brcmfmac.conf` contains `options brcmfmac feature_disable=0x82000`, written by the script at install time or by `migrations/1786391100.sh` on an existing install. Reboot. 3. Try to join a WPA2/WPA3 transition-mode AP. It never associates, then the chip wedges. 4. Remove `/etc/modprobe.d/brcmfmac.conf`, reboot, and join the same AP again. It works. #### Logs ``` wpa_supplicant: wlan0: Trying to associate with aa:bb:cc:00:00:01 (SSID='<redacted>' freq=2462 MHz) wpa_supplicant: FT: Invalid key management type (2) wpa_supplicant: wlan0: Authentication with aa:bb:cc:00:00:02 timed out. ieee80211 phy0: brcmf_msgbuf_query_dcmd: Timeout on response for query command ieee80211 phy0: brcmf_msgbuf_tx_ioctl: Failed to reserve space in commonring ieee80211 phy0: brcmf_cfg80211_scan: scan error (-12) ``` Same on 2.4 GHz and 5 GHz, against several BSSIDs, under NetworkManager, iwd and a hand-written `wpa_supplicant` config alike. Forcing plain WPA2-PSK on the client does not help while the flag is set. The AP is a UniFi mesh in WPA2/WPA3 transition mode with PMF optional and 802.11r on, which is the case the quirk targets. #### Evidence Across boots on this machine, with the flag set association never completes and the kernel logs 188, 583 and 669 `brcmf_msgbuf_query_dcmd: Timeout` lines. Without it there are none, and it connects 6 to 11 seconds after boot. Reloading in place with `modprobe brcmfmac feature_disable=0`, same AP and same profile in the same session, connected immediately and then roamed across four BSSIDs including one that had been failing minutes earlier. #### Suggested fix ```diff - lspci -nn | grep -E "14e4:(43ba|43bb|43bc|43a3|43dc|4464|4488|4425|4433)" >/dev/null; }; then + lspci -nn | grep -E "14e4:(43ba|43bb|43bc|43a3|43dc|4464|4488)" >/dev/null; }; then ``` An `[[ $(uname -m) == x86_64 ]]` guard would also work and would survive future IDs being added. I have no BCM4378 to test, so dropping `4425` is precautionary rather than confirmed. Workaround until then: a later-sorting drop-in wins, since the kernel keeps the last value for a scalar parameter. ``` # /etc/modprobe.d/zz-brcmfmac-keep-offload.conf options brcmfmac feature_disable=0 ``` Full `omarchy debug` output available on request. I left it out because it runs to 3280 lines and carries a username, MAC and SSID throughout. Thanks for the #6652 work. This is a narrow follow-up rather than a complaint: the quirk is clearly right for the hardware it was tested on, and the ID list just reaches two parts nobody had one of.
Validation
Not checked yet. A validator will restate this report as checkable claims, map it to the project's requirements and write a reproducer that the proof engine runs.
Linked
Not linked to any known issue, other report or change yet.
Decision
Decisions are recorded by our staff — or, where this project allows it, by agents: checked by a second, independent agent, or by a single agent where the project's policy says so. Any decision reached so far is shown below.
No decision has been recorded yet.