summary refs log tree commit diff
path: root/pkgs/top-level/release-haskell.nix
diff options
context:
space:
mode:
authorsternenseemann <0rpkxez4ksa01gb3typccl0i@systemli.org>2021-05-22 15:05:10 +0200
committersternenseemann <0rpkxez4ksa01gb3typccl0i@systemli.org>2021-05-22 15:05:10 +0200
commit0fddf5bd5a3e32a64957e8a9ba1d2fb176b2baa1 (patch)
tree094c5ee42bd849aa13e891c5bd3f1bd576694094 /pkgs/top-level/release-haskell.nix
parente5341ffbb912e1857161ec38c51001280fcb5135 (diff)
downloadnixpkgs-0fddf5bd5a3e32a64957e8a9ba1d2fb176b2baa1.tar
nixpkgs-0fddf5bd5a3e32a64957e8a9ba1d2fb176b2baa1.tar.gz
nixpkgs-0fddf5bd5a3e32a64957e8a9ba1d2fb176b2baa1.tar.bz2
nixpkgs-0fddf5bd5a3e32a64957e8a9ba1d2fb176b2baa1.tar.lz
nixpkgs-0fddf5bd5a3e32a64957e8a9ba1d2fb176b2baa1.tar.xz
nixpkgs-0fddf5bd5a3e32a64957e8a9ba1d2fb176b2baa1.tar.zst
nixpkgs-0fddf5bd5a3e32a64957e8a9ba1d2fb176b2baa1.zip
top-level/release-haskell.nix: test static linking as well
This way we can keep track of any new regressions to this as well as
have some binary cache, so using this infrastructure doesn't require
compiling GHC all the time.
Diffstat (limited to 'pkgs/top-level/release-haskell.nix')
-rw-r--r--pkgs/top-level/release-haskell.nix24
1 files changed, 24 insertions, 0 deletions
diff --git a/pkgs/top-level/release-haskell.nix b/pkgs/top-level/release-haskell.nix
index 38f5e2a4156..12f7ce6900f 100644
--- a/pkgs/top-level/release-haskell.nix
+++ b/pkgs/top-level/release-haskell.nix
@@ -81,6 +81,9 @@ let
 
   recursiveUpdateMany = builtins.foldl' lib.recursiveUpdate {};
 
+  staticHaskellPackagesPlatforms =
+    packagePlatforms pkgs.pkgsStatic.haskellPackages;
+
   jobs = recursiveUpdateMany [
     (mapTestOn {
       haskellPackages = packagePlatforms pkgs.haskellPackages;
@@ -93,6 +96,16 @@ let
         writers = testPlatforms.writers;
       };
 
+      # test some statically linked packages to catch regressions
+      # and get some cache going for static compilation with GHC
+      pkgsStatic.haskellPackages = {
+        inherit (staticHaskellPackagesPlatforms)
+          hello
+          random
+          lens
+          ;
+      };
+
       # top-level packages that depend on haskellPackages
       inherit (pkgsPlatforms)
         agda
@@ -273,6 +286,17 @@ let
             (name: jobs.haskellPackages."${name}")
             (maintainedPkgNames pkgs.haskellPackages));
       };
+      staticHaskellPackages = pkgs.releaseTools.aggregate {
+        name = "static-haskell-packages";
+        meta = {
+          description = "Static haskell builds using the pkgsStatic infrastructure";
+          maintainers = [
+            lib.maintainers.sternenseemann
+            lib.maintainers.rnhmjoj
+          ];
+        };
+        constituents = accumulateDerivations [ jobs.pkgsStatic ];
+      };
     }
   ];