├── build-statix-gsi.sh ├── files ├── 0001-Restore-sbin.patch ├── manifest.xml ├── patches-v300l.zip └── statix.mk └── readme.md /build-statix-gsi.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | mkdir statix 4 | cd statix 5 | 6 | repo init -u https://github.com/StatiXOS/android_manifest.git -b 11 7 | mkdir -p .repo/local_manifests 8 | rm .repo/local_manifests/manifest.xml device/phh/treble/statix.mk 9 | cp ../files/manifest.xml .repo/local_manifests/manifest.xml 10 | 11 | repo sync --force-sync --no-clone-bundle --current-branch --no-tags -j$(nproc --all) 12 | 13 | git clone https://github.com/VegaBobo/treble_experimentations 14 | cp ../files/patches-v300l.zip patches.zip 15 | unzip -o patches.zip 16 | bash treble_experimentations/apply-patches.sh . 17 | cp ../files/statix.mk device/phh/treble 18 | 19 | cd device/phh/treble 20 | git clean -fdx 21 | bash generate.sh statix 22 | cd ../../.. 23 | 24 | cd packages/services/Telecomm 25 | git revert -m 1 10d34b4e320d3da4e8607724b12ea7e132fe8f5f --no-edit # "Merge tag 'LA.QSSI..." 26 | git fetch https://github.com/LineageOS/android_packages_services_Telecomm 27 | git cherry-pick c1da8a2e63dd3251c328f281227057635bc515da --no-edit # Bluetooth: Support to know if there is High Def call 28 | git cherry-pick 3d64b4ffbacfaee909034ac887c2529e1324281a --no-edit # add support to check if Cs Call InProgress 29 | cd ../Telephony 30 | git revert -m 1 f638fefc91e0682666bff97adaf9d7263e504cd4 --no-edit # telephony: compile fixes ig 31 | git revert -m 1 9fe94a64d41ce4e9ca998f8849918c6ee2d09075 --no-edit # Telephony: Break qti-telephony-framework dependency 32 | git revert -m 1 b601d999911f76f8e0cc21bea0c6d9be0c10398a --no-edit # Merge tag 'LA.QSSI..." 33 | cd ../../../system/core 34 | git am ../../../files/0001-Restore-sbin.patch # AndyCGYan sbin patch (restores sbin folder) 35 | cd ../.. 36 | 37 | buildVariant() { 38 | lunch $1 39 | make installclean 40 | make -j$(nproc --all) systemimage 41 | make vndk-test-sepolicy 42 | } 43 | 44 | . build/envsetup.sh 45 | 46 | buildVariant treble_arm64_bvS-userdebug 47 | buildVariant treble_a64_bvS-userdebug 48 | -------------------------------------------------------------------------------- /files/0001-Restore-sbin.patch: -------------------------------------------------------------------------------- 1 | From 15359fa07d5f0216a6916662cc8dfce2e8e4b050 Mon Sep 17 00:00:00 2001 2 | From: Andy CrossGate Yan 3 | Date: Sun, 10 Jan 2021 05:10:39 +0000 4 | Subject: [PATCH] Restore /sbin 5 | 6 | This reverts "Do not create /sbin" and "Remove sbin from fs_config.cpp". 7 | 8 | Change-Id: Iade1d5e8ec8df8e3dcfbdeef3367dbe56996ae6f 9 | --- 10 | CleanSpec.mk | 2 -- 11 | libcutils/fs_config.cpp | 3 +++ 12 | rootdir/Android.mk | 2 +- 13 | 3 files changed, 4 insertions(+), 3 deletions(-) 14 | 15 | diff --git a/CleanSpec.mk b/CleanSpec.mk 16 | index 0a534a2bd..81150a0fa 100644 17 | --- a/CleanSpec.mk 18 | +++ b/CleanSpec.mk 19 | @@ -80,8 +80,6 @@ $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/etc/vndksp.libraries.txt) 20 | $(call add-clean-step, rm -rf $(PRODUCT_OUT)/recovery/root/) 21 | $(call add-clean-step, rm -rf $(PRODUCT_OUT)/root/sbin/charger) 22 | $(call add-clean-step, rm -rf $(PRODUCT_OUT)/recovery/root/sbin/charger) 23 | -$(call add-clean-step, rm -rf $(PRODUCT_OUT)/root/sbin) 24 | -$(call add-clean-step, rm -rf $(PRODUCT_OUT)/recovery/root/sbin) 25 | $(call add-clean-step, rm -rf $(PRODUCT_OUT)/product_services) 26 | $(call add-clean-step, rm -rf $(PRODUCT_OUT)/product_services.img) 27 | $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/product_services) 28 | diff --git a/libcutils/fs_config.cpp b/libcutils/fs_config.cpp 29 | index 5805a4d19..b30707fc8 100644 30 | --- a/libcutils/fs_config.cpp 31 | +++ b/libcutils/fs_config.cpp 32 | @@ -80,6 +80,7 @@ static const struct fs_path_config android_dirs[] = { 33 | { 00771, AID_SYSTEM, AID_SYSTEM, 0, "data" }, 34 | { 00755, AID_ROOT, AID_SYSTEM, 0, "mnt" }, 35 | { 00751, AID_ROOT, AID_SHELL, 0, "product/bin" }, 36 | + { 00750, AID_ROOT, AID_SHELL, 0, "sbin" }, 37 | { 00777, AID_ROOT, AID_ROOT, 0, "sdcard" }, 38 | { 00751, AID_ROOT, AID_SDCARD_R, 0, "storage" }, 39 | { 00751, AID_ROOT, AID_SHELL, 0, "system/bin" }, 40 | @@ -164,6 +165,7 @@ static const struct fs_path_config android_files[] = { 41 | { 00600, AID_ROOT, AID_ROOT, 0, "system_ext/build.prop" }, 42 | { 00444, AID_ROOT, AID_ROOT, 0, system_ext_conf_dir + 1 }, 43 | { 00444, AID_ROOT, AID_ROOT, 0, system_ext_conf_file + 1 }, 44 | + { 00750, AID_ROOT, AID_SHELL, 0, "sbin/fs_mgr" }, 45 | { 00755, AID_ROOT, AID_SHELL, 0, "system/bin/crash_dump32" }, 46 | { 00755, AID_ROOT, AID_SHELL, 0, "system/bin/crash_dump64" }, 47 | { 00755, AID_ROOT, AID_SHELL, 0, "system/bin/debuggerd" }, 48 | @@ -209,6 +211,7 @@ static const struct fs_path_config android_files[] = { 49 | { 00750, AID_ROOT, AID_SHELL, 0, "init*" }, 50 | { 00755, AID_ROOT, AID_SHELL, 0, "odm/bin/*" }, 51 | { 00755, AID_ROOT, AID_SHELL, 0, "product/bin/*" }, 52 | + { 00750, AID_ROOT, AID_SHELL, 0, "sbin/*" }, 53 | { 00755, AID_ROOT, AID_SHELL, 0, "system/bin/*" }, 54 | { 00755, AID_ROOT, AID_SHELL, 0, "system/xbin/*" }, 55 | { 00755, AID_ROOT, AID_SHELL, 0, "system/apex/*/bin/*" }, 56 | diff --git a/rootdir/Android.mk b/rootdir/Android.mk 57 | index a9d0ed08a..56b0d5b5b 100644 58 | --- a/rootdir/Android.mk 59 | +++ b/rootdir/Android.mk 60 | @@ -77,7 +77,7 @@ endif 61 | # 62 | # create some directories (some are mount points) and symlinks 63 | LOCAL_POST_INSTALL_CMD := mkdir -p $(addprefix $(TARGET_ROOT_OUT)/, \ 64 | - dev proc sys system data data_mirror odm oem acct config storage mnt apex debug_ramdisk \ 65 | + sbin dev proc sys system data data_mirror odm oem acct config storage mnt apex debug_ramdisk \ 66 | linkerconfig $(BOARD_ROOT_EXTRA_FOLDERS)); \ 67 | ln -sf /system/bin $(TARGET_ROOT_OUT)/bin; \ 68 | ln -sf /system/etc $(TARGET_ROOT_OUT)/etc; \ 69 | -- 70 | 2.25.1 71 | 72 | -------------------------------------------------------------------------------- /files/manifest.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /files/patches-v300l.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/VegaBobo/gsi-script/1dae508f2a8762c0b8bad4c8bdf4ead1875261bd/files/patches-v300l.zip -------------------------------------------------------------------------------- /files/statix.mk: -------------------------------------------------------------------------------- 1 | $(call inherit-product, vendor/statix/config/common.mk) 2 | $(call inherit-product, vendor/statix/config/gsm.mk) 3 | -------------------------------------------------------------------------------- /readme.md: -------------------------------------------------------------------------------- 1 | simple statix gsi build script 2 | 3 | credits to phhusson: https://github.com/phhusson/treble_experimentations/ 4 | and to AndyCGYan for their build script for los (that ive used as reference): https://github.com/AndyCGYan/treble_build_los 5 | --------------------------------------------------------------------------------