Proof Portal

Project overview

Omarchy

ProbeLabs65 findings · 95 requirements

A 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.

Inbox
ReportR-2113GitHub issuePublicDecided· Out of scope

Network panel shows a padlock on saved open Wi-Fi networks (Quickshell security classification)

Reported by Mejena-code · filed Sep 30, 2026 · open at source

Decided: Out of scope — decided by agents · verified 3 days ago.

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?
AreaOutside the audited area· Decided by agents · verified
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?
Decided by agents and verified by a second, independent agent — see the decision.

Original report

Network panel shows a padlock on saved open Wi-Fi networks (Quickshell security classification)revision 1 · captured 2026-09-30 00:06 UTC via poll

System details

Apple M1 MacBook Pro (MacBookPro17,1), Apple AGX GPU, Arch Linux ARM / Asahi, Omarchy 4.0.3rc4-2, Quickshell 0.3.1-1, NetworkManager 1.58.1-1, Qt 6.11.2, Hyprland 0.56.2, kernel 7.1.13-3-2-ARCH.

What's wrong?

The network panel shows a padlock next to a saved, connected open Wi-Fi network. The network accepts connections without a password and NetworkManager correctly reports it as open.

The underlying Quickshell classification bug is confirmed and reported upstream: https://github.com/quickshell-mirror/quickshell/issues/1229. This issue tracks the visible effect in Omarchy.

Steps to reproduce

  1. Save/connect to an ordinary open infrastructure Wi-Fi network. Its NetworkManager profile has no 802-11-wireless-security settings group.
  2. Open Omarchy's network panel.
  3. Observe the network in Known Networks, marked Connected, with a padlock on its right.

Expected: the open network has no credentials-required padlock.

Actual: the padlock appears despite a successful connection without a password.

The observed network initially appeared without a padlock during one attempt. Once its profile existed, the lock reappeared and remained visible even after the connection succeeded. The stable, connected state has been captured in a screenshot and independently checked against NetworkManager and Quickshell.

Verified evidence

NetworkManager's active AP reports (SSID anonymized):

IN-USE  SSID       SECURITY  WPA-FLAGS  RSN-FLAGS
*       OpenGuest  --        (none)     (none)

The active profile's D-Bus GetSettings() response contains connection, 802-11-wireless, ipv4, ipv6, and proxy, with no 802-11-wireless-security group.

A separate Quickshell process loading only Quickshell.Networking repeatedly reports:

{"connected":true,"known":true,"security":11,"securityName":"Unknown","isOpen":false}

WifiSecurityType.Open is 10 in this build. The minimal QML probe and complete reproduction are in the upstream report.

Cause

In Quickshell, `securityFromSettingsMap()` returns Unknown when 802-11-wireless-security is missing, while an explicitly empty group returns Open. Its wireless network model prefers saved settings over the AP's security classification.

Omarchy's `requiresCredentials()` returns true for values other than Open/Owe, so Quickshell's incorrect Unknown value produces the lock.

A small QtCore test using the exact Quickshell 0.3.1 classifier reproduces Unknown for a valid open profile without the security group. Changing that case to return Open fixes the classification in isolation; checks for an empty security group, WPA2-PSK, OWE, and WEP retain their existing results.

The installed shell and networking configuration were left in place during verification. This report establishes the saved-profile security classification and padlock bug; it does not attribute an earlier association timeout to the same cause.

View raw text
### System details

Apple M1 MacBook Pro (MacBookPro17,1), Apple AGX GPU, Arch Linux ARM / Asahi, Omarchy `4.0.3rc4-2`, Quickshell `0.3.1-1`, NetworkManager `1.58.1-1`, Qt `6.11.2`, Hyprland `0.56.2`, kernel `7.1.13-3-2-ARCH`.

### What's wrong?

The network panel shows a padlock next to a saved, connected open Wi-Fi network. The network accepts connections without a password and NetworkManager correctly reports it as open.

The underlying Quickshell classification bug is confirmed and reported upstream: https://github.com/quickshell-mirror/quickshell/issues/1229. This issue tracks the visible effect in Omarchy.

### Steps to reproduce

1. Save/connect to an ordinary open infrastructure Wi-Fi network. Its NetworkManager profile has no `802-11-wireless-security` settings group.
2. Open Omarchy's network panel.
3. Observe the network in **Known Networks**, marked **Connected**, with a padlock on its right.

Expected: the open network has no credentials-required padlock.

Actual: the padlock appears despite a successful connection without a password.

The observed network initially appeared without a padlock during one attempt. Once its profile existed, the lock reappeared and remained visible even after the connection succeeded. The stable, connected state has been captured in a screenshot and independently checked against NetworkManager and Quickshell.

### Verified evidence

NetworkManager's active AP reports (SSID anonymized):

```text
IN-USE  SSID       SECURITY  WPA-FLAGS  RSN-FLAGS
*       OpenGuest  --        (none)     (none)
```

The active profile's D-Bus `GetSettings()` response contains `connection`, `802-11-wireless`, `ipv4`, `ipv6`, and `proxy`, with **no** `802-11-wireless-security` group.

A separate Quickshell process loading only `Quickshell.Networking` repeatedly reports:

```json
{"connected":true,"known":true,"security":11,"securityName":"Unknown","isOpen":false}
```

`WifiSecurityType.Open` is 10 in this build. The minimal QML probe and complete reproduction are in the upstream report.

### Cause

In Quickshell, [`securityFromSettingsMap()`](https://github.com/quickshell-mirror/quickshell/blob/41651d7dcd62a9400eb6f4f8a8580efe00901efb/src/network/nm/utils.cpp#L21) returns `Unknown` when `802-11-wireless-security` is missing, while an explicitly empty group returns `Open`. Its wireless network model prefers saved settings over the AP's security classification.

Omarchy's [`requiresCredentials()`](https://github.com/omacom/omarchy/blob/8b4eae66da2938ba9559f103b18dbf85cdf28a70/shell/plugins/panels/network/Model.js#L321) returns true for values other than `Open`/`Owe`, so Quickshell's incorrect `Unknown` value produces the lock.

A small QtCore test using the exact Quickshell 0.3.1 classifier reproduces `Unknown` for a valid open profile without the security group. Changing that case to return `Open` fixes the classification in isolation; checks for an empty security group, WPA2-PSK, OWE, and WEP retain their existing results.

The installed shell and networking configuration were left in place during verification. This report establishes the saved-profile security classification and padlock bug; it does not attribute an earlier association timeout to the same cause.

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.

  • Out of scopeDecided by agents · verified · 2026-10-09 20:15 UTC