nixpkgs/pkgs/tools/filesystems/erofs-utils/default.nix
Jared Baur 173b9d562f
erofs: allow adding LZMA support
LZMA support for EROFS is considered experimental in the current release
and defaults to disabled, so `lzmaSupport` defaults to false.
2024-01-14 21:47:57 -08:00

39 lines
1.3 KiB
Nix

{ lib, stdenv, fetchurl, autoreconfHook, pkg-config, fuse, util-linux, lz4, xz, zlib, libselinux
, fuseSupport ? stdenv.isLinux
, selinuxSupport ? false
, lzmaSupport ? false
}:
stdenv.mkDerivation rec {
pname = "erofs-utils";
version = "1.7.1";
outputs = [ "out" "man" ];
src = fetchurl {
url =
"https://git.kernel.org/pub/scm/linux/kernel/git/xiang/erofs-utils.git/snapshot/erofs-utils-${version}.tar.gz";
hash = "sha256-GWCD1j5eIx+1eZ586GqUS7ylZNqrzj3pIlqKyp3K/xU=";
};
nativeBuildInputs = [ autoreconfHook pkg-config ];
buildInputs = [ util-linux lz4 zlib ]
++ lib.optionals fuseSupport [ fuse ]
++ lib.optionals selinuxSupport [ libselinux ]
++ lib.optionals lzmaSupport [ xz ];
configureFlags = [
"MAX_BLOCK_SIZE=4096"
] ++ lib.optional fuseSupport "--enable-fuse"
++ lib.optional selinuxSupport "--with-selinux"
++ lib.optional lzmaSupport "--enable-lzma";
meta = with lib; {
homepage = "https://git.kernel.org/pub/scm/linux/kernel/git/xiang/erofs-utils.git/about/";
description = "Userspace utilities for linux-erofs file system";
changelog = "https://git.kernel.org/pub/scm/linux/kernel/git/xiang/erofs-utils.git/tree/ChangeLog?h=v${version}";
license = with licenses; [ gpl2Plus ];
maintainers = with maintainers; [ ehmry nikstur ];
platforms = platforms.unix;
};
}