biome: 1.9.2 -> 1.9.3
[NixPkgs.git] / pkgs / tools / filesystems / ntfs-3g / default.nix
blob5a9426cee486c4b86784c09b279843588a5f0201
1 { lib, stdenv, fetchFromGitHub, autoreconfHook, pkg-config
2 , gettext, mount, libuuid, kmod, macfuse-stubs, DiskArbitration
3 , crypto ? false, libgcrypt, gnutls
4 }:
6 stdenv.mkDerivation rec {
7   pname = "ntfs3g";
8   version = "2022.10.3";
10   outputs = [ "out" "dev" "man" "doc" ];
12   src = fetchFromGitHub {
13     owner = "tuxera";
14     repo = "ntfs-3g";
15     rev = version;
16     sha256 = "sha256-nuFTsGkm3zmSzpwmhyY7Ke0VZfZU0jHOzEWaLBbglQk=";
17   };
19   buildInputs = [ gettext libuuid ]
20     ++ lib.optionals crypto [ gnutls libgcrypt ]
21     ++ lib.optionals stdenv.hostPlatform.isDarwin [ macfuse-stubs DiskArbitration ];
23   # Note: libgcrypt is listed here non-optionally because its m4 macros are
24   # being used in ntfs-3g's configure.ac.
25   nativeBuildInputs = [ autoreconfHook libgcrypt pkg-config ];
27   patches = [
28     # https://github.com/tuxera/ntfs-3g/pull/39
29     ./autoconf-sbin-helpers.patch
30     ./consistent-sbindir-usage.patch
31   ];
33   configureFlags = [
34     "--disable-ldconfig"
35     "--exec-prefix=\${prefix}"
36     "--enable-mount-helper"
37     "--enable-posix-acls"
38     "--enable-xattr-mappings"
39     "--${if crypto then "enable" else "disable"}-crypto"
40     "--enable-extras"
41     "--with-mount-helper=${mount}/bin/mount"
42     "--with-umount-helper=${mount}/bin/umount"
43   ] ++ lib.optionals stdenv.hostPlatform.isLinux [
44     "--with-modprobe-helper=${kmod}/bin/modprobe"
45   ];
47   postInstall =
48     ''
49       # Prefer ntfs-3g over the ntfs driver in the kernel.
50       ln -sv mount.ntfs-3g $out/sbin/mount.ntfs
51     '';
53   enableParallelBuilding = true;
55   meta = with lib; {
56     homepage = "https://github.com/tuxera/ntfs-3g";
57     description = "FUSE-based NTFS driver with full write support";
58     maintainers = with maintainers; [ dezgeg ];
59     platforms = with platforms; darwin ++ linux;
60     license = with licenses; [
61       gpl2Plus # ntfs-3g itself
62       lgpl2Plus # fuse-lite
63     ];
64   };