From 94b58830b3d53d7340884a10d699b2ee69ba3155 Mon Sep 17 00:00:00 2001
From: Daniel Micay
For example, to build the kernel for blueline:
+For example, to build the kernel for redfin:
-cd kernel/google/crosshatch +cd kernel/google/redbull git submodule sync git submodule update --init --recursive -./build.sh blueline+./build.sh redfin
source script/envsetup.sh-
Select the desired build target (sunfish
is the Pixel 4a):
Select the desired build target (redfin
is the Pixel 5):
choosecombo release sunfish user+
choosecombo release redfin user
For a development build, you may want to replace user
with
userdebug
in order to have better debugging support. Production builds
@@ -570,11 +570,11 @@ mv vendor/android-prepare-vendor/DEVICE/BUILD_ID/vendor/google_devices/* vendor/
The encryption passphrase for all the keys generated for a device needs to match for compatibility with the GrapheneOS scripts.
-To generate keys for sunfish (you should use unique keys per device +
To generate keys for redfin (you should use unique keys per device variant):
-mkdir -p keys/sunfish -cd keys/sunfish +mkdir -p keys/redfin +cd keys/redfin ../../development/tools/make_key releasekey '/CN=GrapheneOS/' ../../development/tools/make_key platform '/CN=GrapheneOS/' ../../development/tools/make_key shared '/CN=GrapheneOS/' @@ -589,7 +589,7 @@ cd ../..Generate a signify key for signing factory images:
-signify -G -n -p keys/sunfish/factory.pub -s keys/sunfish/factory.sec+signify -G -n -p keys/redfin/factory.pub -s keys/redfin/factory.secRemove the
-n
switch to set a passphrase. Thesignify
tool doesn't provide a way to change the passphrase without generating a new key, so @@ -604,7 +604,7 @@ cd ../..
You can (re-)encrypt your signing keys using the encrypt_keys
script,
which will prompt for the old passphrase (if any) and new passphrase:
script/encrypt_keys.sh keys/sunfish+
script/encrypt_keys.sh keys/redfin
The script/decrypt_keys.sh
script can be used to remove encryption,
which is not recommended. The script exists primarily for internal usage to decrypt
@@ -646,10 +646,10 @@ cd ../..
Generate a signed release build with the release.sh script:
-script/release.sh sunfish+
script/release.sh redfin
The factory images and update package will be in
- out/release-sunfish-$BUILD_NUMBER
. The update zip performs a full OS
+ out/release-redfin-$BUILD_NUMBER
. The update zip performs a full OS
installation so it can be used to update from any previous version. More efficient
incremental updates are used for official over-the-air GrapheneOS updates and can be
generated by keeping around past signed target_files
zips and generating
@@ -692,34 +692,34 @@ cd ../..
delta updates by passing the device, source version build number and target version
build number. For example:
script/generate_delta.sh sunfish 2020.12.12.03 2021.01.05.03+
script/generate_delta.sh redfin 2021.08.03.03 2021.08.09.02
The script assumes that the releases are organized in the following directory structure:
releases -├── 2020.12.12.03 -│ └── release-sunfish-2020.12.12.03 +├── 2021.08.03.03 +│ └── release-redfin-2021.08.03.03 │ ├── otatools -│ ├── sunfish-beta -│ ├── sunfish-factory-2020.12.12.03.zip -│ ├── sunfish-factory-2020.12.12.03.zip.sig -│ ├── sunfish-img-2020.12.12.03.zip -│ ├── sunfish-ota_update-2020.12.12.03.zip -│ ├── sunfish-stable -│ ├── sunfish-target_files-2020.12.12.03.zip -│ └── sunfish-testing -└── 2021.01.05.03 - └── release-sunfish-2021.01.05.03 +│ ├── redfin-beta +│ ├── redfin-factory-2021.08.03.03.zip +│ ├── redfin-factory-2021.08.03.03.zip.sig +│ ├── redfin-img-2021.08.03.03.zip +│ ├── redfin-ota_update-2021.08.03.03.zip +│ ├── redfin-stable +│ ├── redfin-target_files-2021.08.03.03.zip +│ └── redfin-testing +└── 2021.08.09.02 + └── release-redfin-2021.08.09.02 ├── otatools - ├── sunfish-beta - ├── sunfish-factory-2021.01.05.03.zip - ├── sunfish-factory-2021.01.05.03.zip.sig - ├── sunfish-img-2021.01.05.03.zip - ├── sunfish-ota_update-2021.01.05.03.zip - ├── sunfish-stable - ├── sunfish-target_files-2021.01.05.03.zip - └── sunfish-testing+ ├── redfin-beta + ├── redfin-factory-2021.08.09.02.zip + ├── redfin-factory-2021.08.09.02.zip.sig + ├── redfin-img-2021.08.09.02.zip + ├── redfin-ota_update-2021.08.09.02.zip + ├── redfin-stable + ├── redfin-target_files-2021.08.09.02.zip + └── redfin-testing
Incremental updates are uploaded alongside the update packages and update metadata on the static web server used as an update server. The update client will