diff options
author | Peter Simons <simons@cryp.to> | 2015-05-07 11:16:01 +0200 |
---|---|---|
committer | Peter Simons <simons@cryp.to> | 2015-05-07 11:16:01 +0200 |
commit | 8ea440b59bd27148680dc8cd847d59d29996ebeb (patch) | |
tree | 5f9cd2207894fac5deb30681501861e6781b018b /pkgs | |
parent | 650d3f8fc4e49d6caed46b8f6db077e634682bd6 (diff) | |
parent | 6119355c9cecbdc8f49abf0b7b4502c78a931d83 (diff) | |
download | nixlib-8ea440b59bd27148680dc8cd847d59d29996ebeb.tar nixlib-8ea440b59bd27148680dc8cd847d59d29996ebeb.tar.gz nixlib-8ea440b59bd27148680dc8cd847d59d29996ebeb.tar.bz2 nixlib-8ea440b59bd27148680dc8cd847d59d29996ebeb.tar.lz nixlib-8ea440b59bd27148680dc8cd847d59d29996ebeb.tar.xz nixlib-8ea440b59bd27148680dc8cd847d59d29996ebeb.tar.zst nixlib-8ea440b59bd27148680dc8cd847d59d29996ebeb.zip |
Merge pull request #7600 from jraygauthier/jrg/add_diagrambuilder_stdalone_pkg
Added standalone diagram-builder haskell package.
Diffstat (limited to 'pkgs')
-rw-r--r-- | pkgs/tools/graphics/diagrams-builder/default.nix | 44 | ||||
-rw-r--r-- | pkgs/top-level/all-packages.nix | 4 |
2 files changed, 48 insertions, 0 deletions
diff --git a/pkgs/tools/graphics/diagrams-builder/default.nix b/pkgs/tools/graphics/diagrams-builder/default.nix new file mode 100644 index 000000000000..a12e5dbb8bb3 --- /dev/null +++ b/pkgs/tools/graphics/diagrams-builder/default.nix @@ -0,0 +1,44 @@ +/* + If user need access to more haskell package for building his + diagrams, he simply has to pass these package through the + extra packages function as follow in `config.nix`: + + ~~~ + diagrams-builder.override { + extraPackages = self : [myHaskellPackage]; + } + ~~~ +*/ + +{ stdenv, ghcWithPackages, makeWrapper, diagrams-builder, extraPackages ? (self: []) }: + +let + + # Used same technique as for the yiCustom package. + wrappedGhc = ghcWithPackages + (self: [ diagrams-builder ] ++ extraPackages self); + ghcVersion = wrappedGhc.version; + + exeWrapper = backend : '' + makeWrapper \ + "${diagrams-builder}/bin/diagrams-builder-${backend}" "$out/bin/diagrams-builder-${backend}" \ + --set NIX_GHC ${wrappedGhc}/bin/ghc \ + --set NIX_GHC_LIBDIR ${wrappedGhc}/lib/ghc-${ghcVersion} + ''; + + backends = ["svg" "cairo" "ps"]; + +in + +stdenv.mkDerivation { + name = "diagrams-builder"; + + buildInputs = [ makeWrapper ]; + + buildCommand = with stdenv.lib; + concatStrings (intersperse "\n" (map exeWrapper backends)); + + # Will be faster to build the wrapper locally then to fetch it from a binary cache. + preferLocalBuild = true; + meta = diagrams-builder.meta; +} \ No newline at end of file diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 6bac3bfc57bf..4206cc2cb92f 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -786,6 +786,10 @@ let ddate = callPackage ../tools/misc/ddate { }; + diagrams-builder = callPackage ../tools/graphics/diagrams-builder { + inherit (haskellngPackages) ghcWithPackages diagrams-builder; + }; + direnv = callPackage ../tools/misc/direnv { }; discount = callPackage ../tools/text/discount { }; |