Repository navigation
Expand file tree
/
Copy pathflake.nix
More file actions
84 lines (61 loc) · 2.62 KB
/
Copy pathflake.nix
File metadata and controls
84 lines (61 loc) · 2.62 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
{ inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/26.05";
utils.url = "github:numtide/flake-utils";
all-cabal-hashes = {
url = "https://api.github.com/repos/commercialhaskell/all-cabal-hashes/tarball/1b1b8b07a6b0da936c906de2c2cb77a4c407c88f";
type = "file";
flake = false;
};
};
outputs = { all-cabal-hashes, nixpkgs, utils, ... }:
utils.lib.eachDefaultSystem (system:
utils.lib.eachSystem [ "ghc96" "ghc910" ] (compiler:
let
config = { };
overlay = self: super: {
inherit all-cabal-hashes;
haskell = super.haskell // {
packages = super.haskell.packages // {
"${compiler}" = super.haskell.packages."${compiler}".override (old: {
overrides =
self.lib.fold
self.lib.composeExtensions
(_: _: { })
[ (self.haskell.lib.packageSourceOverrides {
hs-opentelemetry-api = "1.0.0.0";
hs-opentelemetry-api-types = "1.0.0.0";
hs-opentelemetry-exporter-handle = "1.0.0.0";
hs-opentelemetry-exporter-in-memory = "1.0.0.0";
hs-opentelemetry-exporter-otlp = "1.0.0.0";
hs-opentelemetry-otlp = "1.0.0.0";
hs-opentelemetry-propagator-b3 = "1.0.0.0";
hs-opentelemetry-propagator-datadog = "1.0.0.0";
hs-opentelemetry-propagator-jaeger = "1.0.0.0";
hs-opentelemetry-propagator-xray = "1.0.0.0";
hs-opentelemetry-propagator-w3c = "1.0.0.0";
hs-opentelemetry-sdk = "1.0.0.0";
hs-opentelemetry-semantic-conventions = "1.40.0.0";
proto-lens = "0.7.1.6";
opentelemetry-plugin =
self.lib.cleanSourceWith
{ filter = name: type:
self.lib.cleanSourceFilter name type
&& !(self.lib.hasSuffix ".nix" name);
src = ./.;
};
})
];
});
};
};
};
pkgs =
import nixpkgs { inherit config system; overlays = [ overlay ]; };
in
rec {
packages = pkgs.haskell.packages."${compiler}".opentelemetry-plugin;
devShells =
pkgs.haskell.packages."${compiler}".opentelemetry-plugin.env;
}
));
}