guix-devel
[Top][All Lists]
Advanced

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

Re: What for 0.5?


From: Ludovic Courtès
Subject: Re: What for 0.5?
Date: Mon, 11 Nov 2013 21:35:12 +0100
User-agent: Gnus/5.130007 (Ma Gnus v0.7) Emacs/24.3 (gnu/linux)

Andreas Enge <address@hidden> skribis:

> On Wed, Nov 06, 2013 at 02:04:10PM +0100, Ludovic Courtès wrote:
>>   • Use a hack like that of Nixpkgs, which systematically copies and
>>     rebuilds (with glib-compile-schemas) the “standard” schemas: see
>>     ‘doCompileSchemas’ at
>>     
>> <https://github.com/NixOS/nixpkgs/blob/master/pkgs/desktops/gnome-3/core/gsettings-desktop-schemas/default.nix>
>>     and its use at
>>     
>> <https://github.com/NixOS/nixpkgs/blob/master/pkgs/desktops/gnome-3/core/evince/default.nix>.
>> 
>> The latter seems reasonable, and fairly easy to do.
>
> Could you elaborate on what is happening there? It looks rather mysterious
> to me.

There’s this snippet:

--8<---------------cut here---------------start------------->8---
doCompileSchemas = ''                                                           
  for pkg in "${gsettings_desktop_schemas}" "${gtk3}"; do                       
    cp -s $pkg/share/glib-2.0/schemas/*.gschema.xml $out/share/glib-2.0/schemas/
  done                                                                          
  ${glib}/bin/glib-compile-schemas $out/share/glib-2.0/schemas/                 
'';                                                                             
--8<---------------cut here---------------end--------------->8---

that gets inserted in the post-install phase of Evince and similar
programs.

In addition, Evince & co. have their $XDG_DATA_DIRS that refers to those
schemas:

--8<---------------cut here---------------start------------->8---
     wrapProgram "$out/bin/evince" \                                            
                                             
       --prefix XDG_DATA_DIRS : "${shared_mime_info}/share:$out/share"          
                                             
--8<---------------cut here---------------end--------------->8---

In effect, it makes sure that all the standard schemas are available
along with each application that needs it.

Ludo’.



reply via email to

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