Say the folder dialogue is the portal, and what the Flatpak has not proved
distribution.md §4, outstanding.md's FR-PLAT-LIN-3 entry, the Flatpak
manifest's comment and the README all said a library was chosen by
typing a path and that nothing in the tree called the FileChooser
portal. Since 6683c14 every folder the desktop asks for is chosen
through rfd's xdg-portal backend, so those sentences were false.
What they now say instead is narrower than "it works in the sandbox":
no Flatpak has been built here, so whether the portal's path opens a
library, holds across a restart and takes a sidecar is unobserved, and
volumes() still cannot see a host card. The chooser also landed in ui/
rather than behind the dr-plat seam distribution.md had proposed, and
both documents say so. FR-PLAT-LIN-3 gets a status note to the same
effect.
This commit is contained in:
@@ -90,17 +90,21 @@ finish-args:
|
||||
# path in argv and opens. That path is genuinely portal-mediated and needs no
|
||||
# code change.
|
||||
#
|
||||
# What that leaves broken: choosing a *library root*. The folder connector
|
||||
# takes a typed absolute path (`SignIn::EndpointOnly`, placeholder
|
||||
# `/home/you/Pictures`) and checks it with `std::fs`, and nothing in the tree
|
||||
# calls the FileChooser portal — there is no ashpd, no rfd, no toolkit dialog.
|
||||
# A path typed into that field does not exist in this sandbox, so the launch
|
||||
# screen refuses it with "that folder does not exist", which is at least an
|
||||
# honest error.
|
||||
# What that leaves to the portal: choosing a *library root*, an import's
|
||||
# source and every other folder the desktop asks for. Since 0.17.0 they are
|
||||
# chosen in `ui/dr-ui/src/folder_dialog.rs`, which asks the FileChooser
|
||||
# portal through rfd (no talk hole needed: portals are always reachable),
|
||||
# and a folder chosen there arrives as a document-portal path under
|
||||
# /run/user/$UID/doc. That is the design; no Flatpak has been built from
|
||||
# this manifest yet, so it has not been seen to work in the sandbox.
|
||||
# Removable cards are still invisible to `dr_plat::volumes()`, which reads
|
||||
# the sandbox's own mount table; the import page's Browse… reaches one
|
||||
# through the same portal.
|
||||
#
|
||||
# `--filesystem=host` would make that work today and is exactly what the
|
||||
# requirement forbids, so it is not here. docs/dev/distribution.md §4 records what
|
||||
# closes the gap and how to run a Flatpak build in the meantime.
|
||||
# `--filesystem=host` would make all of it work without the portal and is
|
||||
# exactly what the requirement forbids, so it is not here.
|
||||
# docs/dev/distribution.md §4 records what is left to prove and how to run a
|
||||
# Flatpak build in the meantime.
|
||||
|
||||
modules:
|
||||
- name: darkroom
|
||||
|
||||
Reference in New Issue
Block a user