Comment by nickjj

14 hours ago

> No one on earth has so far managed to get xdg default apps work on Linux.

I've only been using Linux for a few weeks but what am I missing here?

I set a bunch of mime types in `~/.config/mimeapps.list` which are assigned to desktop apps and they all open perfectly with `xdg-open` or when I launch them through a file manager.

It is documented in the XDG specification https://specifications.freedesktop.org/mime-apps/latest/file....

For me currently, when trying to open a `text/markdown` file, there's a disassociation between what my file manager (Caja) runs (own bin/emacs script; was under the impression it was auto-creating a .desktop file), what mimeapps.list have (emacs.desktop), and what `xdg-open` runs (Firefox for some reason).

  • Older desktops don’t follow the specs and xdg-open does different things based on the desktop, so they indeed can get out of sync.

    I’d have to look into your specific case but `gio mime` and `gio open` do the right things.

> what am I missing here?

There are gotchas, for instance Chrom,{e,ium} insists on XDG_DESKTOP_DIR != XDG_DOWNLOAD_DIR.

See this bug report from a confused user: https://issues.chromium.org/issues/41076564

  • > also of note, we (mostly) don't allow ~/Desktop as the download dir for security reasons

    This isn't an XDG issue. It's a chromium engineers being silly pricks that think they know better than the power users who obviously went out of their way to create such a configuration. Also I bet it would work if you set your XDG_DESKTOP_DIR to ~/Download/