Am Samstag, dem 03.08.2024 um 20:33 +0200 schrieb Sébastien Lerique: > Ahoy Guix! > > "xdg-mime query filetype a-book.epub" or "whatever.pdf" returns > nothing, which is both puzzling and limiting as it blocks "xdg-open" > to work for many files. > > My case was opening pdf or epub files from Emacs, which "xdg-open" > always sends to the browser, whatever my config (instead of e.g. > evince or Foliate). > > So debugging shows that: > in ".xdg-mime-real", > (/gnu/store/06ll0ydqsf4bjxwpwsi68dmn2cg0biy6-xdg-utils-1.1.3/bin/xdg- > mime > points there), > l.673-684 in "info_gnome()", > even if the "if ... elif ... elif ... fi" fails > (i.e. none of "gio", "gvfs-info", or "gnomevfs-info" are available), > then l.696 "if [ $? -eq 0 ]" gives always true. > > Why? I don't know. I guess having a "case ..." instead of "if ... fi" > would solve this. Could you prepare a patch to do so? Or has one already been proposed upstream?
> But the result is "exit_success" gets called whatever the situation, > and xdg-mime often gives no output, which then bugs "xdg-open". > > Running this in "guix shell gnome-vfs" solves it, but what should be > done to fix? And how did this not appear earlier? (is xdg* new?) > > The options I see are adding the "gnome-vfs" dependency ("gvfs" > doesn't provide "gvfs-info", and "gio" is not a package), or > proposing "case" instead of "if" upstream. Note: In GNOME, prefer `gio open', it's part of glib:bin. On other desktops, I don't know what the preferred solution would be. Cheers