From mboxrd@z Thu Jan 1 00:00:00 1970 From: Federico Beffa Subject: Re: wrap-program Date: Sat, 27 Sep 2014 16:53:41 +0200 Message-ID: References: <87y4tliahf.fsf@gnu.org> <87r3zabohm.fsf@gnu.org> <8738bp16k4.fsf@gnu.org> <87lhpgoxjp.fsf@gnu.org> <87fvfm8m4f.fsf@gnu.org> <87fvfm595n.fsf@gnu.org> <874mw0umtv.fsf_-_@gnu.org> <87tx3yi3ky.fsf@yeeloong.lan> <87egv15w7s.fsf_-_@gnu.org> <87a95lju7g.fsf@gnu.org> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:51740) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XXtNd-0001oY-PD for guix-devel@gnu.org; Sat, 27 Sep 2014 10:53:50 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1XXtNc-0006tv-Js for guix-devel@gnu.org; Sat, 27 Sep 2014 10:53:49 -0400 In-Reply-To: <87a95lju7g.fsf@gnu.org> List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org To: =?UTF-8?Q?Ludovic_Court=C3=A8s?= Cc: guix-devel@gnu.org ludo@gnu.org (Ludovic Court=C3=A8s) writes: > Federico Beffa skribis: > >> 1. GSettings schemas: More than schemas compilation, the problem is that >> the schemas are by default expected to be in $datadir/glib-2.0/schemas >> (with $datadir usually being /usr/share). In spite of this, other >> directories can be specified with the help of the environment variable >> $XDG_DATA_DIRS. Since at glib-2.0 compiled time we can't know the path >> of future application installations, we may want to define > > Right, that=E2=80=99s one of the reasons why the =E2=80=98glib=E2=80=99 p= ackage defines it as > its search path (see glib.scm.) > I'm not sure I understand. Take emacs: the package does not have glib as an input. However, it does have gtk+, which defines schemas in its own tree ".../gtk+-3.10.1/share/glib-2.0/schemas" (and gtk+ is not an input to glib). Therefore, having $XDG_DATA_DIRS in the glib package does not help emacs. The emacs packge needs its own $XDG_DATA_DIRS pointing to the gtk+ schemas. >> >> GTK_EXE_PREFIX=3D"$HOME/.guix-profile" > > That would be easy and could be defined in /etc/profile on the > standalone system. > > However that would force users to install GTK+ in their profile so that > the modules it comes with are found, right? This would be inconvenient. > Yes, so we should probably define $GTK_EXE_PREFIX in the emacs package with the full path (/gnu/store/...) and not $HOME/.... And given that the gtk+ module is provided by libcanberra, the latter should be an input to emacs as well. > Yes, this is the preferred solution, I think (and I think it=E2=80=99s th= is case > it=E2=80=99s OK to have these two variables leak in sub-processes, as dis= cussed > with Mark.) However, we=E2=80=99d like to factorize the extra phase that= does > the wrapping, so we don=E2=80=99t repeat it for each and every program. > Since I'm new to glib schemas and gtk modules, I'm trying to understand the correct broadest approach before doing anything. > I think these are mostly GUIs, unlikely to be launched by a service. > I was thinking about windows managers and desktops. Not sure they really need this. >> This could also serve the second purpose of providing initial default >> applications (like guix itself!) to all users on "guix on distro" >> systems. > > Hmm what do you mean? > I was thinking about a convenient mechanism for providing packages visible to all users of a system. Regards, Fede