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.
Surface Laptop Studio keyboard not working during Plymouth boot screen
Reported by JonathanRiche · filed Aug 12, 2025Closed upstream on 2025-09-22 by its own reporter JonathanRiche. GitHub close reason: completed. Closed by its own reporter — not by itself evidence of a fix.
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 Information
- Device: Microsoft Surface Laptop Studio (1st generation)
- OS: Arch Linux with linux-surface kernel (6.15.3-arch1-2-surface)
- Desktop: Omarchy v1.13.0 with Hyprland 0.50.1 (Wayland)
- Encryption: LUKS encrypted BTRFS root filesystem
- Plymouth Theme: omarchy
Issue Description
The Surface Laptop Studio's built-in keyboard does not work during the Plymouth boot screen when using the Omarchy theme. This prevents entering the disk encryption password without an external USB keyboard.
Behavior Details
- GRUB menu: Surface keyboard works (can select kernels)
- Plymouth/encryption prompt: Surface keyboard does NOT work
- After login: Surface keyboard works perfectly
- External USB keyboard: Works at all stages including Plymouth
What Works
- Surface trackpad responds to touch (feels "unlocked") but cursor doesn't move during Plymouth
- Both Surface keyboards are detected and working after boot:
Microsoft Surface 045E:09AE Keyboard(event14)Microsoft Surface 045E:09B0 Keyboard(event15)
Troubleshooting Attempted
- Added Surface modules to initramfs:
surface_aggregator,surface_hid_core,surface_hid,crc-itu-t - Added core HID modules:
usbhid,hid-generic - Reordered mkinitcpio hooks: Moved
keyboardandkeymapbeforeplymouth - Verified modules load correctly: All Surface modules present in initramfs and loading properly
Current Configuration
# /etc/mkinitcpio.conf
MODULES=(nvidia nvidia_modeset nvidia_uvm nvidia_drm btrfs crc-itu-t usbhid hid-generic surface_aggregator surface_hid_core surface_hid)
HOOKS=(base udev autodetect keyboard keymap plymouth modconf block encrypt filesystems fsck)Suspected Cause
The issue appears to be Plymouth theme-specific input handling rather than missing drivers, since:
- All hardware drivers are loaded and working
- External USB keyboards work during Plymouth
- Surface keyboard works before and after Plymouth
Request
Could the Omarchy Plymouth theme be updated to properly handle Microsoft Surface HID input devices? The theme may need to recognize Surface keyboard device IDs (045E:09AE, 045E:09B0) or improve its input device detection.
Logs Available
Can provide boot logs, Plymouth configuration, or additional system information if needed.
View raw text
## System Information - **Device:** Microsoft Surface Laptop Studio (1st generation) - **OS:** Arch Linux with linux-surface kernel (6.15.3-arch1-2-surface) - **Desktop:** Omarchy v1.13.0 with Hyprland 0.50.1 (Wayland) - **Encryption:** LUKS encrypted BTRFS root filesystem - **Plymouth Theme:** omarchy ## Issue Description The Surface Laptop Studio's built-in keyboard does not work during the Plymouth boot screen when using the Omarchy theme. This prevents entering the disk encryption password without an external USB keyboard. ## Behavior Details - **GRUB menu:** Surface keyboard works (can select kernels) - **Plymouth/encryption prompt:** Surface keyboard does NOT work - **After login:** Surface keyboard works perfectly - **External USB keyboard:** Works at all stages including Plymouth ## What Works - Surface trackpad responds to touch (feels "unlocked") but cursor doesn't move during Plymouth - Both Surface keyboards are detected and working after boot: - `Microsoft Surface 045E:09AE Keyboard` (event14) - `Microsoft Surface 045E:09B0 Keyboard` (event15) ## Troubleshooting Attempted 1. **Added Surface modules to initramfs:** `surface_aggregator`, `surface_hid_core`, `surface_hid`, `crc-itu-t` 2. **Added core HID modules:** `usbhid`, `hid-generic` 3. **Reordered mkinitcpio hooks:** Moved `keyboard` and `keymap` before `plymouth` 4. **Verified modules load correctly:** All Surface modules present in initramfs and loading properly ## Current Configuration ```bash # /etc/mkinitcpio.conf MODULES=(nvidia nvidia_modeset nvidia_uvm nvidia_drm btrfs crc-itu-t usbhid hid-generic surface_aggregator surface_hid_core surface_hid) HOOKS=(base udev autodetect keyboard keymap plymouth modconf block encrypt filesystems fsck) ``` ## Suspected Cause The issue appears to be Plymouth theme-specific input handling rather than missing drivers, since: - All hardware drivers are loaded and working - External USB keyboards work during Plymouth - Surface keyboard works before and after Plymouth ## Request Could the Omarchy Plymouth theme be updated to properly handle Microsoft Surface HID input devices? The theme may need to recognize Surface keyboard device IDs (`045E:09AE`, `045E:09B0`) or improve its input device detection. ## Logs Available Can provide boot logs, Plymouth configuration, or additional system information if needed.
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.