In this case I've tried it myself. I've invoked gdb $(which pcmanfm-qt) then r then I double-clicked an entry and waited until the error dialog window appeared. then I DIDN'T CLICK IT AWAY. then I pressed Ctrl-C in gdb then bt and so I found: [...] #6 0x00007ffff7ea1642 in Fm::FileLauncher::showError(_GAppLaunchContext*, Fm::GErrorPtr const&, Fm::FilePath const&, std::shared_ptr const&) () from /gnu/store/91d7kqg44cfzcav1l2wfn84hr310xvyx-libfm-qt-0.14.1/lib/libfm-qt.so.6 #7 0x00007ffff7e88939 in Fm::BasicFileLauncher::launchWithApp(_GAppInfo*, std::vector > const&, _GAppLaunchContext*) () from /gnu/store/91d7kqg44cfzcav1l2wfn84hr310xvyx-libfm-qt-0.14.1/lib/libfm-qt.so.6 #8 0x00007ffff7e8ae4d in Fm::BasicFileLauncher::launchFiles(Fm::FileInfoList const&, _GAppLaunchContext*) () from /gnu/store/91d7kqg44cfzcav1l2wfn84hr310xvyx-libfm-qt-0.14.1/lib/libfm-qt.so.6 #9 0x00007ffff7ea11b7 in Fm::FileLauncher::launchFiles(QWidget*, Fm::FileInfoList const&) () from /gnu/store/91d7kqg44cfzcav1l2wfn84hr310xvyx-libfm-qt-0.14.1/lib/libfm-qt.so.6 #10 0x00007ffff7ead5a2 in Fm::FolderView::onFileClicked(int, std::shared_ptr const&) () from /gnu/store/91d7kqg44cfzcav1l2wfn84hr310xvyx-libfm-qt-0.14.1/lib/libfm-qt.so.6 #11 0x000000000044aa55 in PCManFM::View::onFileClicked(int, std::shared_ptr const&) () [...] Therefore, the interesting part would be either Fm::BasicFileLauncher::launchWithApp or Fm::BasicFileLauncher::launchFiles . The former (inside package "libfm-qt") uses g_app_info_get_default_for_type to get the app to use. I suspect that that returns "gio-launch-desktop" without the full path--which is wrong. Checking glib source code, there's an environment variable GIO_LAUNCH_DESKTOP that you can set (to the full path of gio-launch-desktop) for a first workaround. Or, for a complete fix, patch glib-2.60.6/gio/gdesktopappinfo.c tmp = "gio-launch-desktop" to say tmp = "/gnu/store/xyz-glib-.../bin/gio-launch-desktop"; instead. The latter has the advantage that it magically fixes ALL the applications. I hope that helps.