GNU bug report logs - #38926
pcmanfm-qt unable to open files by double click

Previous Next

Package: guix;

Reported by: "Reza Alizadeh Majd" <r.majd <at> pantherx.org>

Date: Sat, 4 Jan 2020 20:26:01 UTC

Severity: normal

Done: Marius Bakke <mbakke <at> fastmail.com>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Danny Milosavljevic <dannym <at> scratchpost.org>
To: "Reza Alizadeh Majd" <r.majd <at> pantherx.org>
Cc: 38926 <at> debbugs.gnu.org
Subject: bug#38926: pcmanfm-qt unable to open files by double click
Date: Mon, 6 Jan 2020 20:44:53 +0100
[Message part 1 (text/plain, inline)]
Hi Reza,

On Mon, 06 Jan 2020 20:15:43 +0330
"Reza Alizadeh Majd" <r.majd <at> pantherx.org> wrote:

> +        (add-before 'build 'patch-gio-launch-desktop
> +           (lambda* (#:key outputs #:allow-other-keys)
> +             (let ((bin-path (assoc-ref outputs "bin") "/bin"))
> +               (setenv "GIO_LAUNCH_DESKTOP"
> +                       (string-append bin-path "/bin/gio-launch-desktop"))
> +               #t)))

I don't think that will work.  According to the glib source code[1], the
variable is read at runtime of the final program.

What you could do is use your wrap-program in pcmanfm-qt, but with
GIO_LAUNCH_DESKTOP (value like above) instead of PATH.  That should fix
pcmanfm-qt and I don't see any forward incompatibility or side effects
introduced by it either.  Also, glib would be unmodified.

The downside would be that we would have to patch other broken programs
one by one (after *finding* them).

But I would still be in favor of that fix for now.  Could you try it and
send a patch?

In the end I hope upstream realizes the insane situation that is the status
quo and fixes it on their end (see
https://gitlab.gnome.org/GNOME/glib/issues/1633 for a bug report of this
problem).

We could also use /bin/sh instead of gio-launch-desktop like the bug report
suggests, but I'm not keen on increasing the attack surface so much, not
after the security vulnerabilities in bash.

The source code of gio-launch-desktop.c is very small and DOES NOT LINK
TO GLIB so we could just make it an extra package independent of glib.

Or we could just put it into the "out" output even though it's an
executable.

I've posted a patch to core-updates that does the latter[2].

[1] https://gitlab.gnome.org/GNOME/glib/merge_requests/95/diffs?commit_id=742efe6232aba81c2c52c229c900a57ec2afedfd
[2] https://bugs.gnu.org/38994
[Message part 2 (application/pgp-signature, inline)]

This bug report was last modified 5 years and 214 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.