38 lines
1.5 KiB
Nix
38 lines
1.5 KiB
Nix
{ linux_6_4
|
|
, fetchpatch
|
|
, pkgs
|
|
# something inside nixpkgs calls `override` on the kernel and passes in extra arguments; we'll forward them
|
|
, ...
|
|
}@args:
|
|
let
|
|
# use the latest commit: for linux 6.4.7
|
|
# manjaro's changes between kernel patch versions tend to be minimal if any.
|
|
manjaroBase = "https://gitlab.manjaro.org/manjaro-arm/packages/core/linux/-/raw/6c64aa18076a7dc75bfd854b27906467f5d95336";
|
|
manjaroPatch = args: {
|
|
inherit (args) name;
|
|
patch = fetchpatch ({
|
|
url = "${manjaroBase}/${args.name}?inline=false";
|
|
} // args);
|
|
};
|
|
|
|
# the idea for patching off Manjaro's kernel comes from jakewaksbaum:
|
|
# - https://git.sr.ht/~jakewaksbaum/pi/tree/af20aae5653545d6e67a459b59ee3e1ca8a680b0/item/kernel/default.nix
|
|
# - he later abandoned this, i think because he's using the Pinephone Pro which received mainline support.
|
|
manjaroPatches = [
|
|
(manjaroPatch {
|
|
# this patch is critical to enable wifi (RTL8723CS)
|
|
# - the alternative is a wholly forked kernel by megi/megous:
|
|
# - https://xnux.eu/howtos/build-pinephone-kernel.html#toc-how-to-build-megi-s-pinehpone-kernel
|
|
# - i don't know if this patch is based on megi's or original.
|
|
# - it might be possible to build this rtl8723cs out of tree?
|
|
name = "2001-staging-add-rtl8723cs-driver.patch";
|
|
hash = "sha256-M4MR9Oi90BmaB68kWjezHon/NzXDxu13Hc+TWm3tcjg=";
|
|
})
|
|
];
|
|
in linux_6_4.override (args // {
|
|
kernelPatches = (args.kernelPatches or []) ++ [
|
|
pkgs.kernelPatches.bridge_stp_helper
|
|
pkgs.kernelPatches.request_key_helper
|
|
] ++ manjaroPatches;
|
|
})
|