diff --git a/static/build.html b/static/build.html index 516bda77..18ac3874 100644 --- a/static/build.html +++ b/static/build.html @@ -404,6 +404,9 @@ cd ../..
Prebuilts are provided for all the officially supported devices, so this step is optional.
+Instructions for 4th and 5th generation Pixels need to be rewritten for Android 13
+ + -As part of the hardening in GrapheneOS, it uses fully monolithic kernel builds with - dynamic kernel modules disabled. This improves the effectiveness of mitigations like - Control Flow Integrity benefiting from whole program analysis. It also reduces attack - surface and complexity including making the build system simpler. The kernel trees - marked as using a separate build above need to have the device variant passed to the - GrapheneOS kernel build script to select the device. Due to the added level of - complexity added by GKI kernels, we currently do not produce monolithic builds for - 6th generation Pixel devices.
+For example, for 6th generation Pixels:
-The kernel repositories use submodules for building in out-of-tree modules.
- You need to make sure the submodule sources are updated before building. In
- the future, this should end up being handled automatically by
- repo
. There's no harm in running the submodule commands for other
- devices as they will simply not do anything.
For example, to build the kernel for redfin:
- -cd kernel/google/redbull -git submodule sync -git submodule update --init --recursive -./build.sh redfin- -
For the Pixel 6 and Pixel 6 Pro, you need a separate repo source tree for - building the kernel:
- -mkdir kernel-raviole -cd kernel-raviole -repo init -u https://github.com/GrapheneOS/kernel_raviole-manifest.git -b 12.1 +mkdir android/kernel/raviole +cd android/kernel/raviole +repo init -u https://github.com/GrapheneOS/kernel_raviole-manifest.git -b 13 repo sync -j16To build the Pixel 6 and Pixel 6 Pro kernel:
-LTO=full BUILD_KERNEL=1 ./build_slider.sh+KBUILD_BUILD_VERSION=1 KBUILD_BUILD_USER=grapheneos KBUILD_BUILD_HOST=grapheneos KBUILD_BUILD_TIMESTAMP="Thu 01 Jan 1970 12:00:00 AM UTC" LTO=full BUILD_KERNEL=1 ./build_slider.shTo build the Pixel 6a kernel:
-LTO=full BUILD_KERNEL=1 ./build_bluejay.sh+KBUILD_BUILD_VERSION=1 KBUILD_BUILD_USER=grapheneos KBUILD_BUILD_HOST=grapheneos KBUILD_BUILD_TIMESTAMP="Thu 01 Jan 1970 12:00:00 AM UTC" LTO=full BUILD_KERNEL=1 ./build_bluejay.shYou need to replace the files in the GrapheneOS source tree at
device/google/raviole-kernel
with the output from your kernel