XDG Shortcut Standard for the Directory Type

Jacob firstcomputer at gmail.com
Wed Nov 2 15:23:58 UTC 2022


Hello,

I've just joined the mailing list. My name is Jake Gustafson, known as
Poikilos on GitHub and elsewhere. I have been creating stories, creature
drawings, and comics since I was a child. I started learning to code when I
was 12. If you look at my profile on GitHub <https://github.com/poikilos>
or or a high-level summary on my StackOverflow profile
<https://stackoverflow.com/users/4541104/poikilos>, you can see my various
contributions in the form of mostly some small python libraries not yet in
PyPi and also several pull requests to existing projects, as well as
assisting with identifying or diagnosing issues in public-licensed software.

Thanks for allowing me to join the mailing list automatically. I hope this
isn't a distraction from the mailing list if my issue is not supposed to be
here. The website said discussions about XDG should take place on this
mailing list. I hope this is the best place for the technical issue below,
since the issue involves the standard itself rather than the software,
which seems to implement the standard as the standard stands, from my tests
regarding this issue (using desktop-file-validate).

The standard itself is missing a definition of what key is appropriate for
the path where the Type is Directory. In fact, there doesn't seem to be any
specification of the Directory type in the XDG standard other than that the
extension should be ".directory". In fact, there seems to be no way to
construct such a file in a way that desktop-file-validate doesn't show an
error.

May I propose "Path" could be the key in this case? It seems intuitive.

It may also pave the way for a "File" Type implemented similarly. I suggest
adding that.

I have had several uses for such a feature so I implemented these features
in an alternative standard called blnk <https://github.com/poikilos/blnk>.
If XDG implements the features, I would change my program to match the
standard. The use cases are as follows:
- I (and various tech channels on YouTube) often install GNU/Linux systems
on old/new computers for relatives to avoid various Windows issues. Such
users don't understand symlinks. Even Mac users don't usually understand
aliases (which they are called there and made easy to create like on
Ubuntu) from what I've seen. They sometimes delete all of the files from
one symlinked directory since they think there are two copies of
everything. Having a shortcut that goes to the "real" directory is
preferable and safer in this case.
- In another case, the directory shortcut can point to a location that may
not always exist. Even some favorite bars or programs simply "forget" (or
hide) a subdirectory of an unmounted drive or remote host upon loading.
This is not clear to the user what is going on. They may wonder where the
shortcut went or what is happening. If there was a complete .directory file
standard, then DEs (maybe via xdg-launch or some new xdg command that
doesn't depend on mimetype) could launch the file and stderr could say that
the Directory is missing or not accessible. The current workaround is to
make an Application shortcut to a directory, but this is not always
advisable. I've heard recommendations online saying to launch some
particular file browser, whereas xdg-launch would be better. If the
.directory spec were completed then implemented be DEs, there would be a
clear answer to the question and there wouldn't have to be workarounds or
handwritten .desktop files.
- Perhaps DEs could implement following .desktop files in a similar way to
symlinks: to traverse folders while inside of a file/directory chooser
dialog box even. That feature is implemented on Windows, for example. That
would allow people to have shortcuts in an appropriate place instead of an
ever-growing "Favorites" bar in their file manager. Also, the favorites bar
gets reset to nothing upon changing to a different DE or upon running a
different flatpak. I understand these issues are not the realm of XDG to
implement, but having some sort of complete specification for
Type=Directory would allow DEs to do whatever they want with it and have a
clear way to remain compatible with other DEs in this regard, regardless of
whether their implementation involves my wishlist.

Thank you,
Jake "Poikilos" Gustafson
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/xdg/attachments/20221102/2d25722b/attachment.htm>


More information about the xdg mailing list