diff --git a/pkgs/tools/filesystems/mergerfs/default.nix b/pkgs/tools/filesystems/mergerfs/default.nix new file mode 100644 index 000000000000..81f82108995d --- /dev/null +++ b/pkgs/tools/filesystems/mergerfs/default.nix @@ -0,0 +1,26 @@ +{ stdenv, fetchgit, fuse, pkgconfig, which, attr, pandoc, git }: + +stdenv.mkDerivation rec { + name = "mergerfs-${version}"; + version = "2.16.1"; + + # not using fetchFromGitHub because of changelog being built with git log + src = fetchgit { + url = "https://github.com/trapexit/mergerfs"; + rev = "refs/tags/${version}"; + sha256 = "12fqgk54fnnibqiq82p4g2k6qnw3iy6dd64csmlf73yi67za5iwf"; + deepClone = true; + }; + + buildInputs = [ fuse pkgconfig which attr pandoc git ]; + + makeFlags = [ "PREFIX=$(out)" "XATTR_AVAILABLE=1" ]; + + meta = { + description = "A FUSE based union filesystem"; + homepage = https://github.com/trapexit/mergerfs; + license = stdenv.lib.licenses.isc; + platforms = stdenv.lib.platforms.linux; + maintainers = with stdenv.lib.maintainers; [ makefu ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index e301871b9dc3..58eda14f3b83 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -8295,6 +8295,8 @@ in menu-cache = callPackage ../development/libraries/menu-cache { }; + mergerfs = callPackage ../tools/filesystems/mergerfs { }; + mesaSupported = lib.elem system lib.platforms.mesaPlatforms; mesaDarwinOr = alternative: if stdenv.isDarwin