Repository navigation
Commit b472119
committed
niri's file picker never opened, because the backend that claims it delegates
Every "attach a file" or "upload" button in every app on niri did
nothing at all. No dialog, no error, no crash. The only trace anywhere
was one line in the *user* journal:
xdg-desktop-portal-gnome: Delegated FileChooser call failed:
The name is not activatable
niri's own portals.conf sets `default=gnome;gtk;`, so FileChooser goes
to the GNOME backend, and that backend does not implement FileChooser.
It delegates to org.gnome.Nautilus. kuma ships Thunar, nothing provides
that name, and the request dies one level below where anything is
watching.
The `;gtk` fallback cannot help, and that is the part worth keeping in
mind for the next portal: fallback is resolved from the .portal files
before any call is made, gnome.portal *advertises* FileChooser, and the
delegation only fails afterwards, inside the backend. A backend that
lies in its manifest is invisible to the router. So the interface has to
be named to gtk explicitly, which implements it for real and was already
installed and running for Access and Notification.
The config is derived from niri's file rather than copied beside it. The
highest-precedence portals.conf wins outright instead of merging, so a
hand-copy would silently freeze whatever niri's other defaults were the
day it was written, which is the same staleness trap that moved the
terminal off foot. Two greps fail the build instead of shipping a dead
picker: one if niri stops shipping the file this derives from, one if
the gtk backend stops implementing the interface being routed to it.
Both verified by sabotage, and neither writes a file when it trips.
COSMIC is deliberately untouched: cosmic.portal implements FileChooser
natively, confirmed by reading it out of a built COSMIC image, so
routing it to gtk would swap a working native picker for a worse one.
Verified on the running laptop before baking: with the interface pointed
at gtk, an OpenFile call over D-Bus put a real picker on screen, where
the same call previously logged the delegation failure and showed
nothing. 131 tests, fmt and clippy clean.1 parent fd7e0ca commit b472119
1 file changed
Lines changed: 69 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1262 | 1262 | | |
1263 | 1263 | | |
1264 | 1264 | | |
| 1265 | + | |
| 1266 | + | |
| 1267 | + | |
| 1268 | + | |
| 1269 | + | |
| 1270 | + | |
| 1271 | + | |
| 1272 | + | |
| 1273 | + | |
| 1274 | + | |
| 1275 | + | |
| 1276 | + | |
| 1277 | + | |
| 1278 | + | |
| 1279 | + | |
| 1280 | + | |
| 1281 | + | |
| 1282 | + | |
| 1283 | + | |
| 1284 | + | |
| 1285 | + | |
| 1286 | + | |
| 1287 | + | |
| 1288 | + | |
| 1289 | + | |
| 1290 | + | |
| 1291 | + | |
1265 | 1292 | | |
1266 | 1293 | | |
1267 | 1294 | | |
| |||
2449 | 2476 | | |
2450 | 2477 | | |
2451 | 2478 | | |
| 2479 | + | |
| 2480 | + | |
| 2481 | + | |
| 2482 | + | |
| 2483 | + | |
| 2484 | + | |
| 2485 | + | |
| 2486 | + | |
| 2487 | + | |
| 2488 | + | |
| 2489 | + | |
| 2490 | + | |
| 2491 | + | |
| 2492 | + | |
| 2493 | + | |
| 2494 | + | |
| 2495 | + | |
| 2496 | + | |
| 2497 | + | |
| 2498 | + | |
| 2499 | + | |
| 2500 | + | |
| 2501 | + | |
| 2502 | + | |
| 2503 | + | |
| 2504 | + | |
| 2505 | + | |
| 2506 | + | |
| 2507 | + | |
| 2508 | + | |
| 2509 | + | |
| 2510 | + | |
| 2511 | + | |
| 2512 | + | |
| 2513 | + | |
| 2514 | + | |
| 2515 | + | |
| 2516 | + | |
| 2517 | + | |
| 2518 | + | |
| 2519 | + | |
| 2520 | + | |
2452 | 2521 | | |
2453 | 2522 | | |
2454 | 2523 | | |
| |||
0 commit comments