guix-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: XDG standard desktop entries - desktop-file-utils and gtk, and KDE:


From: Chris Marusich
Subject: Re: XDG standard desktop entries - desktop-file-utils and gtk, and KDE: mechanism of desktop database generation in profiles
Date: Sun, 07 May 2017 17:35:46 -0700
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/25.2 (gnu/linux)

Danny Milosavljevic <address@hidden> writes:

>>If a software component comes with desktop files, what's the right place to 
>>put them relative to the component's output path?
>
> share/applications
>
>> I think we're doing this already for some Guix packages, but since my
>> knowledge of the FreeDesktop standard is limited, I'm not sure if it's
>> by accident or if it's intentional.
>
> It's intentional.  I'm actively filing bugs and fixing them if GUI
> programs don't have a desktop file - because that's just silly, having
> a program you can't (easily) run.
>
> See guix/profiles.scm xdg-desktop-database for the profile hook that merges 
> all the share/applications directories of the packages in the profile.
> For the hook to be run, desktop-file-utils (of freedesktop) has to be
> an input of the package or some of its dependencies (i.e. it has to be
> available on the build side in the environment).
>
> I think we should just make desktop-file-utils a propagated-input of gtk.
>
> (In fact, even gio (part of glib) already supports desktop files:
> https://developer.gnome.org/gio/stable/gio-Desktop-file-based-GAppInfo.html
> . However, there are lots of non-GUI programs using glib.  For
> example, desktop-file-utils uses glib)
>
> Disclaimer: I have no idea how KDE works - but desktop-file-utils seems to be 
> missing entirely there.  Qt doesn't require it either.  Weird.
>
> Similar stuff is done if GLIB is a dependency of a package, for 
> xdg-mime-database.

Is this supposed to work "out of the box" on foreign distros?

I've noticed that when I install an application (e.g.,
"cool-retro-term"), the application shows up via the "Search" feature of
the "Application Overview" in GNOME3 on GuixSD [1], but not in Ubuntu
via the Dash's search results [2].  In Ubuntu, I tried adding
$HOME/.guix-profile/share to the XDG_DATA_DIRS, but even after
rebooting, the Dash search still failed to find the application.

In Ubuntu, the application only showed up in the Dash search results
after I manually copied the desktop entry for the application out of the
store and put it into a well-known location, such as
~/.local/share/applications.  I might have also had to set the
executable bit [3]; I can't remember exactly, and I've since deleted the
file because I wasn't satisfied with this work-around.

[1] https://wiki.gnome.org/Gnome3CheatSheet#Activities_Overview

[2] https://help.ubuntu.com/stable/ubuntu-help/unity-dash-intro.html

[3]
https://askubuntu.com/questions/419610/permission-of-a-desktop-file
https://wiki.ubuntu.com/SecurityTeam/Policies#Execute-Permission_Bit_Required

-- 
Chris

Attachment: signature.asc
Description: PGP signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]