From e72b00b2d74795f19dd645f030ec2049adcb78eb Mon Sep 17 00:00:00 2001 From: Eelco Dolstra <eelco.dolstra@logicblox.com> Date: Sun, 19 Apr 2009 19:06:34 +0000 Subject: [PATCH] * Leksah: forgot to commit. Also, use makeWrapper to set XDG_DATA_DIRS to gtksourceview; otherwise, gtksourceview can't find its syntax highlighting files. * Updated gtk2hs to the latest version from Darcs. Otherwise Leksah crashes on GHC 6.10.2. svn path=/nixpkgs/trunk/; revision=15162 --- pkgs/applications/editors/leksah/default.nix | 26 +++++++++++++++++++ .../libraries/haskell/gtk2hs/default.nix | 19 +++++++------- pkgs/top-level/haskell-packages.nix | 2 +- 3 files changed, 37 insertions(+), 10 deletions(-) create mode 100644 pkgs/applications/editors/leksah/default.nix diff --git a/pkgs/applications/editors/leksah/default.nix b/pkgs/applications/editors/leksah/default.nix new file mode 100644 index 000000000000..9943ce39ba85 --- /dev/null +++ b/pkgs/applications/editors/leksah/default.nix @@ -0,0 +1,26 @@ +{cabal, gtk2hs, binary, parsec, regexPosix, utf8_string, libedit, makeWrapper}: + +cabal.mkDerivation (self : { + pname = "leksah"; + version = "0.4.4.1"; + sha256 = "092a8gi73jhalgs4ppg8ki761vwk3gdnjwlyd4chnahbv5i1wrjw"; + + # !!! The explicit libedit dependency shouldn't be necessary. + extraBuildInputs = [gtk2hs binary parsec regexPosix utf8_string libedit makeWrapper]; + + preConfigure = + '' + substituteInPlace leksah.cabal --replace 'Cabal ==1.6.0.1' 'Cabal >=1.6.0.1' + ''; + + postInstall = + '' + wrapProgram $out/bin/leksah --prefix XDG_DATA_DIRS : ${gtk2hs.gtksourceview}/share + ''; + + meta = { + homepage = http://leksah.org/; + description = "An Integrated Development Environment for Haskell written in Haskell"; + }; +}) + diff --git a/pkgs/development/libraries/haskell/gtk2hs/default.nix b/pkgs/development/libraries/haskell/gtk2hs/default.nix index 3c10861d6244..394151c6cca4 100644 --- a/pkgs/development/libraries/haskell/gtk2hs/default.nix +++ b/pkgs/development/libraries/haskell/gtk2hs/default.nix @@ -1,6 +1,6 @@ -{ stdenv, fetchurl, pkgconfig, gnome, cairo -, ghc, mtl -}: +{ stdenv, fetchurl, pkgconfig, gnome, cairo, ghc, mtl }: + +let gtksourceview = gnome.gtksourceview_24; in stdenv.mkDerivation rec { pname = "gtk2hs"; @@ -9,16 +9,15 @@ stdenv.mkDerivation rec { name = "haskell-${pname}-ghc${ghc.ghc.version}-${version}"; src = fetchurl { - url = "mirror://sourceforge/${pname}/${fname}.tar.gz"; - sha256 = "03ii8j13cphjpw23nnyp0idxqgd2r8m4f2jpb251g7vxrb56dw0v"; + url = http://nixos.org/tarballs/gtk2hs-0.10.0-20090419.tar.gz; + sha256 = "18a7cfph83yvv91ks37nrgqrn21fvww8bhb8nd8xy1mgb8lnfds1"; }; - + propagatedBuildInputs = [mtl]; buildInputs = [ - pkgconfig cairo gnome.glib gnome.gtk gnome.libglade gnome.GConf - gnome.gtksourceview_24 gnome.librsvg - ghc + pkgconfig cairo ghc gnome.glib gnome.gtk gnome.libglade + gnome.GConf gtksourceview gnome.librsvg ]; postInstall = @@ -27,4 +26,6 @@ stdenv.mkDerivation rec { ensureDir $confDir cp $out/lib/gtk2hs/*.conf $confDir/ ''; # */ + + passthru = { inherit gtksourceview; }; } diff --git a/pkgs/top-level/haskell-packages.nix b/pkgs/top-level/haskell-packages.nix index 404a85507efd..2a2f3f096db9 100644 --- a/pkgs/top-level/haskell-packages.nix +++ b/pkgs/top-level/haskell-packages.nix @@ -266,7 +266,7 @@ rec { leksah = import ../applications/editors/leksah { inherit cabal gtk2hs binary parsec regexPosix utf8_string; - inherit (pkgs) libedit; + inherit (pkgs) libedit makeWrapper; }; xmobar = import ../applications/misc/xmobar {