From e241efc63a83baafb7590135d4a7320a56766681 Mon Sep 17 00:00:00 2001 From: Julian Kuners Date: Mon, 15 Dec 2025 17:58:56 +0100 Subject: [PATCH 1/2] separate binaries and kdist in nix derivation into different outputs --- nix/skribe/default.nix | 27 ++++++++++++++++++++------- 1 file changed, 20 insertions(+), 7 deletions(-) diff --git a/nix/skribe/default.nix b/nix/skribe/default.nix index 224dd8a..944559c 100644 --- a/nix/skribe/default.nix +++ b/nix/skribe/default.nix @@ -28,6 +28,16 @@ in stdenv.mkDerivation { pname = "skribe"; version = if (rev != null) then rev else "dirty"; + + outputs = [ + "bin" + # contains kdist artifacts + "out" + # this empty `dev` output is required as we otherwise get cyclic dependencies between `bin` and `out` + # this is due to a setup-hook creating references in a new directory `nix-support` in either `out` or `dev` + "dev" + ]; + buildInputs = [ clang cmake @@ -40,6 +50,7 @@ stdenv.mkDerivation { skribe-pyk k ]; + nativeBuildInputs = [ makeWrapper ]; src = callPackage ../skribe-source { }; @@ -57,22 +68,24 @@ stdenv.mkDerivation { ''; installPhase = '' - mkdir -p $out - cp -r ./kdist-*/* $out/ - mkdir -p $out/bin - makeWrapper ${skribe-pyk}/bin/skribe-simulation $out/bin/skribe-simulation --prefix PATH : ${ + mkdir -p $bin/bin + mkdir -p $out/kdist + + cp -r ./kdist-*/* $out/kdist/ + + makeWrapper ${skribe-pyk}/bin/skribe-simulation $bin/bin/skribe-simulation --prefix PATH : ${ lib.makeBinPath ([ which k ] ++ lib.optionals (skribe-rust != null) [ skribe-rust ]) - } --set KDIST_DIR $out + } --set KDIST_DIR $out/kdist - makeWrapper ${skribe-pyk}/bin/skribe $out/bin/skribe --prefix PATH : ${ + makeWrapper ${skribe-pyk}/bin/skribe $bin/bin/skribe --prefix PATH : ${ lib.makeBinPath ([ which k ] ++ lib.optionals (skribe-rust != null) [ skribe-rust ]) - } --set KDIST_DIR $out + } --set KDIST_DIR $out/kdist ''; passthru = if skribe-rust == null then { From 0d37f4bd915534d95c5645fcfa76ee4cee8a0141 Mon Sep 17 00:00:00 2001 From: devops Date: Tue, 16 Dec 2025 16:07:16 +0000 Subject: [PATCH 2/2] Set Version: 0.1.20 --- package/version | 2 +- pyproject.toml | 2 +- uv.lock | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/package/version b/package/version index d8a023e..baa9837 100644 --- a/package/version +++ b/package/version @@ -1 +1 @@ -0.1.19 +0.1.20 diff --git a/pyproject.toml b/pyproject.toml index b8be48e..4b80e05 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "hatchling.build" [project] name = "skribe" -version = "0.1.19" +version = "0.1.20" description = "Property testing for Stylus smart contracts" readme = "README.md" requires-python = "~=3.10" diff --git a/uv.lock b/uv.lock index 52fd3f1..2205573 100644 --- a/uv.lock +++ b/uv.lock @@ -1715,7 +1715,7 @@ wheels = [ [[package]] name = "skribe" -version = "0.1.19" +version = "0.1.20" source = { editable = "." } dependencies = [ { name = "kontrol" },