about summary refs log tree commit diff
path: root/default.nix
diff options
context:
space:
mode:
authorGriffin Smith <root@gws.fyi>2019-11-30T23·16-0500
committerGriffin Smith <root@gws.fyi>2019-11-30T23·16-0500
commit0b22bb099c9f2254d16784e5897b18e9e410c2fa (patch)
tree295a1781a95e6f435b7c5469de13144fbace9a74 /default.nix
parent97a5c61f28ba98728bab390e0ea745edfbea7103 (diff)
Fail on all warnings in CI
All the undefineds are gone, so it's time to enable -Werror in CI.
Diffstat (limited to 'default.nix')
-rw-r--r--default.nix16
1 files changed, 10 insertions, 6 deletions
diff --git a/default.nix b/default.nix
index ca163c8e56d7..a341398509d8 100644
--- a/default.nix
+++ b/default.nix
@@ -1,11 +1,15 @@
 { nixpkgs ? import ./nixpkgs.nix {}
-, compiler ? "ghc865" }:
+, compiler ? "ghc865"
+, failOnWarnings ? false
+}:
 let
-  inherit (nixpkgs) pkgs;
+  inherit (nixpkgs) pkgs lib;
+  inherit (lib) id;
   all-hies = import (fetchTarball "https://github.com/infinisil/all-hies/tarball/master") {};
   hie = all-hies.selection { selector = p: { inherit (p) ghc865; }; };
-  xanthous = (pkgs.haskellPackages
-    .extend (import ./haskell-overlay.nix { inherit nixpkgs; }))
-    .callPackage (import ./pkg.nix { inherit nixpkgs; }) {};
-in
+  xanthous =
+    (if failOnWarnings then pkgs.haskell.lib.failOnAllWarnings else id)
+      ((pkgs.haskellPackages
+      .extend (import ./haskell-overlay.nix { inherit nixpkgs; })
+    ).callPackage (import ./pkg.nix { inherit nixpkgs; }) {}); in
 xanthous // { inherit hie; }