|
2 | 2 | description = "K Semantics of WebAssembly"; |
3 | 3 |
|
4 | 4 | inputs = { |
5 | | - k-framework.url = "github:runtimeverification/k/v7.1.30"; |
| 5 | + k-framework.url = "github:runtimeverification/k/v7.1.38"; |
6 | 6 | nixpkgs.follows = "k-framework/nixpkgs"; |
7 | 7 | flake-utils.follows = "k-framework/flake-utils"; |
8 | 8 | rv-utils.follows = "k-framework/rv-utils"; |
9 | | - pyk.url = "github:runtimeverification/k/v7.1.30?dir=pyk"; |
10 | | - nixpkgs-pyk.follows = "pyk/nixpkgs"; |
| 9 | + pyk.url = "github:runtimeverification/k/v7.1.38?dir=pyk"; |
11 | 10 | poetry2nix.follows = "pyk/poetry2nix"; |
12 | 11 | }; |
13 | 12 |
|
14 | 13 | outputs = |
15 | | - { self, k-framework, nixpkgs, flake-utils, rv-utils, pyk, ... }@inputs: |
| 14 | + { self, k-framework, nixpkgs, flake-utils, rv-utils, pyk, poetry2nix }: |
16 | 15 | let |
17 | 16 | overlay = (final: prev: |
18 | 17 | let |
|
23 | 22 | ] ./.); |
24 | 23 |
|
25 | 24 | version = self.rev or "dirty"; |
26 | | - |
27 | | - nixpkgs-pyk = import inputs.nixpkgs-pyk { |
28 | | - system = prev.system; |
29 | | - overlays = [ pyk.overlay ]; |
30 | | - }; |
31 | | - |
32 | | - python310-pyk = nixpkgs-pyk.python310; |
33 | | - |
34 | | - poetry2nix = inputs.poetry2nix.lib.mkPoetry2Nix { pkgs = nixpkgs-pyk; }; |
35 | 25 | in { |
36 | | - pyk = pyk.packages.${prev.system}.pyk; |
37 | | - |
38 | 26 | kwasm = prev.stdenv.mkDerivation { |
39 | 27 | pname = "kwasm"; |
40 | 28 | inherit src version; |
41 | 29 |
|
42 | | - buildInputs = with final; [ |
| 30 | + buildInputs = with prev; [ |
43 | 31 | k-framework.packages.${system}.k |
44 | 32 | final.kwasm-pyk |
45 | | - python310-pyk |
| 33 | + python310 |
46 | 34 | ]; |
47 | 35 |
|
48 | 36 | nativeBuildInputs = [ prev.makeWrapper ]; |
|
69 | 57 | ''; |
70 | 58 | }; |
71 | 59 |
|
72 | | - kwasm-pyk = poetry2nix.mkPoetryApplication { |
73 | | - python = nixpkgs-pyk.python310; |
| 60 | + kwasm-pyk = prev.poetry2nix.mkPoetryApplication { |
| 61 | + python = prev.python310; |
74 | 62 | projectDir = ./pykwasm; |
75 | | - overrides = poetry2nix.overrides.withDefaults |
76 | | - (finalPython: prevPython: { |
77 | | - pyk = nixpkgs-pyk.pyk-python310; |
78 | | - pygments = prevPython.pygments.overridePythonAttrs ( old: { |
79 | | - buildInputs = (old.buildInputs or [ ]) |
80 | | - ++ [ prevPython.hatchling ]; |
81 | | - }); |
82 | | - xdg-base-dirs = prevPython.xdg-base-dirs.overridePythonAttrs |
83 | | - (old: { |
84 | | - propagatedBuildInputs = (old.propagatedBuildInputs or [ ]) |
85 | | - ++ [ finalPython.poetry ]; |
86 | | - }); |
87 | | - py-wasm = prevPython.py-wasm.overridePythonAttrs |
88 | | - ( |
89 | | - old: { |
90 | | - buildInputs = (old.buildInputs or [ ]) ++ [ prevPython.setuptools ]; |
91 | | - } |
92 | | - ); |
| 63 | + |
| 64 | + overrides = prev.poetry2nix.overrides.withDefaults |
| 65 | + (finalPython: prevPython: { |
| 66 | + pyk = prev.pyk-python310; |
| 67 | + |
| 68 | + pygments = prevPython.pygments.overridePythonAttrs |
| 69 | + (old: { |
| 70 | + buildInputs = (old.buildInputs or [ ]) |
| 71 | + ++ [ prevPython.hatchling ]; |
| 72 | + }); |
| 73 | + |
| 74 | + xdg-base-dirs = prevPython.xdg-base-dirs.overridePythonAttrs |
| 75 | + (old: { |
| 76 | + propagatedBuildInputs = (old.propagatedBuildInputs or [ ]) |
| 77 | + ++ [ finalPython.poetry ]; |
| 78 | + }); |
| 79 | + |
| 80 | + py-wasm = prevPython.py-wasm.overridePythonAttrs |
| 81 | + (old: { |
| 82 | + buildInputs = (old.buildInputs or [ ]) |
| 83 | + ++ [ prevPython.setuptools ]; |
| 84 | + }); |
93 | 85 | }); |
94 | | - groups = [ ]; |
| 86 | + |
95 | 87 | checkGroups = [ ]; |
96 | 88 | }; |
97 | 89 |
|
|
108 | 100 | git |
109 | 101 | ]; |
110 | 102 |
|
111 | | - patchPhase = '' |
| 103 | + patchPhase = with final; '' |
112 | 104 | substituteInPlace Makefile \ |
113 | | - --replace-fail '$(TEST)' '${final.kwasm}/bin/kwasm' \ |
114 | | - --replace-fail '$(KDIST)' '${nixpkgs-pyk.pyk-python310}/bin/kdist' \ |
115 | | - --replace-fail '$(SOURCE_DIR)' '${final.kwasm}/wasm-semantics/source' |
| 105 | + --replace-fail '$(TEST)' '${kwasm}/bin/kwasm' \ |
| 106 | + --replace-fail '$(KDIST)' '${pyk-python310}/bin/kdist' \ |
| 107 | + --replace-fail '$(SOURCE_DIR)' '${kwasm}/wasm-semantics/source' |
116 | 108 | ''; |
117 | 109 |
|
118 | 110 | buildPhase = '' |
|
137 | 129 | let |
138 | 130 | pkgs = import nixpkgs { |
139 | 131 | inherit system; |
140 | | - overlays = [ overlay ]; |
| 132 | + overlays = [ |
| 133 | + poetry2nix.overlays.default |
| 134 | + pyk.overlay |
| 135 | + overlay |
| 136 | + ]; |
141 | 137 | }; |
142 | 138 | in { |
143 | 139 | packages = rec { |
|
0 commit comments