Loading pkgs/tools/filesystems/e2fsprogs/default.nix +4 −4 Original line number Diff line number Diff line { lib, stdenv, buildPackages, fetchurl, fetchpatch, pkg-config, libuuid, gettext, texinfo , withFuse ? stdenv.isLinux, fuse3 , withFuse ? stdenv.isLinux || stdenv.isDarwin, fuse3, macfuse-stubs , shared ? !stdenv.hostPlatform.isStatic , e2fsprogs, runCommand }: Loading @@ -20,7 +20,7 @@ stdenv.mkDerivation rec { depsBuildBuild = [ buildPackages.stdenv.cc ]; nativeBuildInputs = [ pkg-config texinfo ]; buildInputs = [ libuuid gettext ] ++ lib.optionals withFuse [ fuse3 ]; ++ lib.optional withFuse (if stdenv.isDarwin then macfuse-stubs else fuse3); patches = [ # Avoid trouble with older systems like NixOS 23.05. Loading @@ -40,7 +40,7 @@ stdenv.mkDerivation rec { url = "https://lore.kernel.org/linux-ext4/20240527091542.4121237-2-hi@alyssa.is/raw"; hash = "sha256-pMoqm2eo5zYaTdU+Ppa4+posCVFb2A9S4uo5oApaaqc="; }) ]; ] ++ lib.optional stdenv.isDarwin ./macfuse.patch; configureFlags = if stdenv.isLinux then [ Loading @@ -57,7 +57,7 @@ stdenv.mkDerivation rec { "--disable-uuidd" ] else [ "--enable-libuuid --disable-e2initrd-helper" ]; ] ++ lib.optional stdenv.isDarwin "CFLAGS=-D_FILE_OFFSET_BITS=64"; nativeCheckInputs = [ buildPackages.perl ]; doCheck = true; Loading pkgs/tools/filesystems/e2fsprogs/macfuse.patch 0 → 100644 +20 −0 Original line number Diff line number Diff line --- a/misc/fuse2fs.c +++ b/misc/fuse2fs.c @@ -2441,7 +2441,7 @@ #undef XATTR_TRANSLATOR static int op_getxattr(const char *path, const char *key, char *value, - size_t len) + size_t len, uint32_t position EXT2FS_ATTR((unused))) { struct fuse_context *ctxt = fuse_get_context(); struct fuse2fs *ff = (struct fuse2fs *)ctxt->private_data; @@ -2623,7 +2623,7 @@ static int op_setxattr(const char *path EXT2FS_ATTR((unused)), const char *key, const char *value, - size_t len, int flags EXT2FS_ATTR((unused))) + size_t len, int flags EXT2FS_ATTR((unused)), uint32_t position EXT2FS_ATTR((unused))) { struct fuse_context *ctxt = fuse_get_context(); struct fuse2fs *ff = (struct fuse2fs *)ctxt->private_data; Loading
pkgs/tools/filesystems/e2fsprogs/default.nix +4 −4 Original line number Diff line number Diff line { lib, stdenv, buildPackages, fetchurl, fetchpatch, pkg-config, libuuid, gettext, texinfo , withFuse ? stdenv.isLinux, fuse3 , withFuse ? stdenv.isLinux || stdenv.isDarwin, fuse3, macfuse-stubs , shared ? !stdenv.hostPlatform.isStatic , e2fsprogs, runCommand }: Loading @@ -20,7 +20,7 @@ stdenv.mkDerivation rec { depsBuildBuild = [ buildPackages.stdenv.cc ]; nativeBuildInputs = [ pkg-config texinfo ]; buildInputs = [ libuuid gettext ] ++ lib.optionals withFuse [ fuse3 ]; ++ lib.optional withFuse (if stdenv.isDarwin then macfuse-stubs else fuse3); patches = [ # Avoid trouble with older systems like NixOS 23.05. Loading @@ -40,7 +40,7 @@ stdenv.mkDerivation rec { url = "https://lore.kernel.org/linux-ext4/20240527091542.4121237-2-hi@alyssa.is/raw"; hash = "sha256-pMoqm2eo5zYaTdU+Ppa4+posCVFb2A9S4uo5oApaaqc="; }) ]; ] ++ lib.optional stdenv.isDarwin ./macfuse.patch; configureFlags = if stdenv.isLinux then [ Loading @@ -57,7 +57,7 @@ stdenv.mkDerivation rec { "--disable-uuidd" ] else [ "--enable-libuuid --disable-e2initrd-helper" ]; ] ++ lib.optional stdenv.isDarwin "CFLAGS=-D_FILE_OFFSET_BITS=64"; nativeCheckInputs = [ buildPackages.perl ]; doCheck = true; Loading
pkgs/tools/filesystems/e2fsprogs/macfuse.patch 0 → 100644 +20 −0 Original line number Diff line number Diff line --- a/misc/fuse2fs.c +++ b/misc/fuse2fs.c @@ -2441,7 +2441,7 @@ #undef XATTR_TRANSLATOR static int op_getxattr(const char *path, const char *key, char *value, - size_t len) + size_t len, uint32_t position EXT2FS_ATTR((unused))) { struct fuse_context *ctxt = fuse_get_context(); struct fuse2fs *ff = (struct fuse2fs *)ctxt->private_data; @@ -2623,7 +2623,7 @@ static int op_setxattr(const char *path EXT2FS_ATTR((unused)), const char *key, const char *value, - size_t len, int flags EXT2FS_ATTR((unused))) + size_t len, int flags EXT2FS_ATTR((unused)), uint32_t position EXT2FS_ATTR((unused))) { struct fuse_context *ctxt = fuse_get_context(); struct fuse2fs *ff = (struct fuse2fs *)ctxt->private_data;