about summary refs log tree commit diff
path: root/tvix/store
diff options
context:
space:
mode:
Diffstat (limited to 'tvix/store')
-rw-r--r--tvix/store/default.nix26
1 files changed, 17 insertions, 9 deletions
diff --git a/tvix/store/default.nix b/tvix/store/default.nix
index 46ebcebded88..8fb80ee27bb6 100644
--- a/tvix/store/default.nix
+++ b/tvix/store/default.nix
@@ -1,19 +1,27 @@
-{ depot, pkgs, lib, ... }:
+{ depot, pkgs, ... }:
 
 let
   protoRoot = depot.nix.sparseTree depot.path.origSrc [
     ./protos/castore.proto
     ./protos/pathinfo.proto
   ];
-in
-depot.third_party.naersk.buildPackage {
-  src = depot.third_party.gitignoreSource ./.;
-  # see https://github.com/nix-community/naersk/issues/169
-  root = depot.tvix.naerskRootFor ./Cargo.toml;
 
-  nativeBuildInputs = [ pkgs.protobuf ];
+  protobufDep = prev: (prev.nativeBuildInputs or [ ]) ++ [ pkgs.protobuf ];
+in
+depot.tvix.crates.workspaceMembers.tvix-store.build.override {
+  # Ensure protobuf dependencies are available.
+  # TODO: figure out a way to embed this directly in the //tvix
+  # crate2nix config.
+  crateOverrides = {
+    prost-build = prev: {
+      nativeBuildInputs = protobufDep prev;
+    };
 
-  PROTO_ROOT = protoRoot;
+    tvix-store = prev: {
+      PROTO_ROOT = protoRoot;
+      nativeBuildInputs = protobufDep prev;
+    };
+  };
 
-  doCheck = true;
+  runTests = true;
 }