nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{ pkgs, haskellLib }:
2
3let
4 inherit (pkgs) fetchpatch lib;
5in
6
7with haskellLib;
8
9(self: super: {
10 # cabal2nix doesn't properly add dependencies conditional on os(windows)
11 network =
12 if pkgs.stdenv.hostPlatform.isWindows then
13 addBuildDepends [ self.temporary ] super.network
14 else
15 super.network;
16
17 # Avoids a cycle by disabling use of the external interpreter for the packages that are dependencies of iserv-proxy.
18 # See configuration-nix.nix, where iserv-proxy and network are handled.
19 # On Windows, network depends on temporary (see above), which depends on random, which depends on splitmix.
20 inherit
21 (
22 let
23 noExternalInterpreter = overrideCabal {
24 enableExternalInterpreter = false;
25 };
26 in
27 lib.mapAttrs (_: noExternalInterpreter) { inherit (super) random splitmix temporary; }
28 )
29 random
30 splitmix
31 temporary
32 ;
33
34 # https://github.com/fpco/streaming-commons/pull/84
35 streaming-commons = appendPatch (fetchpatch {
36 name = "fix-headers-case.patch";
37 url = "https://github.com/fpco/streaming-commons/commit/6da611f63e9e862523ce6ee53262ddbc9681ae24.patch";
38 sha256 = "sha256-giEQqXZfoiAvtCFohdgOoYna2Tnu5aSYAOUH8YVldi0=";
39 }) super.streaming-commons;
40})