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