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.
FocalTech fingerprint reader (2808:a97a): not detected, and lock screen unlock fails after suspend
Reported by jddmgt · filed Oct 2, 2026 · open at source · 2 revisions
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?
- 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. So far: partly in the audited area (lock) — decided by agents · verified; matches no known issue — decided by agents · verified. The outcome (valid, duplicate, not a bug, …) is not decided yet. See the decision.
Original report
System details
ASUS ExpertBook B9406CAA, Intel Core Ultra X7 358H, Omarchy 4.0.4
What's wrong?
omarchy-hw-fingerprint returns false on this laptop, even though it has a working FocalTech fingerprint reader. So omarchy-setup-security-fingerprint exits with "No fingerprint sensor detected." and the post-update setup invitation never fires.
The reader:
Bus 003 Device 004: ID 2808:a97a Focal FocalTech FT9349 ESSlibfprint-git (1.94.100.r10) and fprintd drive it fine. fprintd-list shows it as "Focaltech MOC Sensors (press)" and enrollment works. No kernel driver is bound to its interface.
The detection misses it for two reasons:
- Vendor 2808 (FocalTech) isn't in fingerprint_vendors.
- The product string FocalTech FT9349 ESS doesn't contain "fingerprint" or "biometric".
Repro: run omarchy-setup-security-fingerprint on an ExpertBook B9406CAA.
Suggested fix: add 2808 to fingerprint_vendors. The existing has_kernel_driver guard would still keep FocalTech touchscreens/touchpads (which bind usbhid) from matching.
Workaround: put a stub omarchy-hw-fingerprint that exits 0 first on PATH, then run the setup script.
View raw text
### System details ASUS ExpertBook B9406CAA, Intel Core Ultra X7 358H, Omarchy 4.0.4 ### What's wrong? `omarchy-hw-fingerprint` returns false on this laptop, even though it has a working FocalTech fingerprint reader. So `omarchy-setup-security-fingerprint` exits with "No fingerprint sensor detected." and the post-update setup invitation never fires. The reader: ``` Bus 003 Device 004: ID 2808:a97a Focal FocalTech FT9349 ESS ``` libfprint-git (1.94.100.r10) and fprintd drive it fine. `fprintd-list` shows it as "Focaltech MOC Sensors (press)" and enrollment works. No kernel driver is bound to its interface. The detection misses it for two reasons: - Vendor `2808` (FocalTech) isn't in `fingerprint_vendors`. - The product string `FocalTech FT9349 ESS` doesn't contain "fingerprint" or "biometric". **Repro:** run `omarchy-setup-security-fingerprint` on an ExpertBook B9406CAA. **Suggested fix:** add `2808` to `fingerprint_vendors`. The existing `has_kernel_driver` guard would still keep FocalTech touchscreens/touchpads (which bind usbhid) from matching. **Workaround:** put a stub `omarchy-hw-fingerprint` that exits 0 first on `PATH`, then run the setup script.
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
- Related toR-830Fingerprint unlock rejected on first attempt after resume (Goodix, race with sleep-lock inhibitor)· decided by agents · verified
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.
- Decided by agents · verified: partly in the audited area (lock)
- Decided by agents · verified: matches no known issue
The outcome (valid, duplicate, not a bug, …) is not decided yet.