Add a fuseSupport argument and bcachefs-fuse as flake output with fuse enabled.

Signed-off-by: Finn Behrens <[email protected]>
---
 build.nix | 7 +++++--
 flake.nix | 1 +
 2 files changed, 6 insertions(+), 2 deletions(-)

diff --git a/build.nix b/build.nix
index e05dad4..831c7e9 100644
--- a/build.nix
+++ b/build.nix
@@ -1,5 +1,6 @@
 { lib, stdenv, pkg-config, attr, libuuid, libsodium, keyutils, liburcu, zlib
-, libaio, udev, zstd, lz4, nix-gitignore, rustPlatform, rustc, cargo, }:
+, libaio, udev, zstd, lz4, nix-gitignore, rustPlatform, rustc, cargo, fuse3
+, fuseSupport ? false, }:
 let
   src = nix-gitignore.gitignoreSource [ ] ./.;
 
@@ -30,7 +31,9 @@ in stdenv.mkDerivation {
     zlib # zlib1g
     attr
     udev
-  ];
+  ] ++ lib.optional fuseSupport fuse3;
+
+  BCACHEFS_FUSE = if fuseSupport then "1" else "";
 
   cargoRoot = "rust-src";
   # when git-based crates are updated, run:
diff --git a/flake.nix b/flake.nix
index c4185e7..b8f9ce5 100644
--- a/flake.nix
+++ b/flake.nix
@@ -23,6 +23,7 @@
       in {
         packages = {
           inherit (pkgs) bcachefs;
+          bcachefs-fuse = pkgs.bcachefs.override { fuseSupport = true; };
           default = pkgs.bcachefs;
         };
 
-- 
2.42.0


Reply via email to