git.iko.soy/sawtooth-haskell-protos
on master help sign in
4 files changed+62−59
since splitsnapshots
unifiedsplit
.github/workflows/build_docs.yaml+21−5 .vscode/settings.json+3 default.nix+31−47 nix/sources.json+7−7
.github/workflows/build_docs.yaml+21−5
@@ -11,18 +11,26 @@ jobs:
1111 steps:
1212 - uses: actions/checkout@v1
1313 - uses: cachix/install-nix-action@v12
14− - name: Build
15− id: build
14+ - name: Build sources
1615 run: |
1716 nix-build -A sawtooth-haskell-protos-src
18− # echo "::set-output name=result::$(realpath result)"
1917 cp -r $(realpath result) sawtooth-haskell-protos-src
2018 tar cvzf sawtooth-haskell-protos-src.tar.gz sawtooth-haskell-protos-src
2119 - uses: actions/upload-artifact@v2
2220 with:
23− name: docs
21+ name: sawtooth-haskell-protos-src
2422 path: sawtooth-haskell-protos-src.tar.gz
25− - uses: "marvinpinto/action-automatic-releases@latest"
23+ - name: Build docs
24+ run: |
25+ nix-build -A build.doc
26+ cp -r $(realpath result-doc)/share/doc/sawtooth-haskell-protos-0.0.0/html docs
27+ tar cvzf docs.tar.gz docs
28+ - uses: actions/upload-artifact@v2
29+ with:
30+ name: docs
31+ path: docs.tar.gz
32+ - name: Release
33+ uses: "marvinpinto/action-automatic-releases@latest"
2634 with:
2735 repo_token: "${{ secrets.GITHUB_TOKEN }}"
2836 automatic_release_tag: "latest"
@@ -30,3 +38,11 @@ jobs:
3038 # title: ""
3139 files: |
3240 sawtooth-haskell-protos-src.tar.gz
41+ docs.tar.gz
42+ - name: Deploy docs
43+ uses: s0/git-publish-subdir-action@develop
44+ env:
45+ REPO: self
46+ BRANCH: docs
47+ FOLDER: docs
48+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
.vscode/settings.jsonnew file+3
@@ -0,0 +1,3 @@
1+{
2+ "nixEnvSelector.nixFile": "NOT_MODIFIED_ENV"
3+}
default.nix+31−47
@@ -1,11 +1,35 @@
1−{ sources ? import nix/sources.nix
2−, nixpkgs ? import sources.nixpkgs { }
1+{ sources ? import nix/sources.nix { inherit system; }
2+, nixpkgs ? import sources.nixpkgs { inherit system; }
3+, system ? builtins.currentSystem
4+, ghc ? "ghc8103"
35}:
46let
5− proto3-suite = import sources.proto3-suite { };
7+ unbreak = x: x.overrideDerivation (_: {
8+ broken = false;
9+ });
10+ overrides = (hself: hsuper: {
11+ proto3-suite = nixpkgs.haskell.lib.dontCheck (
12+ nixpkgs.haskell.lib.doJailbreak (
13+ hsuper.callCabal2nix "proto3-suite"
14+ sources.proto3-suite { }
15+ )
16+ );
17+ proto3-wire =
18+ hsuper.callHackageDirect
19+ {
20+ pkg = "proto3-wire";
21+ ver = "1.2.0";
22+ sha256 = "1jqz6zsli5zvlissy7mkgyrzkapjvgijx7kjva4fxjwdyd0hqix7";
23+ } { };
24+ haskell-src = nixpkgs.haskell.lib.doJailbreak (unbreak hsuper.haskell-src);
25+ parameterized = nixpkgs.haskell.lib.dontCheck (nixpkgs.haskell.lib.doJailbreak (unbreak hsuper.parameterized));
26+ });
27+ haskell = nixpkgs.haskell.packages.${ghc}.override {
28+ inherit overrides;
29+ };
630 sawtooth-haskell-protos-src = nixpkgs.stdenv.mkDerivation {
731 name = "sawtooth-haskell-protos-src";
8− buildInputs = [ proto3-suite.proto3-suite ];
32+ buildInputs = [ haskell.proto3-suite ];
933 src = sources.sawtooth-core + "/protos";
1034 buildPhase = ''
1135 for f in *.proto
@@ -30,53 +54,13 @@ let
3054 };
3155 sawtooth-haskell-protos =
3256 nixpkgs.haskellPackages.callCabal2nix "sawtooth-haskell-protos" sawtooth-haskell-protos-src { };
33− sawtooth-haskell-protos-overlay = hself: hsuper: {
57+ sawtooth-haskell-protos-overlay = nixpkgs.lib.composeExtensions overrides (hself: hsuper: {
3458 sawtooth-haskell-protos = hsuper.callCabal2nix "sawtooth-haskell-protos" sawtooth-haskell-protos-src { };
35− haskell-src = nixpkgs.haskell.lib.doJailbreak (hsuper.callHackageDirect
36− {
37− pkg = "haskell-src";
38− ver = "1.0.3.1";
39− sha256 = "11s2qnnhchcbi6szvcglv4xxz3l6zw9w3pziycpwrigjvpigymd2";
40− } { }
41− );
42− insert-ordered-containers = hsuper.callHackageDirect
43− {
44− pkg = "insert-ordered-containers";
45− ver = "0.2.3.1";
46− sha256 = "0zxxjwzcsyc7a572f584w83aqygdc3q05pfarghj2v437nsnap29";
47− } { };
48− swagger2 = hsuper.callHackageDirect
49− {
50− pkg = "swagger2";
51− ver = "2.6";
52− sha256 = "0x0s34q9bmrik0vmzpc08r4jq5kbpb8x7h19ixhaakiafpjfm59l";
53− } { };
54− proto3-suite = nixpkgs.haskell.lib.dontCheck (hsuper.callHackageDirect
55− {
56− pkg = "proto3-suite";
57− ver = "0.4.0.2";
58− sha256 = "11bppmb524q6qvgyddi9s7pf1n1zs4ypqkqs2qb6i8nsgmxndd1l";
59− } { }
60− );
61− proto3-wire = hsuper.callHackageDirect
62− {
63− pkg = "proto3-wire";
64− ver = "1.2.0";
65− sha256 = "1jqz6zsli5zvlissy7mkgyrzkapjvgijx7kjva4fxjwdyd0hqix7";
66− } { };
67− http-media = nixpkgs.haskell.lib.doJailbreak (hsuper.callHackageDirect
68− {
69− pkg = "http-media";
70− ver = "0.8.0.0";
71− sha256 = "080xkljq1iq0i8wagg8kbzbp523p2awa98wpn9i4ph1dq8y8346y";
72− } { }
73− );
74− parameterized = nixpkgs.haskell.lib.dontCheck hsuper.parameterized;
75− };
59+ });
7660in
7761{
7862 inherit sawtooth-haskell-protos-src sawtooth-haskell-protos-overlay;
79− build = (nixpkgs.haskell.packages.ghc882.override {
63+ build = (nixpkgs.haskell.packages.${ghc}.override {
8064 overrides = sawtooth-haskell-protos-overlay;
8165 }).sawtooth-haskell-protos;
8266}
nix/sources.json+7−7
@@ -5,22 +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.03",
15+ "branch": "nixpkgs-unstable",
1616 "description": "Nix Packages collection",
1717 "homepage": "",
1818 "owner": "NixOS",
1919 "repo": "nixpkgs",
20− "rev": "5a9e4f07f714e811bded0a45ed8fe55c5c6048fd",
21− "sha256": "09s7h5qq866awkxz2l33b7x7lqmsm4xxzaqxlybj5bkdfxws2lb6",
20+ "rev": "a346c68411cc2fe0392e8905f9300fa0973cf1b4",
21+ "sha256": "19jqyps2pgb7ps8pp4nxr8zh44fps1flb46gkz6cdg9lysgfi4a2",
2222 "type": "tarball",
23− "url": "https://github.com/NixOS/nixpkgs/archive/5a9e4f07f714e811bded0a45ed8fe55c5c6048fd.tar.gz",
23+ "url": "https://github.com/NixOS/nixpkgs/archive/a346c68411cc2fe0392e8905f9300fa0973cf1b4.tar.gz",
2424 "url_template": "https://github.com/<owner>/<repo>/archive/<rev>.tar.gz"
2525 },
2626 "proto3-suite": {