1{ lib
2, fetchpatch
3, kernel
4, commitDate ? "2022-10-31"
5, currentCommit ? "77c27f28aa58e9d9037eb68c87d3283f68c371f7"
6, diffHash ? "sha256-TUpI9z0ac3rjn2oT5Z7oQXevDKbGwTVjyigS5/aGwgQ="
7, kernelPatches # must always be defined in bcachefs' all-packages.nix entry because it's also a top-level attribute supplied by callPackage
8, argsOverride ? {}
9, ...
10} @ args:
11
12# NOTE: bcachefs-tools should be updated simultaneously to preserve compatibility
13(kernel.override ( args // {
14 argsOverride = {
15 version = "${kernel.version}-bcachefs-unstable-${commitDate}";
16
17 extraMeta = {
18 branch = "master";
19 maintainers = with lib.maintainers; [ davidak Madouura ];
20 };
21 } // argsOverride;
22
23 kernelPatches = [ {
24 name = "bcachefs-${currentCommit}";
25
26 patch = fetchpatch {
27 name = "bcachefs-${currentCommit}.diff";
28 url = "https://evilpiepirate.org/git/bcachefs.git/rawdiff/?id=${currentCommit}&id2=v${lib.versions.majorMinor kernel.version}";
29 sha256 = diffHash;
30 };
31
32 extraConfig = "BCACHEFS_FS m";
33 } ] ++ kernelPatches;
34}))