summary refs log tree commit diff
path: root/pkgs/development/haskell-modules
diff options
context:
space:
mode:
authorNicholas Clarke <nick@topos.org.uk>2017-08-21 12:18:23 +0100
committerNicholas Clarke <nick@topos.org.uk>2017-09-04 12:35:58 +0100
commit414a557904f5e22285c4abba4cb2c3ff7b75bb2c (patch)
tree26a9522139404394fbc9cb209a6e7c03518a4ea6 /pkgs/development/haskell-modules
parent77cfb96fb177e3ba95104be0869c6f8315669769 (diff)
downloadnixlib-414a557904f5e22285c4abba4cb2c3ff7b75bb2c.tar
nixlib-414a557904f5e22285c4abba4cb2c3ff7b75bb2c.tar.gz
nixlib-414a557904f5e22285c4abba4cb2c3ff7b75bb2c.tar.bz2
nixlib-414a557904f5e22285c4abba4cb2c3ff7b75bb2c.tar.lz
nixlib-414a557904f5e22285c4abba4cb2c3ff7b75bb2c.tar.xz
nixlib-414a557904f5e22285c4abba4cb2c3ff7b75bb2c.tar.zst
nixlib-414a557904f5e22285c4abba4cb2c3ff7b75bb2c.zip
Add specific overrides for a number of failing packages.
Finish overriding bin output for broken packages.

Put stack bash completions in $bin.
Diffstat (limited to 'pkgs/development/haskell-modules')
-rw-r--r--pkgs/development/haskell-modules/configuration-nix.nix40
1 files changed, 39 insertions, 1 deletions
diff --git a/pkgs/development/haskell-modules/configuration-nix.nix b/pkgs/development/haskell-modules/configuration-nix.nix
index 83ed62c7de06..c97a586d1eae 100644
--- a/pkgs/development/haskell-modules/configuration-nix.nix
+++ b/pkgs/development/haskell-modules/configuration-nix.nix
@@ -211,7 +211,10 @@ self: super: builtins.intersectAttrs super {
 
   # wxc supports wxGTX >= 3.0, but our current default version points to 2.8.
   # http://hydra.cryp.to/build/1331287/log/raw
-  wxc = (addBuildDepend super.wxc self.split).override { wxGTK = pkgs.wxGTK30; };
+  wxc = (overrideCabal super.wxc (drv: {
+      buildDepends = (drv.buildDepends or []) ++ [self.split];
+      postInstall = "cp -v dist/build/libwxc.so.0.92.3.0 $lib/lib/libwxc.so";
+    })).override { wxGTK = pkgs.wxGTK30; };
   wxcore = super.wxcore.override { wxGTK = pkgs.wxGTK30; };
 
   # Test suite wants to connect to $DISPLAY.
@@ -492,4 +495,39 @@ self: super: builtins.intersectAttrs super {
   # Alex has some weird files in /usr/share that create a cyclic ref with
   # its bin dir.
   alex = hasNoBinOutput super.alex;
+
+  # Disable separate bin outputs for these specific packages that break with it.
+  H = hasNoBinOutput super.H;
+  cryptol = hasNoBinOutput super.cryptol;
+  git-annex = hasNoBinOutput super.git-annex;
+  sproxy = hasNoBinOutput super.sproxy;
+  sproxy2 = hasNoBinOutput super.sproxy2;
+  sproxy-web = hasNoBinOutput super.sproxy-web;
+  juandelacosa = hasNoBinOutput super.juandelacosa;
+  mywatch = hasNoBinOutput super.mywatch;
+  sugarhaskell = hasNoBinOutput super.sugarhaskell;
+  zerobin = hasNoBinOutput super.zerobin;
+
+  # Override a number of packages with specific references to $out in their
+  # derivations
+  stack = overrideCabal super.stack (drv: {
+    postInstall = ''
+      exe=$bin/bin/stack
+      mkdir -p $bin/share/bash-completion/completions
+      $exe --bash-completion-script $exe >$bin/share/bash-completion/completions/stack
+    '';
+  });
+  Agda = overrideCabal super.Agda (drv: {
+    postInstall = ''
+      files=("$out/share/"*"-ghc-"*"/Agda-"*"/lib/prim/Agda/"{Primitive.agda,Builtin"/"*.agda})
+      for f in "''${files[@]}" ; do
+        $bin/bin/agda $f
+      done
+      for f in "''${files[@]}" ; do
+        $bin/bin/agda -c --no-main $f
+      done
+      $bin/bin/agda-mode compile
+    '';
+  });
+
 }