summary refs log tree commit diff
path: root/pkgs/os-specific/linux/fuse/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/os-specific/linux/fuse/default.nix')
-rw-r--r--pkgs/os-specific/linux/fuse/default.nix34
1 files changed, 24 insertions, 10 deletions
diff --git a/pkgs/os-specific/linux/fuse/default.nix b/pkgs/os-specific/linux/fuse/default.nix
index 036ece4627b..d86eb2a9756 100644
--- a/pkgs/os-specific/linux/fuse/default.nix
+++ b/pkgs/os-specific/linux/fuse/default.nix
@@ -1,21 +1,35 @@
 { stdenv, fetchurl, utillinux }:
 
 stdenv.mkDerivation rec {
-  name = "fuse-2.9.3";
-  
-  builder = ./builder.sh;
-  
+  name = "fuse-2.9.5";
+
+  #builder = ./builder.sh;
+
   src = fetchurl {
-    url = "mirror://sourceforge/fuse/${name}.tar.gz";
-    sha256 = "071r6xjgssy8vwdn6m28qq1bqxsd2bphcd2mzhq0grf5ybm87sqb";
+    url = "https://github.com/libfuse/libfuse/releases/download/fuse_2_9_5/${name}.tar.gz";
+    sha256 = "1dfvbi1p57svbv2sfnbqwpnsk219spvjnlapf35azhgzqlf3g7sp";
   };
-  
-  configureFlags = "--disable-kernel-module";
-  
+
   buildInputs = [ utillinux ];
-  
+
   inherit utillinux;
 
+  preConfigure =
+    ''
+      export MOUNT_FUSE_PATH=$out/sbin
+      export INIT_D_PATH=$TMPDIR/etc/init.d
+      export UDEV_RULES_PATH=$out/etc/udev/rules.d
+
+      # Ensure that FUSE calls the setuid wrapper, not
+      # $out/bin/fusermount. It falls back to calling fusermount in
+      # $PATH, so it should also work on non-NixOS systems.
+      export NIX_CFLAGS_COMPILE="-DFUSERMOUNT_DIR=\"/var/setuid-wrappers\""
+
+      sed -e 's@/bin/@${utillinux}/bin/@g' -i lib/mount_util.c
+    '';
+
+  enableParallelBuilding = true;
+
   meta = with stdenv.lib; {
     homepage = http://fuse.sourceforge.net/;
     description = "Kernel module and library that allows filesystems to be implemented in user space";