diff --git a/default.nix b/default.nix index c12634ff3..1ef1189e8 100644 --- a/default.nix +++ b/default.nix @@ -24,6 +24,7 @@ let [ (import nix/overlays/postgresql-legacy.nix) (import nix/overlays/gitignore.nix) + (import nix/overlays/haskell-packages) ]; pkgs = diff --git a/nix/overlays/haskell-packages/README.md b/nix/overlays/haskell-packages/README.md new file mode 100644 index 000000000..cd8f8214c --- /dev/null +++ b/nix/overlays/haskell-packages/README.md @@ -0,0 +1,10 @@ +The `.nix` files in this directory pin specific versions of Haskell packages +from Hackage. They were generated with `cabal2nix`, e.g.: + +```bash +cabal2nix cabal://protolude > protolude.nix + +``` + +Those overrides might become obsolete as the pinned versions are adopted into +our pinned version of nixpkgs. diff --git a/nix/overlays/haskell-packages/default.nix b/nix/overlays/haskell-packages/default.nix new file mode 100644 index 000000000..51a3f39fc --- /dev/null +++ b/nix/overlays/haskell-packages/default.nix @@ -0,0 +1,11 @@ +self: super: + +{ + haskellPackages = + super.haskellPackages.override { + overrides = + final: prev: rec { + protolude = prev.callPackage ./protolude.nix {}; + }; + }; +} diff --git a/nix/overlays/haskell-packages/protolude.nix b/nix/overlays/haskell-packages/protolude.nix new file mode 100644 index 000000000..9b426f12c --- /dev/null +++ b/nix/overlays/haskell-packages/protolude.nix @@ -0,0 +1,18 @@ +{ mkDerivation, array, async, base, bytestring, containers, deepseq +, ghc-prim, hashable, mtl, mtl-compat, stdenv, stm, text +, transformers, transformers-compat +}: +mkDerivation { + pname = "protolude"; + version = "0.3.0"; + sha256 = "4083385a9e03fab9201f63ce198b9ced3fbc1c50d6d42574db5e36c757bedcac"; + isLibrary = true; + isExecutable = true; + libraryHaskellDepends = [ + array async base bytestring containers deepseq ghc-prim hashable + mtl mtl-compat stm text transformers transformers-compat + ]; + homepage = "https://github.com/sdiehl/protolude"; + description = "A small prelude"; + license = stdenv.lib.licenses.mit; +}