about summary refs log tree commit diff
path: root/tvix/default.nix
diff options
context:
space:
mode:
authorConnor Brewster <cbrewster@hey.com>2023-10-07T02·17-0500
committerclbot <clbot@tvl.fyi>2023-10-07T02·34+0000
commit9019d8568e845afe9f2621bf3d5e1918a8ff5cf9 (patch)
tree70b7babfd7ed0077eb20e2c0b10627a3aeb6b913 /tvix/default.nix
parent9c0d66197bfa60a0c14109a471b6bcdfd61247e1 (diff)
fix(tvix/store): Remove virtiofs from default features r/6720
vhost-user-backend doesn't support macOS yet, so the virtiofs features
will not work on macOS. This removes it as a default feature which makes
`cargo build` work out of the box on macOS.

The `virtiofs` feature is enabled for Linux when building via Nix, but
if being built by cargo directly, the feature must be enabled via a
cargo flag.

Change-Id: I2aaca9582f8e3dbcf9ee5f1b9831d614909f3799
Reviewed-on: https://cl.tvl.fyi/c/depot/+/9555
Reviewed-by: flokli <flokli@flokli.de>
Tested-by: BuildkiteCI
Autosubmit: Connor Brewster <cbrewster@hey.com>
Diffstat (limited to 'tvix/default.nix')
-rw-r--r--tvix/default.nix3
1 files changed, 3 insertions, 0 deletions
diff --git a/tvix/default.nix b/tvix/default.nix
index 94f50b29ba80..34acde434a80 100644
--- a/tvix/default.nix
+++ b/tvix/default.nix
@@ -5,6 +5,8 @@ let
   # crate override for crates that need protobuf
   protobufDep = prev: (prev.nativeBuildInputs or [ ]) ++ [ pkgs.protobuf ];
   iconvDarwinDep = lib.optionals pkgs.stdenv.isDarwin [ pkgs.libiconv ];
+  # fuse-backend-rs uses DiskArbitration framework to handle mount/unmount on Darwin
+  diskArbitrationDep = lib.optionals pkgs.stdenv.isDarwin [ pkgs.buildPackages.darwin.apple_sdk.frameworks.DiskArbitration ];
 
   # Load the crate2nix crate tree.
   crates = import ./Cargo.nix {
@@ -44,6 +46,7 @@ let
       tvix-store = prev: {
         PROTO_ROOT = depot.tvix.proto;
         nativeBuildInputs = protobufDep prev;
+        buildInputs = prev.buildInputs or [ ] ++ diskArbitrationDep;
       };
     };
   };