exo-file-manager.desktop breaks file opening in non-XFCE DEs

Bug #956255 reported by Michael Ekstrand on 2012-03-15
28
This bug affects 3 people
Affects Status Importance Assigned to Milestone
exo
Fix Released
Medium
exo (Mandriva)
Unknown
Unknown
exo (Ubuntu)
Undecided
Unassigned

Bug Description

When exo-utils is installed on a system that is also running Gnome, the mime type entries in exo-file-manager.desktop break {gvfs,gnome,xdg}-open, so it's difficult to open files. This applies to Natty; likely fixed in later releases (see below).

This has been reported upstream (https://bugzilla.xfce.org/show_bug.cgi?id=7257), in Fedora (https://bugzilla.redhat.com/show_bug.cgi?id=674321), and is fixed here: http://git.xfce.org/xfce/exo/commit/?id=2e3744b9f9e64fbed18513027c0d000cbc8d046b

To reproduce, log in with Gnome on a system that also has Xfce installed, and do:

xdg-open /some/file.pdf

With that fix, I imagine that newer versions than the 0.6.0-1 in Natty are likely fixed. It'd be nice to have this patch backported to Natty, though. My university only updates to spring releases, and I'd like the fix.

From downstream report:

https://bugzilla.redhat.com/show_bug.cgi?id=674321

Basically exo causes problems for other desktops by setting up these mime types.

From the report:

--cut--
Something has added a "x-scheme-handler/file=exo-file-manager.desktop" record
in my ~/.local/share/applications/mimeapps.list file. This seriously messed up
overall functionality of gvfs-open (called through xdg-open). I only get a "The
location is not a folder" error (coming from Nautilus probably).

g_file_query_default_handler() is correct in this case and behaves according to
settings.

So my question is, why exo-file-manager.desktop contains this scheme handler in
a first case? Same situation with x-scheme-handler/trash.

As long as /usr/share/applications/mimeinfo.cache is composed from available
desktop files, this borked overall system functionality.

Version-Release number of selected component (if applicable):
exo-0.6.0-1.fc15.x86_64

How reproducible:
always

Steps to Reproduce:
1. install exo
2. gvfs-open /tmp/file.pdf
3. see a x-scheme-handler/file picked up before application/pdf
--cut--

So, things work fine for Xfce users, but people who switch desktops or normally run gnome or the like are getting messed up. ;(

Not sure what the solution might be.

In , 8-nick (8-nick) wrote :

Let Gnome users complain at bugzilla.gnome.org. They removed the on place we could influence the behaviour of gio in a decent way. So instead, knowing this would make things harder for not-fully-Xfce users, I choose to make it work for us.

Make exo-open could be a bit more intelligent, if so, I can fix that, but if Gnome decides to not care about others, I fix it the ugly way.

Another comment from the downstream report:

"One way to solve this for XFCE and other DEs would be (I think) having an
exo-file-scheme.desktop file which would carry "MimeType:
x-scheme-handler/file;" and an accompanying script/program which would dispatch
the call to "exo-open --launch FileManager ..." if running under XFCE or plain
"exo-open ..." if not. I checked that the latter indeed calls the appropriate
application.

Another way could be to find out if XFCE needs to have "MimeType:
x-scheme-handler/file;" defined at all, and if not, delete it."

(In reply to comment #1)
> Let Gnome users complain at bugzilla.gnome.org. They removed the on place we
> could influence the behaviour of gio in a decent way. So instead, knowing this
> would make things harder for not-fully-Xfce users, I choose to make it work for
> us.

Could you please point me to the discussion so that we can find out the requirements?

> Make exo-open could be a bit more intelligent, if so, I can fix that, but if
> Gnome decides to not care about others, I fix it the ugly way.

I'm not aware of what exactly exo-open does, but the x-scheme-handler takes priority on search - how do you handle finding the appropriate application for the given type, avoiding hitting the scheme handler?

There was a suggestion to replace "x-scheme-handler/file" with "inode/directory" to change the search priorities.

In , 8-nick (8-nick) wrote :

Dropped the mime-types for all the exo-open desktop files in 2e3744b. We only use this for menus and stuff, should not be used for opening files in thunar etc.

Changed in exo (Ubuntu):
status: New → Fix Released
Changed in exo (Ubuntu Natty):
status: New → Confirmed
Alad Wenter (the-changing-side) wrote :

Looks like this bug wasn't fixed, or at least reintroduced. Still present in Trusty. It also has the side effect of showing "File Manager" in every file's "Open With" menu.

In Xubuntu:

/usr/share/applications/exo-file-manager.desktop
MimeType=x-scheme-handler/file

/usr/share/xubuntu/applications/exo-file-manager.desktop
x-scheme-handler/file=exo-file-manager.desktop

~/.local/share/applications/mimeapps.list
x-scheme-handler/file=exo-file-manager.desktop

tags: added: trusty
removed: fixed-upstream
tags: added: natty
Alad Wenter (the-changing-side) wrote :

edit: /usr/share/xubuntu/applications/defaults.list

Daniel Hahler (blueyed) on 2014-05-29
Changed in exo (Ubuntu):
status: Fix Released → Triaged

Please re-open.

This bug was re-introduced later, see the log:
http://git.xfce.org/xfce/exo/log/exo-open/exo-file-manager.desktop.in

It looks like the suggestion from Tomas works:

> There was a suggestion to replace "x-scheme-handler/file" with "inode/directory" to change the search priorities.

diff --git i/exo-open/exo-file-manager.desktop.in w/exo-open/exo-file-manager.desktop.in
index 3d7653e..8d0a6cf 100644
--- i/exo-open/exo-file-manager.desktop.in
+++ w/exo-open/exo-file-manager.desktop.in
@@ -7,6 +7,6 @@ StartupNotify=true
 Terminal=false
 Categories=Utility;X-XFCE;X-Xfce-Toplevel;
 OnlyShowIn=XFCE;
-X-XFCE-MimeType=x-scheme-handler/file;x-scheme-handler/trash;
+X-XFCE-MimeType=inode/directory;x-scheme-handler/trash;
 _Name=File Manager
 _Comment=Browse the file system

(for reference, the bug in Launchpad/Ubuntu: https://bugs.launchpad.net/ubuntu/natty/+source/exo/+bug/956255)

Daniel Hahler (blueyed) wrote :

It got initially "fixed" by removing the mime-typed, but changed later again:
http://git.xfce.org/xfce/exo/log/exo-open/exo-file-manager.desktop.in

I have asked in the upstream report to please re-open and fix it.

Daniel Hahler (blueyed) wrote :

For reference: https://bugs.launchpad.net/ubuntu/+source/exo/+bug/1310979 has a patch:

https://launchpadlibrarian.net/173744914/file-manager-inode-directory.patch

I have proposed it upstream at:
https://bugzilla.xfce.org/show_bug.cgi?id=7257#c7

I will upload a fixed package later for utopic, and we could have a backport for Trusty then.
It would be nice it somebody could help with the SRU process:
https://wiki.ubuntu.com/StableReleaseUpdates

Daniel Hahler (blueyed) wrote :

I have uploaded the package from Alad, which contained another fix.

Thanks!

Changed in exo:
importance: Unknown → Medium
status: Unknown → Fix Released
Jackson Doak (noskcaj) on 2014-07-09
Changed in exo (Ubuntu):
status: Triaged → Fix Released
no longer affects: exo (Ubuntu Natty)
Daniel Hahler (blueyed) wrote :

If you are still affected with the fixed package in place, see http://askubuntu.com/a/493866/169.

I still had the buggy line in my local configuration:

% grep exo ~/.local/share/applications/mimeapps.list
x-scheme-handler/file=exo-file-manager.desktop
x-scheme-handler/trash=exo-file-manager.desktop

Removing the `x-scheme-handler/file=exo-file-manager.desktop` line fixed it.

Nick or Jannis, could someone take a look at the last patch and maybe commit it if it sounds sane?

Reopening to get it back on the radar.

Darin (newhoa) wrote :

I didn't have this problem in Zesty but since updating to Artful a few days ago this is a problem. I installed Nautilus on Xubuntu (uninstalled Thunar), and Nautilus opens files with itself until I uninstall exo-utils. Once I uninstall exo-utils Nautilus behaves as it should.

To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.