Subject: Re: bug#26988: Add desktop-file-utils to all gtk applications

From: Danny Milosavljevic <[email-masked]>
Date: Sat, 20 May 2017 15:04:11 +0200

Hi Marius,
Hi 宋文武,

On Sat, 20 May 2017 01:05:22 +0200
Marius Bakke <[email-masked]> wrote:

> Danny Milosavljevic <[email-masked]> writes:
> 
> > these are two patches I propose we add in order to add
> > desktop-file-utils to all gtk applications.  This means that the
> > profile hook would pick up the desktop files (as soon as possible).  
> 
> So if I read (guix profiles) correctly, the hook only runs when
> 'desktop-file-utils' is referenced. Would checking for a gtk reference
> as well not achieve the same effect? Or is that too expensive?

That would probably work as well.

But the idea is KDE would eventually use the XDG desktop cache, too (maybe it already does - no idea).  Any other desktop environments that don't reinvent the wheel in that regard would use desktop-file-utils as well - and that's the package that actually contains the "update-desktop-database" executable for updating the XDG desktop cache.

Right now the "xdg-desktop-database" profile hook doesn't need its own magical packages but it just uses the existing desktop-file-utils reference for actually updating the desktop database.

At least I think that's the idea there.  宋文武 wrote the update-desktop-database part in the profile hook... 宋文武, what do you think?

> > One patch moves desktop-file-utils from (gnu packages gnome) to (gnu
> > packages freedesktop).  I suggest we apply this patch to all branches
> > - since they don't change anything in the build.  
> 
> Adding it to 'master' would be sufficient, no? It will be merged to
> 'staging' and 'core-updates' in due time.

> I don't see a good reason to move it though, but no strong opinion. 

desktop-file-utils is a freedesktop project.

If we don't move it and if KDE used desktop-file-utils (as it should), we'd have KDE depend on Gnome.

Also, it causes module reference cycles if we don't move it.  I don't like those - even though they seem to work in this instance.

I think moving it is preferrable to having it sit there, waiting to make the module cycles explode.

>Make sure all dependent packages still finds it!

Yes, I should add a reference to (gnu packages freedesktop) in (gnu packages xfce), (gnu packages game-development) and (gnu packages engineering) in the next version.

If we did move it in all branches, I mean also in wip-installer etc, I think it would prevent any merging problems - since git uses file hashes as commits - and people would not have to take care whether this branch has already moved it or not.

Moving wouldn't cause any rebuilds and fallout would be minimal - the risk would be very low.

> > The other patch adds desktop-file-utils as propagated-input to gtk+-2
> > (and by inheritance to gtk+ 3, too).  That would [entail rebuilding] all gtk
> > applications.  Therefore, it should only go to core-updates.  
> 
> Not just all gtk applications, but also anything depending on those. Can
> you add a comment about why we propagate 'desktop-file-utils' from gtk?

There's one:

+      ("desktop-file-utils" ,desktop-file-utils) ; Used by profile hook.

Do you mean we should add some more text?