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-1531GitHub issuePublicDecided· Out of scope

Nautilus 50 file chooser is not selected on Hyprland, GTK portal hangs for 25 seconds

Reported by GenKerensky · filed Aug 23, 2026 · open at source

Decided: Out of scope — decided by agents · verified 4 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

Nautilus 50 file chooser is not selected on Hyprland, GTK portal hangs for 25 secondsrevision 1 · captured 2026-09-28 21:24 UTC via poll

System details

  • Omarchy: 4.0.0-1
  • CPU: AMD Ryzen 7 5800X
  • GPU: AMD Radeon RX 7900 XT/XTX/GRE
  • Session: Hyprland / Wayland
  • xdg-desktop-portal: 1.22.1-2
  • xdg-desktop-portal-gtk: 1.15.3-1
  • Nautilus: 50.2.2-1

What's wrong?

Portal-based file-open dialogs do not appear. Each request stalls for 25 seconds, while the journal repeatedly reports:

xdg-desktop-portal-gtk: Error: Timeout was reached
xdg-desktop-portal: Failed to ReadAll() from Settings implementation: Timeout was reached

This is distinct from #2798: Nautilus itself can start, but org.freedesktop.portal.FileChooser is routed to xdg-desktop-portal-gtk, so applications never reach Nautilus's working chooser implementation.

Steps to reproduce

  1. Start a current Omarchy 4 Hyprland session.
  2. In any portal-using application, request a file-open dialog.
  3. Observe that no dialog appears and the GTK portal logs a timeout after 25 seconds.

A direct org.freedesktop.portal.FileChooser.OpenFile call reproduces the same failure.

Expected behavior

The file chooser should appear immediately.

Root cause

Omarchy installs Nautilus 50, xdg-desktop-portal-gtk, and xdg-desktop-portal-hyprland, but does not provide a Hyprland portal preference for FileChooser. The stock /usr/share/xdg-desktop-portal/hyprland-portals.conf therefore falls back to GTK:

[preferred]
default=hyprland;gtk

Nautilus 50 already exports org.freedesktop.impl.portal.FileChooser on org.gnome.Nautilus, but no nautilus.portal descriptor is installed and the interface is never selected.

Installing xdg-desktop-portal-gnome is not a fix: outside GNOME it logs Non-compatible display server, exposing settings only and deliberately does not expose the chooser.

Verified workaround

Adding a user portal descriptor for org.gnome.Nautilus and selecting it only for org.freedesktop.impl.portal.FileChooser fixes the issue. Hyprland remains responsible for screen capture and global shortcuts, while GTK remains the general fallback.

After restarting xdg-desktop-portal, a live portal call opened a Nautilus picker in under two seconds with no timeout errors.

View raw text
### System details

- Omarchy: 4.0.0-1
- CPU: AMD Ryzen 7 5800X
- GPU: AMD Radeon RX 7900 XT/XTX/GRE
- Session: Hyprland / Wayland
- `xdg-desktop-portal`: 1.22.1-2
- `xdg-desktop-portal-gtk`: 1.15.3-1
- Nautilus: 50.2.2-1

### What's wrong?

Portal-based file-open dialogs do not appear. Each request stalls for 25 seconds, while the journal repeatedly reports:

```text
xdg-desktop-portal-gtk: Error: Timeout was reached
xdg-desktop-portal: Failed to ReadAll() from Settings implementation: Timeout was reached
```

This is distinct from #2798: Nautilus itself can start, but `org.freedesktop.portal.FileChooser` is routed to `xdg-desktop-portal-gtk`, so applications never reach Nautilus's working chooser implementation.

### Steps to reproduce

1. Start a current Omarchy 4 Hyprland session.
2. In any portal-using application, request a file-open dialog.
3. Observe that no dialog appears and the GTK portal logs a timeout after 25 seconds.

A direct `org.freedesktop.portal.FileChooser.OpenFile` call reproduces the same failure.

### Expected behavior

The file chooser should appear immediately.

### Root cause

Omarchy installs Nautilus 50, `xdg-desktop-portal-gtk`, and `xdg-desktop-portal-hyprland`, but does not provide a Hyprland portal preference for `FileChooser`. The stock `/usr/share/xdg-desktop-portal/hyprland-portals.conf` therefore falls back to GTK:

```ini
[preferred]
default=hyprland;gtk
```

Nautilus 50 already exports `org.freedesktop.impl.portal.FileChooser` on `org.gnome.Nautilus`, but no `nautilus.portal` descriptor is installed and the interface is never selected.

Installing `xdg-desktop-portal-gnome` is not a fix: outside GNOME it logs `Non-compatible display server, exposing settings only` and deliberately does not expose the chooser.

### Verified workaround

Adding a user portal descriptor for `org.gnome.Nautilus` and selecting it only for `org.freedesktop.impl.portal.FileChooser` fixes the issue. Hyprland remains responsible for screen capture and global shortcuts, while GTK remains the general fallback.

After restarting `xdg-desktop-portal`, a live portal call opened a Nautilus picker in under two seconds with no timeout errors.

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 08:33 UTC