nixpkgs/pkgs/development/libraries/haskell/HFuse/default.nix
Gergely Risko d26466c6d8 Fix impurity in HFuse
This impurity caused hsc2hs to start look into /usr/include in any Cabal
project that depends on HFuse on systems where /usr/include is present.
2013-09-08 22:25:27 +02:00

25 lines
1.1 KiB
Nix

{ cabal, fuse }:
cabal.mkDerivation (self: {
pname = "HFuse";
version = "0.2.4.1";
sha256 = "12k04dvh92kk2i68bcb70xnk378qxmh46f241k06di5rkcgwyg1k";
extraLibraries = [ fuse ];
preConfigure = ''
sed -i -e "s@ Extra-Lib-Dirs: /usr/local/lib@ Extra-Lib-Dirs: ${fuse}/lib@" HFuse.cabal
sed -i -e "s@ Include-Dirs: /usr/include, /usr/local/include, .@ Include-Dirs: ${fuse}/include@" HFuse.cabal
sed -i -e "s/LANGUAGE FlexibleContexts/LANGUAGE FlexibleContexts, RankNTypes/" System/Fuse.hsc
sed -i -e "s/E(Exception/E(catch, Exception, IOException/" System/Fuse.hsc
sed -i -e "s/IO(catch,/IO(/" System/Fuse.hsc
sed -i -e "s/IO.catch/ E.catch/" System/Fuse.hsc
sed -i -e "s/const exitFailure/\\\\(_ :: IOException) -> exitFailure/" System/Fuse.hsc
'';
meta = {
homepage = "https://github.com/toothbrush/hfuse";
description = "HFuse is a binding for the Linux FUSE library";
license = self.stdenv.lib.licenses.bsd3;
platforms = self.ghc.meta.platforms;
maintainers = [ self.stdenv.lib.maintainers.andres ];
};
})