[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH] profiles: Add 'hicolor' and 'HighContrast' icon theme hooks.
From: |
Ludovic Courtès |
Subject: |
Re: [PATCH] profiles: Add 'hicolor' and 'HighContrast' icon theme hooks. |
Date: |
Sun, 10 May 2015 21:57:08 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux) |
宋文武 <address@hidden> skribis:
> Ludovic Courtès <address@hidden> writes:
>
>> 宋文武 <address@hidden> skribis:
[...]
>>>> + (gexp->derivation (string-append (string-downcase name) "-icon-theme")
>>>> + build
>>>> + #:modules '((guix build utils)
>>>> + (guix build union))
>>>> + #:local-build? #t)))
>>> When to exclude this derivation?
>>>
>>> 1. the best would be whether icon dir exists or not
>>> but is this posibble to implement? and how?
>>
>> Currently this is not possible. The builder could depend on all the
>> manifest entries and scan them for share/icons directory, but at this
>> point it’s already too later because the build has to depend on GTK+.
> Does it mean we can't scan them (manifest-inputs) out of the builder,
> because they may haven't be realized?
Exactly.
>>> 2. whether we have a gtk+ package in profile
>>
>> That’s no usually the case. For instance, I have Evince and GIMP in my
>> profile, but not GTK+.
>>
>> What could be done is to check whether GTK+ appears and an direct or
>> indirect dependency of the packages being installed.
>>
>> Currently manifest entries can contain either a package object or a
>> store path. In the former case, one has to use package->bag and then
>> look for GTK+ in the bag’s transitive inputs. In the latter, case, one
>> needs to call ‘references’ to check whether the store item, which is
>> already built, depends on GTK+.
>>
>> When none of the manifest’s packages depends on GTK+, then the hook can
>> just return #f, like ghc-package-cache-file does.
>>
>> Does that make sense?
> OK, I'll try this way.
>
> And, which GTK+ we should use to do the icon update?
> How about choose the one referenced by manifest entries
> (either gtk+-2 or gtk+-3) instead of the latest gtk+-3 deployed?
That makes sense. I guess we’re in trouble if there are both GTK+2 and
GTK+3 packages in use, no?
Thanks,
Ludo’.