nixpkgs/pkgs/tools/filesystems/mergerfs/default.nix
2024-03-01 14:05:57 +00:00

42 lines
1.1 KiB
Nix

{ lib, stdenv, fetchFromGitHub, automake, autoconf, pkg-config, gettext, libtool, pandoc, which, attr, libiconv }:
stdenv.mkDerivation rec {
pname = "mergerfs";
version = "2.40.2";
src = fetchFromGitHub {
owner = "trapexit";
repo = pname;
rev = version;
sha256 = "sha256-3DfSGuTtM+h0IdtsIhLVXQxX5/Tj9G5Qcha3DWmyyq4=";
};
nativeBuildInputs = [
automake autoconf pkg-config gettext libtool pandoc which
];
prePatch = ''
sed -i -e '/chown/d' -e '/chmod/d' libfuse/Makefile
'';
buildInputs = [ attr libiconv ];
preConfigure = ''
echo "${version}" > VERSION
'';
makeFlags = [ "DESTDIR=${placeholder "out"}" "XATTR_AVAILABLE=1" "PREFIX=/" "SBINDIR=/bin" ];
enableParallelBuilding = true;
postFixup = ''
ln -srf $out/bin/mergerfs $out/bin/mount.fuse.mergerfs
ln -srf $out/bin/mergerfs $out/bin/mount.mergerfs
'';
meta = {
description = "A FUSE based union filesystem";
homepage = "https://github.com/trapexit/mergerfs";
license = lib.licenses.isc;
platforms = lib.platforms.linux;
maintainers = with lib.maintainers; [ makefu ];
};
}