summary refs log tree commit diff
path: root/pkgs/top-level/haskell-packages.nix
diff options
context:
space:
mode:
authorShea Levy <shea@shealevy.com>2015-01-06 14:42:37 -0500
committerShea Levy <shea@shealevy.com>2015-01-06 14:42:37 -0500
commit0f04707953933923cf957b7800c2eba83b4f8f34 (patch)
treef108ff8ac3ff2a6018d7eb2de85d1da436abcc79 /pkgs/top-level/haskell-packages.nix
parent24faa6878b89c64e6ef409d556bf7a190b08984d (diff)
downloadnixpkgs-0f04707953933923cf957b7800c2eba83b4f8f34.tar
nixpkgs-0f04707953933923cf957b7800c2eba83b4f8f34.tar.gz
nixpkgs-0f04707953933923cf957b7800c2eba83b4f8f34.tar.bz2
nixpkgs-0f04707953933923cf957b7800c2eba83b4f8f34.tar.lz
nixpkgs-0f04707953933923cf957b7800c2eba83b4f8f34.tar.xz
nixpkgs-0f04707953933923cf957b7800c2eba83b4f8f34.tar.zst
nixpkgs-0f04707953933923cf957b7800c2eba83b4f8f34.zip
Add amazonka, amazonka-core, amazonka-cloudwatch haskell packages
Required adding a deep override mechanism to haskell packages
Diffstat (limited to 'pkgs/top-level/haskell-packages.nix')
-rw-r--r--pkgs/top-level/haskell-packages.nix40
1 files changed, 36 insertions, 4 deletions
diff --git a/pkgs/top-level/haskell-packages.nix b/pkgs/top-level/haskell-packages.nix
index 5dbc6a5d4dd..6c0dda9c20c 100644
--- a/pkgs/top-level/haskell-packages.nix
+++ b/pkgs/top-level/haskell-packages.nix
@@ -55,12 +55,14 @@
 # modifyPrio argument can be set to lowPrio to make all Haskell packages have
 # low priority.
 
-self : let callPackage = x : y : modifyPrio (newScope self x y); in
+let override = overrides: self_: let
+  self = self_ // overrides;
 
+  callPackage = x : y : modifyPrio (newScope self x y);
 # Indentation deliberately broken at this point to keep the bulk
 # of this file at a low indentation level.
 
-{
+in {
   inherit callPackage;
 
   # GHC and its wrapper
@@ -170,6 +172,34 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in
 
   alsaPcm = callPackage ../development/libraries/haskell/alsa-pcm {};
 
+  inherit (let
+    new-transformers-self = if self.overridden or false
+      then self
+      else override {
+        overridden = true;
+
+        mtl = new-transformers-self.mtl_2_2_1;
+
+        transformers = new-transformers-self.transformers_0_4_2_0;
+
+        cabal = new-transformers-self.cabal.override {
+          enableCheckPhase = false;
+        };
+
+        nats = new-transformers-self.nats_0_2;
+      } new-transformers-self;
+
+    inherit (new-transformers-self) callPackage;
+  in {
+      amazonkaCore =
+        callPackage ../development/libraries/haskell/amazonka-core {};
+
+      amazonka = callPackage ../development/libraries/haskell/amazonka {};
+
+      amazonkaCloudwatch =
+        callPackage ../development/libraries/haskell/amazonka-cloudwatch {};
+  }) amazonka amazonkaCore amazonkaCloudwatch;
+
   amqp = callPackage ../development/libraries/haskell/amqp {};
 
   annotatedWlPprint = callPackage ../development/libraries/haskell/annotated-wl-pprint {};
@@ -1829,7 +1859,9 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in
 
   nat = callPackage ../development/libraries/haskell/nat {};
 
-  nats = callPackage ../development/libraries/haskell/nats {};
+  nats_1 = callPackage ../development/libraries/haskell/nats/1.nix {};
+  nats_0_2 = callPackage ../development/libraries/haskell/nats/0.2.nix {};
+  nats = self.nats_1;
 
   naturals = callPackage ../development/libraries/haskell/naturals {};
 
@@ -3259,4 +3291,4 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in
 
 # End of the main part of the file.
 
-}
+}; in override {}