nixpkgs/pkgs/applications/misc/rxvt_unicode/default.nix
aszlig acafaf9b23
rxvt-unicode: Add path to terminfo file.
On NixOS, we have set TERMINFO_DIRS to the user environment, so urxvt and curses
programs running within urxvt are able to find the terminfo file. Unfortunately
this isn't the case if you're not using NixOS.

Of course we now no longer need the longDescription, which suggests to issue

export TERMINFO=~/.nix-profile/share/terminfo

... which to my eyes essentially is a workaround. So please correct me when I'm
wrong, but i think it's better if software is working as-is rather than
requiring additional configuration (except if it really makes sense or breaks
purity).

Thanks to Eelis in #nixos for reporting this.

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
2012-12-06 03:30:06 +01:00

41 lines
1.4 KiB
Nix

{ stdenv, fetchurl, perlSupport, libX11, libXt, libXft, ncurses, perl,
fontconfig, freetype, pkgconfig, libXrender }:
let
name = "rxvt-unicode";
version = "9.15";
n = "${name}-${version}";
in
stdenv.mkDerivation (rec {
name = "${n}${if perlSupport then "-with-perl" else ""}";
src = fetchurl {
url = "http://dist.schmorp.de/rxvt-unicode/Attic/rxvt-unicode-${version}.tar.bz2";
sha256 = "ec1aa2932da844979ed8140bd92223defb12042aa5e877e05ac31139ca81f2b1";
};
buildInputs =
[ libX11 libXt libXft ncurses /* required to build the terminfo file */
fontconfig freetype pkgconfig libXrender ]
++ stdenv.lib.optional perlSupport perl;
preConfigure =
''
configureFlags="--with-terminfo=$out/share/terminfo ${if perlSupport then "--enable-perl" else "--disable-perl"}";
export TERMINFO=$out/share/terminfo # without this the terminfo won't be compiled by tic, see man tic
NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -I${freetype}/include/freetype2"
NIX_LDFLAGS="$NIX_LDFLAGS -lfontconfig -lXrender "
''
# make urxvt find its perl file lib/perl5/site_perl is added to PERL5LIB automatically
+ stdenv.lib.optionalString perlSupport ''
mkdir -p $out/lib/perl5
ln -s $out/{lib/urxvt,lib/perl5/site_perl}
'';
meta = {
description = "A clone of the well-known terminal emulator rxvt";
homepage = "http://software.schmorp.de/pkg/rxvt-unicode.html";
};
})