git.iko.soy/sawtooth-haskell-protos
on master help sign in
Improved things
commit49cd72ec08cb856cd6d5f61d4616164cbdbbe17c authoriko <ilyakooo0@gmail.com> dateWed 24 Feb 2021, 20:54 (6 years ago) parenta456437
3 files changed+31−75
.vscode/settings.json+1−1 default.nix+23−55 nix/sources.json+7−19
.vscode/settings.json+1−1
@@ -1,3 +1,3 @@
11{
2− "nixEnvSelector.nixShellConfig": "NOT_MODIFIED_ENV"
2+ "nixEnvSelector.nixFile": "NOT_MODIFIED_ENV"
33}
default.nix+23−55
@@ -1,16 +1,30 @@
11{ sources ? import nix/sources.nix { inherit system; }
22, nixpkgs ? import sources.nixpkgs { inherit system; }
33, system ? builtins.currentSystem
4+, ghc ? "ghc8103"
45}:
56let
6− proto3-suite' = import sources.proto3-suite { };
7− proto3-suite =
8− if system == "x86_64-linux" then proto3-suite'.proto3-suite-linux
9− else if system == "x86_64-darwin" then proto3-suite'.proto3-suite-darwin
10− else abort "proto3-suite only supports x86_64-linux and x86_64-darwin at the moment :(";
7+ unbreak = x: x.overrideDerivation (_: {
8+ broken = false;
9+ });
10+ overrides = (hself: hsuper: {
11+ proto3-suite = nixpkgs.haskell.lib.dontCheck (nixpkgs.haskell.lib.doJailbreak (unbreak hsuper.proto3-suite));
12+ proto3-wire =
13+ hsuper.callHackageDirect
14+ {
15+ pkg = "proto3-wire";
16+ ver = "1.2.0";
17+ sha256 = "1jqz6zsli5zvlissy7mkgyrzkapjvgijx7kjva4fxjwdyd0hqix7";
18+ } { };
19+ haskell-src = nixpkgs.haskell.lib.doJailbreak (unbreak hsuper.haskell-src);
20+ parameterized = nixpkgs.haskell.lib.dontCheck (nixpkgs.haskell.lib.doJailbreak (unbreak hsuper.parameterized));
21+ });
22+ haskell = nixpkgs.haskell.packages.${ghc}.override {
23+ inherit overrides;
24+ };
1125 sawtooth-haskell-protos-src = nixpkgs.stdenv.mkDerivation {
1226 name = "sawtooth-haskell-protos-src";
13− buildInputs = [ proto3-suite ];
27+ buildInputs = [ haskell.proto3-suite ];
1428 src = sources.sawtooth-core + "/protos";
1529 buildPhase = ''
1630 for f in *.proto
@@ -35,59 +49,13 @@ let
3549 };
3650 sawtooth-haskell-protos =
3751 nixpkgs.haskellPackages.callCabal2nix "sawtooth-haskell-protos" sawtooth-haskell-protos-src { };
38− sawtooth-haskell-protos-overlay = hself: hsuper: {
52+ sawtooth-haskell-protos-overlay = nixpkgs.lib.composeExtensions overrides (hself: hsuper: {
3953 sawtooth-haskell-protos = hsuper.callCabal2nix "sawtooth-haskell-protos" sawtooth-haskell-protos-src { };
40− haskell-src = nixpkgs.haskell.lib.doJailbreak (hsuper.callHackageDirect
41− {
42− pkg = "haskell-src";
43− ver = "1.0.3.1";
44− sha256 = "11s2qnnhchcbi6szvcglv4xxz3l6zw9w3pziycpwrigjvpigymd2";
45− } { }
46− );
47− insert-ordered-containers = hsuper.callHackageDirect
48− {
49− pkg = "insert-ordered-containers";
50− ver = "0.2.3.1";
51− sha256 = "0zxxjwzcsyc7a572f584w83aqygdc3q05pfarghj2v437nsnap29";
52− } { };
53− swagger2 = hsuper.callHackageDirect
54− {
55− pkg = "swagger2";
56− ver = "2.6";
57− sha256 = "0x0s34q9bmrik0vmzpc08r4jq5kbpb8x7h19ixhaakiafpjfm59l";
58− } { };
59− proto3-suite = nixpkgs.haskell.lib.dontCheck (hsuper.callHackageDirect
60− {
61− pkg = "proto3-suite";
62− ver = "0.4.0.2";
63− sha256 = "11bppmb524q6qvgyddi9s7pf1n1zs4ypqkqs2qb6i8nsgmxndd1l";
64− } { }
65− );
66− proto3-wire = hsuper.callHackageDirect
67− {
68− pkg = "proto3-wire";
69− ver = "1.2.0";
70− sha256 = "1jqz6zsli5zvlissy7mkgyrzkapjvgijx7kjva4fxjwdyd0hqix7";
71− } { };
72− http-media = nixpkgs.haskell.lib.doJailbreak (hsuper.callHackageDirect
73− {
74− pkg = "http-media";
75− ver = "0.8.0.0";
76− sha256 = "080xkljq1iq0i8wagg8kbzbp523p2awa98wpn9i4ph1dq8y8346y";
77− } { }
78− );
79− parameterized = nixpkgs.haskell.lib.dontCheck (hsuper.callHackageDirect
80− {
81− pkg = "parameterized";
82− ver = "0.5.0.0";
83− sha256 = "sha256-FB3E0ChUG1x6uYE8fL7hcncS5Xg0mqNOxc7KlLhEdB0=";
84− } { }
85− );
86− };
54+ });
8755in
8856{
8957 inherit sawtooth-haskell-protos-src sawtooth-haskell-protos-overlay;
90− build = (nixpkgs.haskell.packages.ghc882.override {
58+ build = (nixpkgs.haskell.packages.${ghc}.override {
9159 overrides = sawtooth-haskell-protos-overlay;
9260 }).sawtooth-haskell-protos;
9361}
nix/sources.json+7−19
@@ -5,34 +5,22 @@
55 "homepage": "https://github.com/nmattia/niv",
66 "owner": "nmattia",
77 "repo": "niv",
8− "rev": "ba57d5a29b4e0f2085917010380ef3ddc3cf380f",
9− "sha256": "1kpsvc53x821cmjg1khvp1nz7906gczq8mp83664cr15h94sh8i4",
8+ "rev": "af958e8057f345ee1aca714c1247ef3ba1c15f5e",
9+ "sha256": "1qjavxabbrsh73yck5dcq8jggvh3r2jkbr6b5nlz5d9yrqm9255n",
1010 "type": "tarball",
11− "url": "https://github.com/nmattia/niv/archive/ba57d5a29b4e0f2085917010380ef3ddc3cf380f.tar.gz",
11+ "url": "https://github.com/nmattia/niv/archive/af958e8057f345ee1aca714c1247ef3ba1c15f5e.tar.gz",
1212 "url_template": "https://github.com/<owner>/<repo>/archive/<rev>.tar.gz"
1313 },
1414 "nixpkgs": {
15− "branch": "release-20.09",
15+ "branch": "nixpkgs-unstable",
1616 "description": "Nix Packages collection",
1717 "homepage": "",
1818 "owner": "NixOS",
1919 "repo": "nixpkgs",
20− "rev": "7d71d3dc80c3f42600d3ff21ba0029ad0c217067",
21− "sha256": "1ni0wmzjzl2p7nbh8sknxff9cpga82cvfixqlk3sz3s667x5nbsn",
20+ "rev": "a346c68411cc2fe0392e8905f9300fa0973cf1b4",
21+ "sha256": "19jqyps2pgb7ps8pp4nxr8zh44fps1flb46gkz6cdg9lysgfi4a2",
2222 "type": "tarball",
23− "url": "https://github.com/NixOS/nixpkgs/archive/7d71d3dc80c3f42600d3ff21ba0029ad0c217067.tar.gz",
24− "url_template": "https://github.com/<owner>/<repo>/archive/<rev>.tar.gz"
25− },
26− "proto3-suite": {
27− "branch": "master",
28− "description": " Haskell Protobuf Implementation",
29− "homepage": null,
30− "owner": "awakesecurity",
31− "repo": "proto3-suite",
32− "rev": "0af901f9ef3b9719e08eae4fab8fd700d6c8047a",
33− "sha256": "0mpy35r6qd1v5sixhy2lqcn5x81rfj4dc079g1kpa4fb1f23dbha",
34− "type": "tarball",
35− "url": "https://github.com/awakesecurity/proto3-suite/archive/0af901f9ef3b9719e08eae4fab8fd700d6c8047a.tar.gz",
23+ "url": "https://github.com/NixOS/nixpkgs/archive/a346c68411cc2fe0392e8905f9300fa0973cf1b4.tar.gz",
3624 "url_template": "https://github.com/<owner>/<repo>/archive/<rev>.tar.gz"
3725 },
3826 "sawtooth-core": {