|
7 | 7 | flake-utils.follows = "k-framework/flake-utils";
|
8 | 8 | rv-utils.follows = "k-framework/rv-utils";
|
9 | 9 | pyk.url = "github:runtimeverification/k/v7.1.38?dir=pyk";
|
10 |
| - nixpkgs-pyk.follows = "pyk/nixpkgs"; |
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