Hello, some programs install app-defaults (a typical X resources file), that are needed for the program to work. This is the case of xfontsel, which I commited recently.
xfontsel looks for installed app-defaults in the libXt store path (in fact, its make install attempts to install them there), and then in $HOME. As for other xorg programs, the app-defaults are installed in $out instead of the libXt through a 'hack'. From xorg's builder.sh: installFlags="appdefaultdir=$out/share/X11/app-defaults" This does not make the files usable. Instead, one should take those files and put them plainly at $HOME. xfontsel behaves bad if it lacks its app-defaults file. Has anyone thought of a solution to that? By now the app-defaults files are installed in $out, but they are never read. Regards, Lluís. 2009/12/24 Llus Batlle <[email protected]>: > Author: viric > Date: 2009-12-24 14:48:36 +0000 (Thu, 24 Dec 2009) > New Revision: 19092 > > You can view the changes in this commit at: > https://svn.nixos.org/viewvc/nix?rev=19092&view=rev > > Added: > nixpkgs/trunk/pkgs/applications/misc/xfontsel/ > nixpkgs/trunk/pkgs/applications/misc/xfontsel/default.nix > Modified: > nixpkgs/trunk/pkgs/top-level/all-packages.nix > > Log: > Adding xfontsel. A bit hacky (to work well, it requires copying its > app-defaults to $HOME) > As app-defaults should be installed with the libXt (maybe it's libXt which > loads them), and > stracing that is the place where the code looks for app-defaults (the libXt > store path), I > don't know of any better solution in nixpkgs by now. > > > > Changes: > > Added: nixpkgs/trunk/pkgs/applications/misc/xfontsel/default.nix > =================================================================== > --- nixpkgs/trunk/pkgs/applications/misc/xfontsel/default.nix > (rev 0) > +++ nixpkgs/trunk/pkgs/applications/misc/xfontsel/default.nix 2009-12-24 > 14:48:36 UTC (rev 19092) > @@ -0,0 +1,23 @@ > +# This program used to come with xorg releases, but now I could only find it > +# at http://www.x.org/releases/individual/. > +# That is why this expression is not inside pkgs.xorg > + > +{stdenv, fetchurl, libX11, pkgconfig, libXaw, libXi, imake, xauth, libXau}: > +stdenv.mkDerivation rec { > + name = "xfontsel-1.0.2"; > + > + src = fetchurl { > + url = "http://www.x.org/releases/individual/app/${name}.tar.bz2"; > + sha256 = "1a86a08sf0wjrki9ydh7hr5qf6hrixc4ljlxizakjzmx20wvlrks"; > + }; > + > + buildInputs = [libX11 pkgconfig libXaw]; > + > + # This will not make xfontsel find its app-defaults, but at least the $out > + # directory will contain them. > + # hack: Copying the XFontSel app-defaults file to $HOME makes xfontsel > work. > + patchPhase = '' > + sed -i > 's...@^appdefaultdir=.*@appdefaultdir='$out/share/X11/app-defaults@ configure > + ''; > +} > + > > Modified: nixpkgs/trunk/pkgs/top-level/all-packages.nix > =================================================================== > --- nixpkgs/trunk/pkgs/top-level/all-packages.nix 2009-12-24 12:48:01 > UTC (rev 19091) > +++ nixpkgs/trunk/pkgs/top-level/all-packages.nix 2009-12-24 14:48:36 > UTC (rev 19092) > @@ -6731,6 +6731,12 @@ > inherit (xlibs) libX11 libXxf86vm; > }; > > + xfontsel = import ../applications/misc/xfontsel { > + inherit fetchurl stdenv pkgconfig; > + inherit (xlibs) libX11 libXi imake libXau libXaw; > + inherit (xorg) xauth; > + }; > + > fspot = import ../applications/graphics/f-spot { > inherit fetchurl stdenv perl perlXMLParser pkgconfig mono > libexif libjpeg sqlite lcms libgphoto2 monoDLLFixer; > > _______________________________________________ > nix-commits mailing list > [email protected] > http://mail.cs.uu.nl/mailman/listinfo/nix-commits > _______________________________________________ nix-dev mailing list [email protected] https://mail.cs.uu.nl/mailman/listinfo/nix-dev
