From 8f61973d92aee06e2e0854f13433940c5e169a35 Mon Sep 17 00:00:00 2001 From: Emily Date: Wed, 4 Sep 2024 05:06:42 +0100 Subject: [PATCH] Revert "e2fsprogs: build fuse2fs on darwin" This change, while fine in isolation, breaks evaluation in combination with , as `xar` depends on `e2fsprogs` which now depends on `macfuse-stubs` which depends on `xar`. This broke `staging-next`. A couple possible solutions are to disable the `e2fsprogs` dependency in the version of `xar` used for the bootstrap, or to build `macfuse-stubs` from source to avoid the `xar` dependency. This reverts commit 0dfc820f4a915a979ccb4ba420a8fcad48345170. --- pkgs/tools/filesystems/e2fsprogs/default.nix | 8 ++++---- .../tools/filesystems/e2fsprogs/macfuse.patch | 20 ------------------- 2 files changed, 4 insertions(+), 24 deletions(-) delete mode 100644 pkgs/tools/filesystems/e2fsprogs/macfuse.patch diff --git a/pkgs/tools/filesystems/e2fsprogs/default.nix b/pkgs/tools/filesystems/e2fsprogs/default.nix index 1c453fb95893188..b8443e8ac880048 100644 --- a/pkgs/tools/filesystems/e2fsprogs/default.nix +++ b/pkgs/tools/filesystems/e2fsprogs/default.nix @@ -1,5 +1,5 @@ { lib, stdenv, buildPackages, fetchurl, fetchpatch, pkg-config, libuuid, gettext, texinfo -, withFuse ? stdenv.isLinux || stdenv.isDarwin, fuse3, macfuse-stubs +, withFuse ? stdenv.isLinux, fuse3 , shared ? !stdenv.hostPlatform.isStatic , e2fsprogs, runCommand }: @@ -20,7 +20,7 @@ stdenv.mkDerivation rec { depsBuildBuild = [ buildPackages.stdenv.cc ]; nativeBuildInputs = [ pkg-config texinfo ]; buildInputs = [ libuuid gettext ] - ++ lib.optional withFuse (if stdenv.isDarwin then macfuse-stubs else fuse3); + ++ lib.optionals withFuse [ fuse3 ]; patches = [ # Avoid trouble with older systems like NixOS 23.05. @@ -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 [ @@ -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; diff --git a/pkgs/tools/filesystems/e2fsprogs/macfuse.patch b/pkgs/tools/filesystems/e2fsprogs/macfuse.patch deleted file mode 100644 index 2445958edd79741..000000000000000 --- a/pkgs/tools/filesystems/e2fsprogs/macfuse.patch +++ /dev/null @@ -1,20 +0,0 @@ ---- 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;