nixpkgs/pkgs/os-specific/linux/exfat/default.nix
makefu 3034023976
exfat-nofuse: fix build for 4.18
additionally we use the PR 137 instead of the patch files from AUR.
This avoids changes in source files and pins the patch to exactly what we want
It also removes one fetchpatch call
2019-01-09 15:13:54 +01:00

47 lines
1.4 KiB
Nix

{ stdenv, lib, fetchFromGitHub, fetchpatch, kernel }:
# Upstream build for kernel 4.1 is broken, 3.12 and below seems to be working
assert lib.versionAtLeast kernel.version "4.2" || lib.versionOlder kernel.version "4.0";
stdenv.mkDerivation rec {
name = "exfat-nofuse-${version}-${kernel.version}";
version = "2018-04-16";
src = fetchFromGitHub {
owner = "dorimanx";
repo = "exfat-nofuse";
rev = "01c30ad52625a7261e1b0d874553b6ca7af25966";
sha256 = "0n1ibamf1yj8iqapc86lfscnky9p07ngsi4f2kpv3d5r2s6mzsh6";
};
hardeningDisable = [ "pic" ];
nativeBuildInputs = kernel.moduleBuildDependencies;
makeFlags = [
"KDIR=${kernel.dev}/lib/modules/${kernel.modDirVersion}/build"
];
installPhase = ''
install -m644 -b -D exfat.ko $out/lib/modules/${kernel.modDirVersion}/kernel/fs/exfat/exfat.ko
'';
patches = [
# fix compile-errors in 4.18 and 4.20
# ref: https://github.com/dorimanx/exfat-nofuse/pull/137
(fetchpatch {
url = https://github.com/dorimanx/exfat-nofuse/compare/01c30ad52625a7261e1b0d874553b6ca7af25966...f93a47e6414d567a1e7f6ab7f34b015b20f9a050.patch ;
sha256 = "0w57pi9h6dwjxfgc3zpwy6sr4zw42hn1zj72f7wgfpqrx6d8xkh5";
} )
];
meta = {
description = "exfat kernel module";
homepage = https://github.com/dorimanx/exfat-nofuse;
license = lib.licenses.gpl2;
maintainers = with lib.maintainers; [ makefu ];
platforms = lib.platforms.linux;
};
}