forked from
lass.pds.lassul.us/superconfig
This repository has no description
1.5 kB
62 lines
1{
2 lib,
3 stdenvNoCC,
4 fetchFromGitHub,
5 lz4,
6}:
7
8stdenvNoCC.mkDerivation rec {
9 pname = "pixel8-kernel-grapheneos";
10 version = "6.1-16-qpr2";
11
12 src = fetchFromGitHub {
13 owner = "GrapheneOS";
14 repo = "device_google_shusky-kernels_6.1";
15 rev = "16-qpr2";
16 hash = "sha256-bFYP0gdPQiQEf4wjwGyE8ocfKeYOWPLSBtkif3SDvzM=";
17 };
18
19 nativeBuildInputs = [ lz4 ];
20
21 installPhase = ''
22 runHook preInstall
23
24 mkdir -p $out/{kernel,dtbs,modules}
25
26 # Decompress kernel
27 lz4 -d grapheneos/Image.lz4 $out/kernel/Image
28
29 # Copy DTBs
30 cp grapheneos/*.dtb $out/dtbs/
31
32 # Copy DTBO image
33 cp grapheneos/dtbo.img $out/
34
35 # Copy all modules
36 cp grapheneos/*.ko $out/modules/
37
38 # Copy module loading configuration
39 cp grapheneos/modules.load $out/
40 cp grapheneos/init.insmod.shiba.cfg $out/
41 cp grapheneos/vendor_kernel_boot.modules.load $out/
42
43 # Copy System.map for debugging
44 cp grapheneos/System.map $out/
45
46 runHook postInstall
47 '';
48
49 # No compilation, just file copies - can build on any platform
50 dontStrip = true;
51 dontPatchELF = true;
52 dontFixup = true;
53
54 meta = with lib; {
55 description = "GrapheneOS prebuilt kernel for Google Pixel 8 (shiba)";
56 homepage = "https://github.com/GrapheneOS/device_google_shusky-kernels_6.1";
57 license = licenses.gpl2Only;
58 # Contains aarch64 binaries, but can be unpacked on any platform
59 platforms = lib.platforms.all;
60 maintainers = [ ];
61 };
62}