Major overhaul
More automation, less manual steps Credits to @Magendanz for many of the ideas!
This commit is contained in:
commit
feb0e4bf2a
27
README.md
Normal file
27
README.md
Normal file
@ -0,0 +1,27 @@
|
||||
|
||||
## Building PHH-based LineageOS GSIs ##
|
||||
|
||||
To get started with building LineageOS GSI, you'll need to get familiar with [Git and Repo](https://source.android.com/source/using-repo.html) as well as [How to build a GSI](https://github.com/phhusson/treble_experimentations/wiki/How-to-build-a-GSI%3F).
|
||||
|
||||
First, open a new Terminal window, which defaults to your home directory. Clone the modified treble_experimentations repo there:
|
||||
|
||||
git clone https://github.com/AndyCGYan/treble_experimentations
|
||||
|
||||
Create a new working directory for your LineageOS build and navigate to it:
|
||||
|
||||
mkdir lineage-16.x-build-gsi; cd lineage-16.x-build-gsi
|
||||
|
||||
Initialize your LineageOS workspace:
|
||||
|
||||
repo init -u https://github.com/LineageOS/android.git -b lineage-16.0
|
||||
|
||||
Clone the modified treble patches and this repo:
|
||||
|
||||
git clone https://github.com/AndyCGYan/treble_patches -b lineage-16.0
|
||||
git clone https://github.com/AndyCGYan/treble_build_los -b lineage-16.0
|
||||
|
||||
Finally, start the build script:
|
||||
|
||||
bash treble_build_los/buildbot_treble.sh
|
||||
|
||||
Be sure to update the cloned repos from time to time!
|
107
buildbot_treble.sh
Normal file
107
buildbot_treble.sh
Normal file
@ -0,0 +1,107 @@
|
||||
#!/bin/bash
|
||||
echo ""
|
||||
echo "LineageOS 16.x Treble Buildbot"
|
||||
echo "ATTENTION: this script syncs repo on each run"
|
||||
echo "Executing in 5 seconds - CTRL-C to exit"
|
||||
echo ""
|
||||
sleep 5
|
||||
|
||||
START=`date +%s`
|
||||
BUILD_DATE="$(date +%Y%m%d)"
|
||||
BL=$PWD/treble_build_los
|
||||
|
||||
echo "Preparing local manifest"
|
||||
mkdir -p .repo/local_manifests
|
||||
cp $BL/manifest.xml .repo/local_manifests/manifest.xml
|
||||
echo ""
|
||||
|
||||
echo "Syncing repos"
|
||||
repo sync -c --force-sync --no-clone-bundle --no-tags -j$(nproc --all)
|
||||
echo ""
|
||||
|
||||
echo "Setting up build environment"
|
||||
source build/envsetup.sh &> /dev/null
|
||||
echo ""
|
||||
|
||||
echo "Applying PHH patches"
|
||||
cd frameworks/base
|
||||
git revert e0a5469cf5a2345fae7e81d16d717d285acd3a6e --no-edit # FODCircleView: defer removal to next re-layout
|
||||
git revert 817541a8353014e40fa07a1ee27d9d2f35ea2c16 --no-edit # Initial support for in-display fingerprint sensors
|
||||
cd ../..
|
||||
rm -f device/*/sepolicy/common/private/genfs_contexts
|
||||
cd device/phh/treble
|
||||
git clean -fdx
|
||||
bash generate.sh lineage
|
||||
cd ../../..
|
||||
bash ~/treble_experimentations/apply-patches.sh treble_patches
|
||||
echo ""
|
||||
|
||||
echo "Applying universal patches"
|
||||
cd frameworks/base
|
||||
git am $BL/patches/0001-Disable-vendor-mismatch-warning.patch
|
||||
git am $BL/patches/0001-Keyguard-Show-shortcuts-by-default.patch
|
||||
git am $BL/patches/0001-core-Add-support-for-MicroG.patch
|
||||
cd ../..
|
||||
cd lineage-sdk
|
||||
git am $BL/patches/0001-sdk-Invert-per-app-stretch-to-fullscreen.patch
|
||||
cd ..
|
||||
cd packages/apps/LineageParts
|
||||
git am $BL/patches/0001-LineageParts-Invert-per-app-stretch-to-fullscreen.patch
|
||||
cd ../../..
|
||||
cd vendor/lineage
|
||||
git am $BL/patches/0001-vendor_lineage-Log-privapp-permissions-whitelist-vio.patch
|
||||
cd ../..
|
||||
echo ""
|
||||
|
||||
echo "Applying GSI-specific patches"
|
||||
cd build/make
|
||||
git am $BL/patches/0001-Revert-Enable-dyanmic-image-size-for-GSI.patch
|
||||
cd ../..
|
||||
cd device/phh/treble
|
||||
git revert 82b15278bad816632dcaeaed623b569978e9840d --no-edit # Update lineage.mk for LineageOS 16.0
|
||||
git am $BL/patches/0001-Remove-fsck-SELinux-labels.patch
|
||||
git am $BL/patches/0001-treble-Add-overlay-lineage.patch
|
||||
git am $BL/patches/0001-treble-Don-t-specify-config_wallpaperCropperPackage.patch
|
||||
git am $BL/patches/0001-Increase-system-partition-size-for-arm_ab.patch
|
||||
cd ../../..
|
||||
cd external/tinycompress
|
||||
git revert fbe2bd5c3d670234c3c92f875986acc148e6d792 --no-edit # tinycompress: Use generated kernel headers
|
||||
cd ../..
|
||||
cd vendor/lineage
|
||||
git am $BL/patches/0001-build_soong-Disable-generated_kernel_headers.patch
|
||||
cd ../..
|
||||
cd vendor/qcom/opensource/cryptfs_hw
|
||||
git revert 6a3fc11bcc95d1abebb60e5d714adf75ece83102 --no-edit # cryptfs_hw: Use generated kernel headers
|
||||
git am $BL/patches/0001-Header-hack-to-compile-for-8974.patch
|
||||
cd ../../../..
|
||||
echo ""
|
||||
|
||||
echo "CHECK PATCH STATUS NOW!"
|
||||
sleep 5
|
||||
echo ""
|
||||
|
||||
export WITHOUT_CHECK_API=true
|
||||
export WITH_SU=true
|
||||
mkdir -p ~/build-output/
|
||||
|
||||
buildVariant() {
|
||||
lunch ${1}-userdebug
|
||||
make installclean
|
||||
make -j$(nproc --all) systemimage
|
||||
make vndk-test-sepolicy
|
||||
mv $OUT/system.img ~/build-output/lineage-16.0-$BUILD_DATE-UNOFFICIAL-${1}.img
|
||||
}
|
||||
|
||||
buildVariant treble_arm_avN
|
||||
buildVariant treble_arm_bvN
|
||||
buildVariant treble_a64_avN
|
||||
buildVariant treble_a64_bvN
|
||||
buildVariant treble_arm64_avN
|
||||
buildVariant treble_arm64_bvN
|
||||
ls ~/build-output | grep 'lineage'
|
||||
|
||||
END=`date +%s`
|
||||
ELAPSEDM=$(($(($END-$START))/60))
|
||||
ELAPSEDS=$(($(($END-$START))-$ELAPSEDM*60))
|
||||
echo "Buildbot completed in $ELAPSEDM minutes and $ELAPSEDS seconds"
|
||||
echo ""
|
9
manifest.xml
Normal file
9
manifest.xml
Normal file
@ -0,0 +1,9 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<manifest>
|
||||
<project name="phhusson/vendor_hardware_overlay" path="vendor/hardware_overlay" remote="github" revision="pie" />
|
||||
<project name="phhusson/device_phh_treble" path="device/phh/treble" remote="github" revision="android-9.0" />
|
||||
<project name="phhusson/vendor_vndk" path="vendor/vndk" remote="github" revision="master" />
|
||||
<project name="phhusson/vendor_vndk-tests" path="vendor/vndk-tests" remote="github" revision="master" />
|
||||
<project name="phhusson/vendor_interfaces" path="vendor/interfaces" remote="github" revision="pie" />
|
||||
<project name="phhusson/vendor_magisk" path="vendor/magisk" remote="github" revision="master" />
|
||||
</manifest>
|
28
patches/0001-Disable-vendor-mismatch-warning.patch
Normal file
28
patches/0001-Disable-vendor-mismatch-warning.patch
Normal file
@ -0,0 +1,28 @@
|
||||
From 7cb0be20c75a47e2f8b5849bc3d8485222bcafbe Mon Sep 17 00:00:00 2001
|
||||
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
|
||||
Date: Thu, 5 Apr 2018 10:01:19 +0800
|
||||
Subject: [PATCH] Disable vendor mismatch warning
|
||||
|
||||
Change-Id: Ieb8fe91e2f02462f074312ed0f4885d183e9780b
|
||||
---
|
||||
services/core/java/com/android/server/am/ActivityManagerService.java | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/services/core/java/com/android/server/am/ActivityManagerService.java b/services/core/java/com/android/server/am/ActivityManagerService.java
|
||||
index 7274c80..0d1a92f 100644
|
||||
--- a/services/core/java/com/android/server/am/ActivityManagerService.java
|
||||
+++ b/services/core/java/com/android/server/am/ActivityManagerService.java
|
||||
@@ -14356,8 +14356,8 @@ public class ActivityManagerService extends IActivityManager.Stub
|
||||
}
|
||||
|
||||
if (!Build.isBuildConsistent()) {
|
||||
- Slog.e(TAG, "Build fingerprint is not consistent, warning user");
|
||||
- mUiHandler.obtainMessage(SHOW_FINGERPRINT_ERROR_UI_MSG).sendToTarget();
|
||||
+ Slog.e(TAG, "Build fingerprint is not consistent");
|
||||
+ // Do not emit warning about vendor mismatch
|
||||
}
|
||||
|
||||
long ident = Binder.clearCallingIdentity();
|
||||
--
|
||||
2.7.4
|
||||
|
312
patches/0001-Header-hack-to-compile-for-8974.patch
Normal file
312
patches/0001-Header-hack-to-compile-for-8974.patch
Normal file
@ -0,0 +1,312 @@
|
||||
From 648f554499f29980f450a231a94945d245c7ae5c Mon Sep 17 00:00:00 2001
|
||||
From: Michael Bestas <mkbestas@lineageos.org>
|
||||
Date: Sat, 1 Sep 2018 14:56:27 +0300
|
||||
Subject: [PATCH] Header hack to compile for 8974
|
||||
|
||||
Change-Id: Ib8d70bb2499a147506d896ebd54e5aa45fe76f2e
|
||||
---
|
||||
Android.bp | 3 +-
|
||||
cryptfs_hw.c | 2 +-
|
||||
qseecom.h | 263 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
3 files changed, 265 insertions(+), 3 deletions(-)
|
||||
create mode 100644 qseecom.h
|
||||
|
||||
diff --git a/Android.bp b/Android.bp
|
||||
index abbe407..d40e884 100644
|
||||
--- a/Android.bp
|
||||
+++ b/Android.bp
|
||||
@@ -10,8 +10,7 @@ commonSharedLibraries = [
|
||||
|
||||
cc_library_shared {
|
||||
name: "libcryptfs_hw",
|
||||
- header_libs: ["qseecom-kernel-headers",
|
||||
- "libhardware_headers"],
|
||||
+ header_libs: ["libhardware_headers"],
|
||||
cflags: ["-DCONFIG_HW_DISK_ENCRYPTION"],
|
||||
srcs: sourceFiles,
|
||||
shared_libs: commonSharedLibraries,
|
||||
diff --git a/cryptfs_hw.c b/cryptfs_hw.c
|
||||
index 482e28b..fbde52f 100644
|
||||
--- a/cryptfs_hw.c
|
||||
+++ b/cryptfs_hw.c
|
||||
@@ -37,7 +37,7 @@
|
||||
#include <dirent.h>
|
||||
#include <dlfcn.h>
|
||||
#include <errno.h>
|
||||
-#include <linux/qseecom.h>
|
||||
+#include "qseecom.h"
|
||||
#include <hardware/keymaster_common.h>
|
||||
#include <hardware/hardware.h>
|
||||
#include "cutils/log.h"
|
||||
diff --git a/qseecom.h b/qseecom.h
|
||||
new file mode 100644
|
||||
index 0000000..b63b36e
|
||||
--- /dev/null
|
||||
+++ b/qseecom.h
|
||||
@@ -0,0 +1,263 @@
|
||||
+#ifndef __QSEECOM_H_
|
||||
+#define __QSEECOM_H_
|
||||
+
|
||||
+#include <linux/types.h>
|
||||
+#include <linux/ioctl.h>
|
||||
+
|
||||
+#define MAX_ION_FD 4
|
||||
+#define MAX_APP_NAME_SIZE 32
|
||||
+#define QSEECOM_HASH_SIZE 32
|
||||
+/*
|
||||
+ * struct qseecom_register_listener_req -
|
||||
+ * for register listener ioctl request
|
||||
+ * @listener_id - service id (shared between userspace and QSE)
|
||||
+ * @ifd_data_fd - ion handle
|
||||
+ * @virt_sb_base - shared buffer base in user space
|
||||
+ * @sb_size - shared buffer size
|
||||
+ */
|
||||
+struct qseecom_register_listener_req {
|
||||
+ uint32_t listener_id; /* in */
|
||||
+ int32_t ifd_data_fd; /* in */
|
||||
+ uint32_t virt_sb_base; /* in */
|
||||
+ uint32_t sb_size; /* in */
|
||||
+};
|
||||
+
|
||||
+/*
|
||||
+ * struct qseecom_send_cmd_req - for send command ioctl request
|
||||
+ * @cmd_req_len - command buffer length
|
||||
+ * @cmd_req_buf - command buffer
|
||||
+ * @resp_len - response buffer length
|
||||
+ * @resp_buf - response buffer
|
||||
+ */
|
||||
+struct qseecom_send_cmd_req {
|
||||
+ void *cmd_req_buf; /* in */
|
||||
+ unsigned int cmd_req_len; /* in */
|
||||
+ void *resp_buf; /* in/out */
|
||||
+ unsigned int resp_len; /* in/out */
|
||||
+};
|
||||
+
|
||||
+/*
|
||||
+ * struct qseecom_ion_fd_info - ion fd handle data information
|
||||
+ * @fd - ion handle to some memory allocated in user space
|
||||
+ * @cmd_buf_offset - command buffer offset
|
||||
+ */
|
||||
+struct qseecom_ion_fd_info {
|
||||
+ int32_t fd;
|
||||
+ uint32_t cmd_buf_offset;
|
||||
+};
|
||||
+/*
|
||||
+ * struct qseecom_send_modfd_cmd_req - for send command ioctl request
|
||||
+ * @cmd_req_len - command buffer length
|
||||
+ * @cmd_req_buf - command buffer
|
||||
+ * @resp_len - response buffer length
|
||||
+ * @resp_buf - response buffer
|
||||
+ * @ifd_data_fd - ion handle to memory allocated in user space
|
||||
+ * @cmd_buf_offset - command buffer offset
|
||||
+ */
|
||||
+struct qseecom_send_modfd_cmd_req {
|
||||
+ void *cmd_req_buf; /* in */
|
||||
+ unsigned int cmd_req_len; /* in */
|
||||
+ void *resp_buf; /* in/out */
|
||||
+ unsigned int resp_len; /* in/out */
|
||||
+ struct qseecom_ion_fd_info ifd_data[MAX_ION_FD];
|
||||
+};
|
||||
+
|
||||
+/*
|
||||
+ * struct qseecom_listener_send_resp_req - signal to continue the send_cmd req.
|
||||
+ * Used as a trigger from HLOS service to notify QSEECOM that it's done with its
|
||||
+ * operation and provide the response for QSEECOM can continue the incomplete
|
||||
+ * command execution
|
||||
+ * @resp_len - Length of the response
|
||||
+ * @resp_buf - Response buffer where the response of the cmd should go.
|
||||
+ */
|
||||
+struct qseecom_send_resp_req {
|
||||
+ void *resp_buf; /* in */
|
||||
+ unsigned int resp_len; /* in */
|
||||
+};
|
||||
+
|
||||
+/*
|
||||
+ * struct qseecom_load_img_data - for sending image length information and
|
||||
+ * ion file descriptor to the qseecom driver. ion file descriptor is used
|
||||
+ * for retrieving the ion file handle and in turn the physical address of
|
||||
+ * the image location.
|
||||
+ * @mdt_len - Length of the .mdt file in bytes.
|
||||
+ * @img_len - Length of the .mdt + .b00 +..+.bxx images files in bytes
|
||||
+ * @ion_fd - Ion file descriptor used when allocating memory.
|
||||
+ * @img_name - Name of the image.
|
||||
+*/
|
||||
+struct qseecom_load_img_req {
|
||||
+ uint32_t mdt_len; /* in */
|
||||
+ uint32_t img_len; /* in */
|
||||
+ int32_t ifd_data_fd; /* in */
|
||||
+ char img_name[MAX_APP_NAME_SIZE]; /* in */
|
||||
+ int app_id; /* out*/
|
||||
+};
|
||||
+
|
||||
+struct qseecom_set_sb_mem_param_req {
|
||||
+ int32_t ifd_data_fd; /* in */
|
||||
+ uint32_t virt_sb_base; /* in */
|
||||
+ uint32_t sb_len; /* in */
|
||||
+};
|
||||
+
|
||||
+/*
|
||||
+ * struct qseecom_qseos_version_req - get qseos version
|
||||
+ * @qseos_version - version number
|
||||
+ */
|
||||
+struct qseecom_qseos_version_req {
|
||||
+ unsigned int qseos_version; /* in */
|
||||
+};
|
||||
+
|
||||
+/*
|
||||
+ * struct qseecom_qseos_app_load_query - verify if app is loaded in qsee
|
||||
+ * @app_name[MAX_APP_NAME_SIZE]- name of the app.
|
||||
+ * @app_id - app id.
|
||||
+ */
|
||||
+struct qseecom_qseos_app_load_query {
|
||||
+ char app_name[MAX_APP_NAME_SIZE]; /* in */
|
||||
+ int app_id; /* out */
|
||||
+};
|
||||
+
|
||||
+struct qseecom_send_svc_cmd_req {
|
||||
+ uint32_t cmd_id;
|
||||
+ void *cmd_req_buf; /* in */
|
||||
+ unsigned int cmd_req_len; /* in */
|
||||
+ void *resp_buf; /* in/out */
|
||||
+ unsigned int resp_len; /* in/out */
|
||||
+};
|
||||
+
|
||||
+enum qseecom_key_management_usage_type {
|
||||
+ QSEOS_KM_USAGE_DISK_ENCRYPTION = 0x01,
|
||||
+ QSEOS_KM_USAGE_FILE_ENCRYPTION = 0x02,
|
||||
+ QSEOS_KM_USAGE_MAX
|
||||
+};
|
||||
+
|
||||
+struct qseecom_create_key_req {
|
||||
+ unsigned char hash32[QSEECOM_HASH_SIZE];
|
||||
+ enum qseecom_key_management_usage_type usage;
|
||||
+};
|
||||
+
|
||||
+struct qseecom_wipe_key_req {
|
||||
+ enum qseecom_key_management_usage_type usage;
|
||||
+ int wipe_key_flag;/* 1->remove key from storage(alone with clear key) */
|
||||
+ /* 0->do not remove from storage (clear key) */
|
||||
+};
|
||||
+
|
||||
+struct qseecom_update_key_userinfo_req {
|
||||
+ unsigned char current_hash32[QSEECOM_HASH_SIZE];
|
||||
+ unsigned char new_hash32[QSEECOM_HASH_SIZE];
|
||||
+ enum qseecom_key_management_usage_type usage;
|
||||
+};
|
||||
+
|
||||
+#define SHA256_DIGEST_LENGTH (256/8)
|
||||
+/*
|
||||
+ * struct qseecom_save_partition_hash_req
|
||||
+ * @partition_id - partition id.
|
||||
+ * @hash[SHA256_DIGEST_LENGTH] - sha256 digest.
|
||||
+ */
|
||||
+struct qseecom_save_partition_hash_req {
|
||||
+ int partition_id; /* in */
|
||||
+ char digest[SHA256_DIGEST_LENGTH]; /* in */
|
||||
+};
|
||||
+
|
||||
+/*
|
||||
+ * struct qseecom_is_es_activated_req
|
||||
+ * @is_activated - 1=true , 0=false
|
||||
+ */
|
||||
+struct qseecom_is_es_activated_req {
|
||||
+ int is_activated; /* out */
|
||||
+};
|
||||
+
|
||||
+
|
||||
+enum qseecom_bandwidth_request_mode {
|
||||
+ INACTIVE = 0,
|
||||
+ LOW,
|
||||
+ MEDIUM,
|
||||
+ HIGH,
|
||||
+};
|
||||
+
|
||||
+/*
|
||||
+ * struct qseecom_send_modfd_resp - for send command ioctl request
|
||||
+ * @req_len - command buffer length
|
||||
+ * @req_buf - command buffer
|
||||
+ * @ifd_data_fd - ion handle to memory allocated in user space
|
||||
+ * @cmd_buf_offset - command buffer offset
|
||||
+ */
|
||||
+struct qseecom_send_modfd_listener_resp {
|
||||
+ void *resp_buf_ptr; /* in */
|
||||
+ unsigned int resp_len; /* in */
|
||||
+ struct qseecom_ion_fd_info ifd_data[MAX_ION_FD]; /* in */
|
||||
+};
|
||||
+
|
||||
+#define QSEECOM_IOC_MAGIC 0x97
|
||||
+
|
||||
+
|
||||
+#define QSEECOM_IOCTL_REGISTER_LISTENER_REQ \
|
||||
+ _IOWR(QSEECOM_IOC_MAGIC, 1, struct qseecom_register_listener_req)
|
||||
+
|
||||
+#define QSEECOM_IOCTL_UNREGISTER_LISTENER_REQ \
|
||||
+ _IO(QSEECOM_IOC_MAGIC, 2)
|
||||
+
|
||||
+#define QSEECOM_IOCTL_SEND_CMD_REQ \
|
||||
+ _IOWR(QSEECOM_IOC_MAGIC, 3, struct qseecom_send_cmd_req)
|
||||
+
|
||||
+#define QSEECOM_IOCTL_SEND_MODFD_CMD_REQ \
|
||||
+ _IOWR(QSEECOM_IOC_MAGIC, 4, struct qseecom_send_modfd_cmd_req)
|
||||
+
|
||||
+#define QSEECOM_IOCTL_RECEIVE_REQ \
|
||||
+ _IO(QSEECOM_IOC_MAGIC, 5)
|
||||
+
|
||||
+#define QSEECOM_IOCTL_SEND_RESP_REQ \
|
||||
+ _IO(QSEECOM_IOC_MAGIC, 6)
|
||||
+
|
||||
+#define QSEECOM_IOCTL_LOAD_APP_REQ \
|
||||
+ _IOWR(QSEECOM_IOC_MAGIC, 7, struct qseecom_load_img_req)
|
||||
+
|
||||
+#define QSEECOM_IOCTL_SET_MEM_PARAM_REQ \
|
||||
+ _IOWR(QSEECOM_IOC_MAGIC, 8, struct qseecom_set_sb_mem_param_req)
|
||||
+
|
||||
+#define QSEECOM_IOCTL_UNLOAD_APP_REQ \
|
||||
+ _IO(QSEECOM_IOC_MAGIC, 9)
|
||||
+
|
||||
+#define QSEECOM_IOCTL_GET_QSEOS_VERSION_REQ \
|
||||
+ _IOWR(QSEECOM_IOC_MAGIC, 10, struct qseecom_qseos_version_req)
|
||||
+
|
||||
+#define QSEECOM_IOCTL_PERF_ENABLE_REQ \
|
||||
+ _IO(QSEECOM_IOC_MAGIC, 11)
|
||||
+
|
||||
+#define QSEECOM_IOCTL_PERF_DISABLE_REQ \
|
||||
+ _IO(QSEECOM_IOC_MAGIC, 12)
|
||||
+
|
||||
+#define QSEECOM_IOCTL_LOAD_EXTERNAL_ELF_REQ \
|
||||
+ _IOWR(QSEECOM_IOC_MAGIC, 13, struct qseecom_load_img_req)
|
||||
+
|
||||
+#define QSEECOM_IOCTL_UNLOAD_EXTERNAL_ELF_REQ \
|
||||
+ _IO(QSEECOM_IOC_MAGIC, 14)
|
||||
+
|
||||
+#define QSEECOM_IOCTL_APP_LOADED_QUERY_REQ \
|
||||
+ _IOWR(QSEECOM_IOC_MAGIC, 15, struct qseecom_qseos_app_load_query)
|
||||
+
|
||||
+#define QSEECOM_IOCTL_SEND_CMD_SERVICE_REQ \
|
||||
+ _IOWR(QSEECOM_IOC_MAGIC, 16, struct qseecom_send_svc_cmd_req)
|
||||
+
|
||||
+#define QSEECOM_IOCTL_CREATE_KEY_REQ \
|
||||
+ _IOWR(QSEECOM_IOC_MAGIC, 17, struct qseecom_create_key_req)
|
||||
+
|
||||
+#define QSEECOM_IOCTL_WIPE_KEY_REQ \
|
||||
+ _IOWR(QSEECOM_IOC_MAGIC, 18, struct qseecom_wipe_key_req)
|
||||
+
|
||||
+#define QSEECOM_IOCTL_SAVE_PARTITION_HASH_REQ \
|
||||
+ _IOWR(QSEECOM_IOC_MAGIC, 19, struct qseecom_save_partition_hash_req)
|
||||
+
|
||||
+#define QSEECOM_IOCTL_IS_ES_ACTIVATED_REQ \
|
||||
+ _IOWR(QSEECOM_IOC_MAGIC, 20, struct qseecom_is_es_activated_req)
|
||||
+
|
||||
+#define QSEECOM_IOCTL_SEND_MODFD_RESP \
|
||||
+ _IOWR(QSEECOM_IOC_MAGIC, 21, struct qseecom_send_modfd_listener_resp)
|
||||
+
|
||||
+#define QSEECOM_IOCTL_SET_BUS_SCALING_REQ \
|
||||
+ _IOWR(QSEECOM_IOC_MAGIC, 23, int)
|
||||
+
|
||||
+#define QSEECOM_IOCTL_UPDATE_KEY_USER_INFO_REQ \
|
||||
+ _IOWR(QSEECOM_IOC_MAGIC, 24, struct qseecom_update_key_userinfo_req)
|
||||
+
|
||||
+#endif /* __QSEECOM_H_ */
|
||||
--
|
||||
2.7.4
|
||||
|
24
patches/0001-Increase-system-partition-size-for-arm_ab.patch
Normal file
24
patches/0001-Increase-system-partition-size-for-arm_ab.patch
Normal file
@ -0,0 +1,24 @@
|
||||
From 037c36f36b8f71bd2001c30285bcfcd6523973b0 Mon Sep 17 00:00:00 2001
|
||||
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
|
||||
Date: Wed, 4 Sep 2019 01:37:30 +0000
|
||||
Subject: [PATCH] Increase system partition size for arm_ab
|
||||
|
||||
Change-Id: I3ac099dd64624ec27c5fb64ce3fa3a9e500402e5
|
||||
---
|
||||
phhgsi_arm_ab/BoardConfig.mk | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/phhgsi_arm_ab/BoardConfig.mk b/phhgsi_arm_ab/BoardConfig.mk
|
||||
index 18aaace..5726959 100644
|
||||
--- a/phhgsi_arm_ab/BoardConfig.mk
|
||||
+++ b/phhgsi_arm_ab/BoardConfig.mk
|
||||
@@ -2,5 +2,5 @@ include build/make/target/board/generic_arm_ab/BoardConfig.mk
|
||||
include device/phh/treble/board-base.mk
|
||||
|
||||
ifeq ($(BOARD_SYSTEMIMAGE_PARTITION_RESERVED_SIZE),)
|
||||
-BOARD_SYSTEMIMAGE_PARTITION_SIZE := 1073741824
|
||||
+BOARD_SYSTEMIMAGE_PARTITION_SIZE := 1313583104
|
||||
endif
|
||||
--
|
||||
2.17.1
|
||||
|
30
patches/0001-Keyguard-Show-shortcuts-by-default.patch
Normal file
30
patches/0001-Keyguard-Show-shortcuts-by-default.patch
Normal file
@ -0,0 +1,30 @@
|
||||
From 5629fd17b7498c753bc7194fdb6e05000a72a5a7 Mon Sep 17 00:00:00 2001
|
||||
From: AndyCGYan <GeForce8800Ultra@gmail.com>
|
||||
Date: Thu, 27 Dec 2018 16:38:19 +0800
|
||||
Subject: [PATCH] Keyguard: Show shortcuts by default
|
||||
|
||||
Change-Id: I5655e0be26cec61214735719dffcda810286cd41
|
||||
---
|
||||
packages/SystemUI/res/values/config.xml | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/packages/SystemUI/res/values/config.xml b/packages/SystemUI/res/values/config.xml
|
||||
index ce7f929..a61bce3 100644
|
||||
--- a/packages/SystemUI/res/values/config.xml
|
||||
+++ b/packages/SystemUI/res/values/config.xml
|
||||
@@ -74,10 +74,10 @@
|
||||
<integer translatable="false" name="config_search_panel_view_vibration_duration">20</integer>
|
||||
|
||||
<!-- Show mic or phone affordance on Keyguard -->
|
||||
- <bool name="config_keyguardShowLeftAffordance">false</bool>
|
||||
+ <bool name="config_keyguardShowLeftAffordance">true</bool>
|
||||
|
||||
<!-- Show camera affordance on Keyguard -->
|
||||
- <bool name="config_keyguardShowCameraAffordance">false</bool>
|
||||
+ <bool name="config_keyguardShowCameraAffordance">true</bool>
|
||||
|
||||
<!-- Whether we should use SRC drawing mode when drawing the scrim behind. If this flag is set,
|
||||
we change the canvas opacity so libhwui doesn't call glClear on our surface, and then we
|
||||
--
|
||||
2.7.4
|
||||
|
@ -0,0 +1,87 @@
|
||||
From 2ac5823e318b5cbf1418d9f1b45fae66711a621b Mon Sep 17 00:00:00 2001
|
||||
From: AndyCGYan <GeForce8800Ultra@gmail.com>
|
||||
Date: Sun, 13 Jan 2019 21:44:48 +0800
|
||||
Subject: [PATCH] LineageParts: Invert per-app stretch-to-fullscreen
|
||||
|
||||
Change-Id: Icb02c8dfd84882f736e37d6cd92c35e5eb288faa
|
||||
---
|
||||
res/values-zh-rCN/strings.xml | 4 ++--
|
||||
res/values/strings.xml | 4 ++--
|
||||
res/xml/long_screen_prefs.xml | 2 +-
|
||||
res/xml/parts_catalog.xml | 4 ++--
|
||||
src/org/lineageos/lineageparts/applications/LongScreenSettings.java | 2 +-
|
||||
5 files changed, 8 insertions(+), 8 deletions(-)
|
||||
|
||||
diff --git a/res/values-zh-rCN/strings.xml b/res/values-zh-rCN/strings.xml
|
||||
index 2938aa0..04848ad 100644
|
||||
--- a/res/values-zh-rCN/strings.xml
|
||||
+++ b/res/values-zh-rCN/strings.xml
|
||||
@@ -481,8 +481,8 @@
|
||||
<string name="expanded_desktop_style_hide_navigation">隐藏导航栏</string>
|
||||
<string name="expanded_desktop_style_hide_both">同时隐藏</string>
|
||||
<string name="expanded_desktop_nothing_to_show_text">关闭开关以自定义您每个应用的扩展桌面</string>
|
||||
- <string name="long_screen_settings_title">全屏应用</string>
|
||||
- <string name="long_screen_settings_summary">强制旧式应用程序使用全屏长宽比</string>
|
||||
+ <string name="inverse_long_screen_settings_title">禁用拉伸全屏</string>
|
||||
+ <string name="inverse_long_screen_settings_summary">对选定的应用禁用拉伸全屏</string>
|
||||
<string name="charging_sounds_settings_title">充电提示音</string>
|
||||
<string name="charging_sounds_enabled_title">启用</string>
|
||||
<string name="charging_sounds_enabled_summary">连接或断开电源时发出声音</string>
|
||||
diff --git a/res/values/strings.xml b/res/values/strings.xml
|
||||
index 684cbee..bc5fffe 100644
|
||||
--- a/res/values/strings.xml
|
||||
+++ b/res/values/strings.xml
|
||||
@@ -616,8 +616,8 @@
|
||||
<string name="expanded_desktop_nothing_to_show_text">Turn the switch off to customize your expanded desktop on a per-app basis</string>
|
||||
|
||||
<!-- Applications: Long screen -->
|
||||
- <string name="long_screen_settings_title">Full screen apps</string>
|
||||
- <string name="long_screen_settings_summary">Force legacy apps to use full screen aspect ratio</string>
|
||||
+ <string name="inverse_long_screen_settings_title">Disable stretch-to-fullscreen</string>
|
||||
+ <string name="inverse_long_screen_settings_summary">Prevent selected apps from utilizing stretch-to-fullscreen</string>
|
||||
|
||||
<!-- Sounds: Charging sounds -->
|
||||
<string name="charging_sounds_settings_title">Charging sounds</string>
|
||||
diff --git a/res/xml/long_screen_prefs.xml b/res/xml/long_screen_prefs.xml
|
||||
index ec947fa..20da90a 100644
|
||||
--- a/res/xml/long_screen_prefs.xml
|
||||
+++ b/res/xml/long_screen_prefs.xml
|
||||
@@ -18,6 +18,6 @@
|
||||
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:lineage="http://schemas.android.com/apk/res/org.lineageos.lineageparts"
|
||||
android:key="long_screen_settings"
|
||||
- android:title="@string/long_screen_settings_title">
|
||||
+ android:title="@string/inverse_long_screen_settings_title">
|
||||
|
||||
</PreferenceScreen>
|
||||
diff --git a/res/xml/parts_catalog.xml b/res/xml/parts_catalog.xml
|
||||
index 2ad4fdb..4bc2c5a 100644
|
||||
--- a/res/xml/parts_catalog.xml
|
||||
+++ b/res/xml/parts_catalog.xml
|
||||
@@ -102,8 +102,8 @@
|
||||
lineage:xmlRes="@xml/expanded_desktop_prefs" />
|
||||
|
||||
<part android:key="long_screen_settings"
|
||||
- android:title="@string/long_screen_settings_title"
|
||||
- android:summary="@string/long_screen_settings_summary"
|
||||
+ android:title="@string/inverse_long_screen_settings_title"
|
||||
+ android:summary="@string/inverse_long_screen_settings_summary"
|
||||
android:fragment="org.lineageos.lineageparts.applications.LongScreenSettings"
|
||||
lineage:xmlRes="@xml/long_screen_prefs" />
|
||||
|
||||
diff --git a/src/org/lineageos/lineageparts/applications/LongScreenSettings.java b/src/org/lineageos/lineageparts/applications/LongScreenSettings.java
|
||||
index 782e33e..3aa6320 100644
|
||||
--- a/src/org/lineageos/lineageparts/applications/LongScreenSettings.java
|
||||
+++ b/src/org/lineageos/lineageparts/applications/LongScreenSettings.java
|
||||
@@ -245,7 +245,7 @@ public class LongScreenSettings extends SettingsPreferenceFragment
|
||||
mApplicationsState.ensureIcon(entry);
|
||||
holder.icon.setImageDrawable(entry.icon);
|
||||
holder.state.setTag(entry);
|
||||
- holder.state.setChecked(mLongScreen.shouldForceLongScreen(entry.info.packageName));
|
||||
+ holder.state.setChecked(!(mLongScreen.shouldForceLongScreen(entry.info.packageName)));
|
||||
return holder.rootView;
|
||||
}
|
||||
|
||||
--
|
||||
2.7.4
|
||||
|
29
patches/0001-Remove-fsck-SELinux-labels.patch
Normal file
29
patches/0001-Remove-fsck-SELinux-labels.patch
Normal file
@ -0,0 +1,29 @@
|
||||
From d922de7e988db91e16f0d9c15b5589026e7bc11c Mon Sep 17 00:00:00 2001
|
||||
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
|
||||
Date: Wed, 23 Oct 2019 09:38:16 +0000
|
||||
Subject: [PATCH] Remove fsck SELinux labels
|
||||
|
||||
These are covered by LOS sepolicy
|
||||
|
||||
Change-Id: I7c63c9aed39afc07b8c80918053154113f848cd9
|
||||
---
|
||||
sepolicy/file_contexts | 3 ---
|
||||
1 file changed, 3 deletions(-)
|
||||
|
||||
diff --git a/sepolicy/file_contexts b/sepolicy/file_contexts
|
||||
index 1160738..a29bd32 100644
|
||||
--- a/sepolicy/file_contexts
|
||||
+++ b/sepolicy/file_contexts
|
||||
@@ -4,8 +4,5 @@
|
||||
/system/bin/rw-system.sh u:object_r:phhsu_exec:s0
|
||||
/system/bin/phh-on-boot.sh u:object_r:phhsu_exec:s0
|
||||
|
||||
-/system/bin/fsck\.exfat u:object_r:fsck_exec:s0
|
||||
-/system/bin/fsck\.ntfs u:object_r:fsck_exec:s0
|
||||
-
|
||||
/sec_storage(/.*)? u:object_r:teecd_data_file:s0
|
||||
/dev/dsm u:object_r:dmd_device:s0
|
||||
|
||||
--
|
||||
2.17.1
|
||||
|
226
patches/0001-Revert-Enable-dyanmic-image-size-for-GSI.patch
Normal file
226
patches/0001-Revert-Enable-dyanmic-image-size-for-GSI.patch
Normal file
@ -0,0 +1,226 @@
|
||||
From fb17ff0c8ac4a23c36cdde42797795f36a20bc58 Mon Sep 17 00:00:00 2001
|
||||
From: AndyCGYan <GeForce8800Ultra@gmail.com>
|
||||
Date: Mon, 15 Jul 2019 10:39:08 +0000
|
||||
Subject: [PATCH] Revert "Enable dyanmic image size for GSI"
|
||||
|
||||
This reverts commit b9acd8b4f49d710b4dae2c73ac8e919589f76d44.
|
||||
---
|
||||
target/board/BoardConfigGsiCommon.mk | 3 ---
|
||||
target/board/generic/BoardConfig.mk | 2 ++
|
||||
target/board/generic_arm64/BoardConfig.mk | 2 ++
|
||||
target/board/generic_arm_a/BoardConfig.mk | 3 +++
|
||||
target/board/generic_arm_ab/BoardConfig.mk | 3 +++
|
||||
target/board/generic_x86/BoardConfig.mk | 1 +
|
||||
target/board/generic_x86_64/BoardConfig.mk | 1 +
|
||||
target/board/treble_common.mk | 3 ---
|
||||
target/board/treble_common_32.mk | 4 ++++
|
||||
target/board/treble_common_64.mk | 3 +++
|
||||
target/product/aosp_arm.mk | 3 ---
|
||||
target/product/aosp_arm64.mk | 3 ---
|
||||
target/product/aosp_x86.mk | 3 ---
|
||||
target/product/aosp_x86_64.mk | 3 ---
|
||||
target/product/treble_common.mk | 3 ---
|
||||
15 files changed, 19 insertions(+), 21 deletions(-)
|
||||
|
||||
diff --git a/target/board/BoardConfigGsiCommon.mk b/target/board/BoardConfigGsiCommon.mk
|
||||
index bbc9a3639..97420e14b 100644
|
||||
--- a/target/board/BoardConfigGsiCommon.mk
|
||||
+++ b/target/board/BoardConfigGsiCommon.mk
|
||||
@@ -10,9 +10,6 @@ TARGET_USERIMAGES_USE_EXT4 := true
|
||||
# we explicit specify this need below (even though it's the current default).
|
||||
TARGET_USERIMAGES_SPARSE_EXT_DISABLED := false
|
||||
|
||||
-# Enable dyanmic system image size and reserved 64MB in it.
|
||||
-BOARD_SYSTEMIMAGE_PARTITION_RESERVED_SIZE := 67108864
|
||||
-
|
||||
# Android Verified Boot (AVB):
|
||||
# 1) Sets BOARD_AVB_ENABLE to sign the GSI image.
|
||||
# 2) Sets AVB_VBMETA_IMAGE_FLAGS_VERIFICATION_DISABLED (--flag 2) in
|
||||
diff --git a/target/board/generic/BoardConfig.mk b/target/board/generic/BoardConfig.mk
|
||||
index 738c03731..19d1b03c7 100644
|
||||
--- a/target/board/generic/BoardConfig.mk
|
||||
+++ b/target/board/generic/BoardConfig.mk
|
||||
@@ -48,6 +48,8 @@ TARGET_CPU_ABI2 := armeabi
|
||||
include build/make/target/board/BoardConfigEmuCommon.mk
|
||||
include build/make/target/board/BoardConfigGsiCommon.mk
|
||||
|
||||
+# Partition size is default 1.5GB (1536MB) for 64 bits projects
|
||||
+BOARD_SYSTEMIMAGE_PARTITION_SIZE := 1610612736
|
||||
BOARD_USERDATAIMAGE_PARTITION_SIZE := 576716800
|
||||
|
||||
# Wifi.
|
||||
diff --git a/target/board/generic_arm64/BoardConfig.mk b/target/board/generic_arm64/BoardConfig.mk
|
||||
index 13d5bd64a..d99e86f7c 100644
|
||||
--- a/target/board/generic_arm64/BoardConfig.mk
|
||||
+++ b/target/board/generic_arm64/BoardConfig.mk
|
||||
@@ -55,6 +55,8 @@ endif
|
||||
include build/make/target/board/BoardConfigEmuCommon.mk
|
||||
include build/make/target/board/BoardConfigGsiCommon.mk
|
||||
|
||||
+# Partition size is default 1.5GB (1536MB) for 64 bits projects
|
||||
+BOARD_SYSTEMIMAGE_PARTITION_SIZE := 1610612736
|
||||
BOARD_USERDATAIMAGE_PARTITION_SIZE := 576716800
|
||||
|
||||
# Emulator system image is going to be used as GSI and some vendor still hasn't
|
||||
diff --git a/target/board/generic_arm_a/BoardConfig.mk b/target/board/generic_arm_a/BoardConfig.mk
|
||||
index 57a5196a9..f0e1a3949 100644
|
||||
--- a/target/board/generic_arm_a/BoardConfig.mk
|
||||
+++ b/target/board/generic_arm_a/BoardConfig.mk
|
||||
@@ -16,6 +16,9 @@
|
||||
|
||||
include build/make/target/board/treble_common_32.mk
|
||||
|
||||
+# Overwrite the setting in treble_common_32.mk for non-A/B arm GSI
|
||||
+BOARD_SYSTEMIMAGE_PARTITION_SIZE := 943718400 # 900MB
|
||||
+
|
||||
TARGET_ARCH := arm
|
||||
TARGET_ARCH_VARIANT := armv7-a-neon
|
||||
TARGET_CPU_ABI := armeabi-v7a
|
||||
diff --git a/target/board/generic_arm_ab/BoardConfig.mk b/target/board/generic_arm_ab/BoardConfig.mk
|
||||
index 3d1484290..c1df8f1c2 100644
|
||||
--- a/target/board/generic_arm_ab/BoardConfig.mk
|
||||
+++ b/target/board/generic_arm_ab/BoardConfig.mk
|
||||
@@ -16,6 +16,9 @@
|
||||
|
||||
include build/make/target/board/treble_common_32.mk
|
||||
|
||||
+# Overwrite the setting in treble_common_32.mk for non-A/B arm GSI
|
||||
+BOARD_SYSTEMIMAGE_PARTITION_SIZE := 943718400 # 900MB
|
||||
+
|
||||
TARGET_ARCH := arm
|
||||
TARGET_ARCH_VARIANT := armv7-a-neon
|
||||
TARGET_CPU_ABI := armeabi-v7a
|
||||
diff --git a/target/board/generic_x86/BoardConfig.mk b/target/board/generic_x86/BoardConfig.mk
|
||||
index 650073e68..ae2e6414d 100644
|
||||
--- a/target/board/generic_x86/BoardConfig.mk
|
||||
+++ b/target/board/generic_x86/BoardConfig.mk
|
||||
@@ -23,6 +23,7 @@ TARGET_PRELINK_MODULE := false
|
||||
include build/make/target/board/BoardConfigEmuCommon.mk
|
||||
include build/make/target/board/BoardConfigGsiCommon.mk
|
||||
|
||||
+BOARD_SYSTEMIMAGE_PARTITION_SIZE := 2684354560
|
||||
# Resize to 4G to accomodate ASAN and CTS
|
||||
BOARD_USERDATAIMAGE_PARTITION_SIZE := 4294967296
|
||||
|
||||
diff --git a/target/board/generic_x86_64/BoardConfig.mk b/target/board/generic_x86_64/BoardConfig.mk
|
||||
index 142663044..7fc822d60 100755
|
||||
--- a/target/board/generic_x86_64/BoardConfig.mk
|
||||
+++ b/target/board/generic_x86_64/BoardConfig.mk
|
||||
@@ -27,6 +27,7 @@ TARGET_PRELINK_MODULE := false
|
||||
include build/make/target/board/BoardConfigEmuCommon.mk
|
||||
include build/make/target/board/BoardConfigGsiCommon.mk
|
||||
|
||||
+BOARD_SYSTEMIMAGE_PARTITION_SIZE := 2684354560 # 2.5 GB
|
||||
BOARD_USERDATAIMAGE_PARTITION_SIZE := 576716800
|
||||
|
||||
BOARD_SEPOLICY_DIRS += device/generic/goldfish/sepolicy/x86
|
||||
diff --git a/target/board/treble_common.mk b/target/board/treble_common.mk
|
||||
index b5c01a5a9..a6aba4a05 100644
|
||||
--- a/target/board/treble_common.mk
|
||||
+++ b/target/board/treble_common.mk
|
||||
@@ -35,9 +35,6 @@ TARGET_USERIMAGES_USE_EXT4 := true
|
||||
TARGET_USERIMAGES_USE_F2FS := true
|
||||
TARGET_USERIMAGES_SPARSE_EXT_DISABLED := false
|
||||
|
||||
-# Enable dyanmic system image size and reserved 64MB in it.
|
||||
-BOARD_SYSTEMIMAGE_PARTITION_RESERVED_SIZE := 67108864
|
||||
-
|
||||
# Generic AOSP image always requires separate vendor.img
|
||||
TARGET_COPY_OUT_VENDOR := vendor
|
||||
|
||||
diff --git a/target/board/treble_common_32.mk b/target/board/treble_common_32.mk
|
||||
index e8bad087b..d637b3d8c 100644
|
||||
--- a/target/board/treble_common_32.mk
|
||||
+++ b/target/board/treble_common_32.mk
|
||||
@@ -18,3 +18,7 @@ include build/make/target/board/treble_common.mk
|
||||
|
||||
# Legacy GSI keeps 32 bits binder for 32 bits CPU Arch
|
||||
TARGET_USES_64_BIT_BINDER := false
|
||||
+
|
||||
+# Partition size defaults to 1 GB (1024 MB) for 32-bit products. It can
|
||||
+# be overwritten in specific BoardConfig.mk, if so desired.
|
||||
+BOARD_SYSTEMIMAGE_PARTITION_SIZE := 1073741824
|
||||
diff --git a/target/board/treble_common_64.mk b/target/board/treble_common_64.mk
|
||||
index 8980dfde1..0a6eb172d 100644
|
||||
--- a/target/board/treble_common_64.mk
|
||||
+++ b/target/board/treble_common_64.mk
|
||||
@@ -18,3 +18,6 @@ include build/make/target/board/treble_common.mk
|
||||
|
||||
# Enable 64-bits binder
|
||||
TARGET_USES_64_BIT_BINDER := true
|
||||
+
|
||||
+# Partition size is default 1.5GB (1536MB) for 64 bits projects
|
||||
+BOARD_SYSTEMIMAGE_PARTITION_SIZE := 1610612736
|
||||
diff --git a/target/product/aosp_arm.mk b/target/product/aosp_arm.mk
|
||||
index f0752a8e2..bc62e60b0 100644
|
||||
--- a/target/product/aosp_arm.mk
|
||||
+++ b/target/product/aosp_arm.mk
|
||||
@@ -25,9 +25,6 @@
|
||||
|
||||
include $(SRC_TARGET_DIR)/product/full.mk
|
||||
|
||||
-# Enable dynamic partition size
|
||||
-PRODUCT_USE_DYNAMIC_PARTITION_SIZE := true
|
||||
-
|
||||
# Enable A/B update
|
||||
AB_OTA_UPDATER := true
|
||||
AB_OTA_PARTITIONS := system
|
||||
diff --git a/target/product/aosp_arm64.mk b/target/product/aosp_arm64.mk
|
||||
index ab231110c..9c1a16416 100644
|
||||
--- a/target/product/aosp_arm64.mk
|
||||
+++ b/target/product/aosp_arm64.mk
|
||||
@@ -41,9 +41,6 @@ $(call inherit-product, $(SRC_TARGET_DIR)/product/core_64_bit.mk)
|
||||
$(call inherit-product, $(SRC_TARGET_DIR)/product/aosp_base_telephony.mk)
|
||||
$(call inherit-product, $(SRC_TARGET_DIR)/board/generic_arm64/device.mk)
|
||||
|
||||
-# Enable dynamic partition size
|
||||
-PRODUCT_USE_DYNAMIC_PARTITION_SIZE := true
|
||||
-
|
||||
# Enable A/B update
|
||||
AB_OTA_UPDATER := true
|
||||
AB_OTA_PARTITIONS := system
|
||||
diff --git a/target/product/aosp_x86.mk b/target/product/aosp_x86.mk
|
||||
index 9d1b14bc9..8ca88dce0 100644
|
||||
--- a/target/product/aosp_x86.mk
|
||||
+++ b/target/product/aosp_x86.mk
|
||||
@@ -25,9 +25,6 @@
|
||||
|
||||
include $(SRC_TARGET_DIR)/product/full_x86.mk
|
||||
|
||||
-# Enable dynamic partition size
|
||||
-PRODUCT_USE_DYNAMIC_PARTITION_SIZE := true
|
||||
-
|
||||
# Enable A/B update
|
||||
AB_OTA_UPDATER := true
|
||||
AB_OTA_PARTITIONS := system
|
||||
diff --git a/target/product/aosp_x86_64.mk b/target/product/aosp_x86_64.mk
|
||||
index b38c4173e..0948149b8 100644
|
||||
--- a/target/product/aosp_x86_64.mk
|
||||
+++ b/target/product/aosp_x86_64.mk
|
||||
@@ -41,9 +41,6 @@ $(call inherit-product, $(SRC_TARGET_DIR)/product/core_64_bit.mk)
|
||||
$(call inherit-product, $(SRC_TARGET_DIR)/product/aosp_base_telephony.mk)
|
||||
$(call inherit-product, $(SRC_TARGET_DIR)/board/generic_x86_64/device.mk)
|
||||
|
||||
-# Enable dynamic partition size
|
||||
-PRODUCT_USE_DYNAMIC_PARTITION_SIZE := true
|
||||
-
|
||||
# Enable A/B update
|
||||
AB_OTA_UPDATER := true
|
||||
AB_OTA_PARTITIONS := system
|
||||
diff --git a/target/product/treble_common.mk b/target/product/treble_common.mk
|
||||
index e76e89646..aa2aa7f72 100644
|
||||
--- a/target/product/treble_common.mk
|
||||
+++ b/target/product/treble_common.mk
|
||||
@@ -23,9 +23,6 @@
|
||||
$(call inherit-product, $(SRC_TARGET_DIR)/product/aosp_base.mk)
|
||||
$(call inherit-product, $(SRC_TARGET_DIR)/product/telephony.mk)
|
||||
|
||||
-# Enable dynamic partition size
|
||||
-PRODUCT_USE_DYNAMIC_PARTITION_SIZE := true
|
||||
-
|
||||
# Split selinux policy
|
||||
PRODUCT_FULL_TREBLE_OVERRIDE := true
|
||||
|
||||
--
|
||||
2.17.1
|
||||
|
@ -0,0 +1,42 @@
|
||||
From 2fa3046c27e558919397c0a2c60598a1296331c5 Mon Sep 17 00:00:00 2001
|
||||
From: AndyCGYan <GeForce8800Ultra@gmail.com>
|
||||
Date: Sun, 3 Mar 2019 14:07:33 +0800
|
||||
Subject: [PATCH] build_soong: Disable generated_kernel_headers
|
||||
|
||||
Change-Id: I630857cec208f1830e776bf5031d7bb9bc4435d0
|
||||
---
|
||||
build/soong/Android.bp | 21 ---------------------
|
||||
1 file changed, 21 deletions(-)
|
||||
|
||||
diff --git a/build/soong/Android.bp b/build/soong/Android.bp
|
||||
index 382b68e..f9108a8 100644
|
||||
--- a/build/soong/Android.bp
|
||||
+++ b/build/soong/Android.bp
|
||||
@@ -23,24 +23,3 @@ bootstrap_go_package {
|
||||
],
|
||||
pluginFor: ["soong_build"],
|
||||
}
|
||||
-
|
||||
-lineage_generator {
|
||||
- name: "generated_kernel_includes",
|
||||
-
|
||||
- // The headers make command
|
||||
- cmd: "make $(KERNEL_MAKE_FLAGS) -C $(TARGET_KERNEL_SOURCE) O=$(genDir) ARCH=$(KERNEL_ARCH) $(KERNEL_CROSS_COMPILE) headers_install",
|
||||
-
|
||||
- // Directories that can be imported by a cc_* module generated_headers property
|
||||
- export_include_dirs: ["usr/include", "usr/techpack/audio/include"],
|
||||
-
|
||||
- // Sources for dependency tracking
|
||||
- dep_root: "$(TARGET_KERNEL_SOURCE)",
|
||||
- dep_files: [ "Makefile", "include/**/*", "arch/$(KERNEL_ARCH)/include/**/*", "techpack/audio/include/**/*"],
|
||||
-}
|
||||
-
|
||||
-cc_library_headers {
|
||||
- name: "generated_kernel_headers",
|
||||
- generated_headers: ["generated_kernel_includes"],
|
||||
- export_generated_headers: ["generated_kernel_includes"],
|
||||
- vendor_available: true,
|
||||
-}
|
||||
--
|
||||
2.7.4
|
||||
|
106
patches/0001-core-Add-support-for-MicroG.patch
Normal file
106
patches/0001-core-Add-support-for-MicroG.patch
Normal file
@ -0,0 +1,106 @@
|
||||
From 51c79844320ca6dcb8d9c145709f0dc394f3146a Mon Sep 17 00:00:00 2001
|
||||
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
|
||||
Date: Fri, 17 May 2019 03:36:35 +0000
|
||||
Subject: [PATCH] core: Add support for MicroG
|
||||
|
||||
-fake signatures, enabled per app by dynamic permission
|
||||
|
||||
Change-Id: I0e5a0aca9fccbd4372de8ce3af76c53cc7c35f28
|
||||
---
|
||||
core/res/AndroidManifest.xml | 7 ++++++
|
||||
core/res/res/values/config.xml | 2 ++
|
||||
core/res/res/values/strings.xml | 5 ++++
|
||||
.../server/pm/PackageManagerService.java | 23 +++++++++++++++++--
|
||||
4 files changed, 35 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/core/res/AndroidManifest.xml b/core/res/AndroidManifest.xml
|
||||
index 34d26f0da90..08f95ec1fdf 100644
|
||||
--- a/core/res/AndroidManifest.xml
|
||||
+++ b/core/res/AndroidManifest.xml
|
||||
@@ -2357,6 +2357,13 @@
|
||||
android:description="@string/permdesc_getPackageSize"
|
||||
android:protectionLevel="normal" />
|
||||
|
||||
+ <!-- @hide Allows an application to change the package signature as
|
||||
+ seen by applications -->
|
||||
+ <permission android:name="android.permission.FAKE_PACKAGE_SIGNATURE"
|
||||
+ android:protectionLevel="dangerous"
|
||||
+ android:label="@string/permlab_fakePackageSignature"
|
||||
+ android:description="@string/permdesc_fakePackageSignature" />
|
||||
+
|
||||
<!-- @deprecated No longer useful, see
|
||||
{@link android.content.pm.PackageManager#addPackageToPreferred}
|
||||
for details. -->
|
||||
diff --git a/core/res/res/values/config.xml b/core/res/res/values/config.xml
|
||||
index f7b06f98512..703a63ff5f1 100644
|
||||
--- a/core/res/res/values/config.xml
|
||||
+++ b/core/res/res/values/config.xml
|
||||
@@ -1716,6 +1716,8 @@
|
||||
<string-array name="config_locationProviderPackageNames" translatable="false">
|
||||
<!-- The standard AOSP fused location provider -->
|
||||
<item>com.android.location.fused</item>
|
||||
+ <!-- The (faked) microg fused location provider (a free reimplementation) -->
|
||||
+ <item>com.google.android.gms</item>
|
||||
</string-array>
|
||||
|
||||
<!-- This string array can be overriden to enable test location providers initially. -->
|
||||
diff --git a/core/res/res/values/strings.xml b/core/res/res/values/strings.xml
|
||||
index f6600462ea7..bd96a09684f 100644
|
||||
--- a/core/res/res/values/strings.xml
|
||||
+++ b/core/res/res/values/strings.xml
|
||||
@@ -785,6 +785,11 @@
|
||||
|
||||
<!-- Permissions -->
|
||||
|
||||
+ <!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. -->
|
||||
+ <string name="permlab_fakePackageSignature">Spoof package signature</string>
|
||||
+ <!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. -->
|
||||
+ <string name="permdesc_fakePackageSignature">Allows the app to pretend to be a different app. Malicious applications might be able to use this to access private application data. Legitimate uses include an emulator pretending to be what it emulates. Grant this permission with caution only!</string>
|
||||
+
|
||||
<!-- Title of an application permission, listed so the user can choose whether they want to allow the application to do this. -->
|
||||
<string name="permlab_statusBar">disable or modify status bar</string>
|
||||
<!-- Description of an application permission, listed so the user can choose whether they want to allow the application to do this. -->
|
||||
diff --git a/services/core/java/com/android/server/pm/PackageManagerService.java b/services/core/java/com/android/server/pm/PackageManagerService.java
|
||||
index 9b50a1545a5..f12509e36e7 100644
|
||||
--- a/services/core/java/com/android/server/pm/PackageManagerService.java
|
||||
+++ b/services/core/java/com/android/server/pm/PackageManagerService.java
|
||||
@@ -4001,8 +4001,9 @@ public class PackageManagerService extends IPackageManager.Stub
|
||||
final Set<String> permissions = ArrayUtils.isEmpty(p.requestedPermissions)
|
||||
? Collections.<String>emptySet() : permissionsState.getPermissions(userId);
|
||||
|
||||
- PackageInfo packageInfo = PackageParser.generatePackageInfo(p, gids, flags,
|
||||
- ps.firstInstallTime, ps.lastUpdateTime, permissions, state, userId);
|
||||
+ PackageInfo packageInfo = mayFakeSignature(p, PackageParser.generatePackageInfo(p, gids, flags,
|
||||
+ ps.firstInstallTime, ps.lastUpdateTime, permissions, state, userId),
|
||||
+ permissions);
|
||||
|
||||
if (packageInfo == null) {
|
||||
return null;
|
||||
@@ -4038,6 +4039,24 @@ public class PackageManagerService extends IPackageManager.Stub
|
||||
}
|
||||
}
|
||||
|
||||
+ private PackageInfo mayFakeSignature(PackageParser.Package p, PackageInfo pi,
|
||||
+ Set<String> permissions) {
|
||||
+ try {
|
||||
+ if (permissions.contains("android.permission.FAKE_PACKAGE_SIGNATURE")
|
||||
+ && p.applicationInfo.targetSdkVersion > Build.VERSION_CODES.LOLLIPOP_MR1
|
||||
+ && p.mAppMetaData != null) {
|
||||
+ String sig = p.mAppMetaData.getString("fake-signature");
|
||||
+ if (sig != null) {
|
||||
+ pi.signatures = new Signature[] {new Signature(sig)};
|
||||
+ }
|
||||
+ }
|
||||
+ } catch (Throwable t) {
|
||||
+ // We should never die because of any failures, this is system code!
|
||||
+ Log.w("PackageManagerService.FAKE_PACKAGE_SIGNATURE", t);
|
||||
+ }
|
||||
+ return pi;
|
||||
+ }
|
||||
+
|
||||
@Override
|
||||
public void checkPackageStartable(String packageName, int userId) {
|
||||
final int callingUid = Binder.getCallingUid();
|
||||
--
|
||||
2.17.1
|
||||
|
26
patches/0001-sdk-Invert-per-app-stretch-to-fullscreen.patch
Normal file
26
patches/0001-sdk-Invert-per-app-stretch-to-fullscreen.patch
Normal file
@ -0,0 +1,26 @@
|
||||
From 95ef97f5aa82c15e47f9313eca4899d89dba5dd0 Mon Sep 17 00:00:00 2001
|
||||
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
|
||||
Date: Wed, 4 Jul 2018 17:59:14 +0800
|
||||
Subject: [PATCH] sdk: Invert per-app stretch-to-fullscreen implementation
|
||||
|
||||
Change-Id: Idf7dab4e1e0c79953fa672f33ec65fecffb37c83
|
||||
---
|
||||
sdk/src/java/org/lineageos/internal/applications/LongScreen.java | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/sdk/src/java/org/lineageos/internal/applications/LongScreen.java b/sdk/src/java/org/lineageos/internal/applications/LongScreen.java
|
||||
index 7fe0d68..26ea349 100644
|
||||
--- a/sdk/src/java/org/lineageos/internal/applications/LongScreen.java
|
||||
+++ b/sdk/src/java/org/lineageos/internal/applications/LongScreen.java
|
||||
@@ -57,7 +57,7 @@ public class LongScreen {
|
||||
}
|
||||
|
||||
public boolean shouldForceLongScreen(String packageName) {
|
||||
- return isSupported() && mApps.contains(packageName);
|
||||
+ return isSupported() && !(mApps.contains(packageName));
|
||||
}
|
||||
|
||||
public Set<String> getApps() {
|
||||
--
|
||||
2.7.4
|
||||
|
117
patches/0001-treble-Add-overlay-lineage.patch
Normal file
117
patches/0001-treble-Add-overlay-lineage.patch
Normal file
@ -0,0 +1,117 @@
|
||||
From b35194fdd618f1ae2682c6d285d92a4ae7d421cc Mon Sep 17 00:00:00 2001
|
||||
From: AndyCGYan <GeForce8800Ultra@gmail.com>
|
||||
Date: Mon, 15 Jul 2019 10:43:52 +0000
|
||||
Subject: [PATCH] treble: Add overlay-lineage
|
||||
|
||||
Change-Id: I9d313b1488d98acc7cf37d23820946ee99745426
|
||||
---
|
||||
base.mk | 4 +-
|
||||
.../lineage/res/res/values/config.xml | 81 +++++++++++++++++++
|
||||
2 files changed, 84 insertions(+), 1 deletion(-)
|
||||
create mode 100644 overlay-lineage/lineage-sdk/lineage/res/res/values/config.xml
|
||||
|
||||
diff --git a/base.mk b/base.mk
|
||||
index 8636247..f18e1c7 100644
|
||||
--- a/base.mk
|
||||
+++ b/base.mk
|
||||
@@ -11,7 +11,9 @@ PRODUCT_COPY_FILES += \
|
||||
device/sample/etc/apns-full-conf.xml:system/etc/apns-conf.xml
|
||||
|
||||
BOARD_PLAT_PRIVATE_SEPOLICY_DIR += device/phh/treble/sepolicy
|
||||
-DEVICE_PACKAGE_OVERLAYS += device/phh/treble/overlay
|
||||
+DEVICE_PACKAGE_OVERLAYS += \
|
||||
+ device/phh/treble/overlay \
|
||||
+ device/phh/treble/overlay-lineage
|
||||
|
||||
$(call inherit-product, vendor/hardware_overlay/overlay.mk)
|
||||
$(call inherit-product, $(SRC_TARGET_DIR)/product/core_64_bit.mk)
|
||||
diff --git a/overlay-lineage/lineage-sdk/lineage/res/res/values/config.xml b/overlay-lineage/lineage-sdk/lineage/res/res/values/config.xml
|
||||
new file mode 100644
|
||||
index 0000000..8df673a
|
||||
--- /dev/null
|
||||
+++ b/overlay-lineage/lineage-sdk/lineage/res/res/values/config.xml
|
||||
@@ -0,0 +1,81 @@
|
||||
+<?xml version="1.0" encoding="utf-8"?>
|
||||
+<!--
|
||||
+ Copyright (C) 2015-2016 The CyanogenMod Project
|
||||
+ 2017-2018 The LineageOS Project
|
||||
+
|
||||
+ Licensed under the Apache License, Version 2.0 (the "License");
|
||||
+ you may not use this file except in compliance with the License.
|
||||
+ You may obtain a copy of the License at
|
||||
+ http://www.apache.org/licenses/LICENSE-2.0
|
||||
+ Unless required by applicable law or agreed to in writing, software
|
||||
+ distributed under the License is distributed on an "AS IS" BASIS,
|
||||
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
+ See the License for the specific language governing permissions and
|
||||
+ limitations under the License.
|
||||
+-->
|
||||
+<resources>
|
||||
+ <!-- Whether device has screen with higher aspect ratio -->
|
||||
+ <bool name="config_haveHigherAspectRatioScreen">true</bool>
|
||||
+
|
||||
+ <!-- All the capabilities of the LEDs on this device, stored as a bit field.
|
||||
+ This integer should equal the sum of the corresponding value for each
|
||||
+ of the following capabilities present:
|
||||
+ // Device has a color adjustable battery light.
|
||||
+ LIGHTS_RGB_NOTIFICATION_LED = 1
|
||||
+ // Device has a color adjustable notification light.
|
||||
+ LIGHTS_RGB_BATTERY_LED = 2
|
||||
+ LIGHTS_MULTIPLE_NOTIFICATION_LED = 4 (deprecated)
|
||||
+ // The notification light has adjustable pulsing capability.
|
||||
+ LIGHTS_PULSATING_LED = 8
|
||||
+ // Device has a multi-segment battery light that is able to
|
||||
+ // use the light brightness value to determine how many
|
||||
+ // segments to show (in order to represent battery level).
|
||||
+ LIGHTS_SEGMENTED_BATTERY_LED = 16
|
||||
+ // The notification light supports HAL adjustable brightness
|
||||
+ // via the alpha channel.
|
||||
+ // Note: if a device notification light supports LIGHTS_RGB_NOTIFICATION_LED
|
||||
+ // then HAL support is not necessary for brightness control. In this case,
|
||||
+ // brightness support will be provided by lineage-sdk through the scaling of
|
||||
+ // RGB color values.
|
||||
+ LIGHTS_ADJUSTABLE_NOTIFICATION_LED_BRIGHTNESS = 32
|
||||
+ // Device has a battery light.
|
||||
+ LIGHTS_BATTERY_LED = 64
|
||||
+ // The battery light supports HAL adjustable brightness via
|
||||
+ // the alpha channel.
|
||||
+ // Note: if a device battery light supports LIGHTS_RGB_BATTERY_LED then HAL
|
||||
+ // support is not necessary for brightness control. In this case,
|
||||
+ // brightness support will be provided by lineage-sdk through the scaling of
|
||||
+ // RGB color values.
|
||||
+ LIGHTS_ADJUSTABLE_BATTERY_LED_BRIGHTNESS = 128
|
||||
+ For example, a device with notification and battery lights that supports
|
||||
+ pulsating and RGB control would set this config to 75. -->
|
||||
+ <integer name="config_deviceLightCapabilities">255</integer>
|
||||
+
|
||||
+ <!-- Hardware keys present on the device, stored as a bit field.
|
||||
+ This integer should equal the sum of the corresponding value for each
|
||||
+ of the following keys present:
|
||||
+ 1 - Home
|
||||
+ 2 - Back
|
||||
+ 4 - Menu
|
||||
+ 8 - Assistant (search)
|
||||
+ 16 - App switch
|
||||
+ 32 - Camera
|
||||
+ 64 - Volume rocker
|
||||
+ For example, a device with Home, Back and Menu keys would set this
|
||||
+ config to 7. -->
|
||||
+ <integer name="config_deviceHardwareKeys">127</integer>
|
||||
+
|
||||
+ <!-- Hardware keys present on the device with the ability to wake, stored as a bit field.
|
||||
+ This integer should equal the sum of the corresponding value for each
|
||||
+ of the following keys present:
|
||||
+ 1 - Home
|
||||
+ 2 - Back
|
||||
+ 4 - Menu
|
||||
+ 8 - Assistant (search)
|
||||
+ 16 - App switch
|
||||
+ 32 - Camera
|
||||
+ 64 - Volume rocker
|
||||
+ For example, a device with Home, Back and Menu keys would set this
|
||||
+ config to 7. -->
|
||||
+ <integer name="config_deviceHardwareWakeKeys">127</integer>
|
||||
+</resources>
|
||||
--
|
||||
2.17.1
|
||||
|
@ -0,0 +1,25 @@
|
||||
From 5180f2417b628e6f1611ce24fd54f711fbdbb991 Mon Sep 17 00:00:00 2001
|
||||
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
|
||||
Date: Tue, 10 Sep 2019 02:42:36 +0000
|
||||
Subject: [PATCH] treble: Don't specify config_wallpaperCropperPackage
|
||||
|
||||
Change-Id: I72b59def304779e4bd9a399c01cf1180d15bf444
|
||||
---
|
||||
overlay/frameworks/base/core/res/res/values/config.xml | 1 -
|
||||
1 file changed, 1 deletion(-)
|
||||
|
||||
diff --git a/overlay/frameworks/base/core/res/res/values/config.xml b/overlay/frameworks/base/core/res/res/values/config.xml
|
||||
index 0cdc065..627c91e 100644
|
||||
--- a/overlay/frameworks/base/core/res/res/values/config.xml
|
||||
+++ b/overlay/frameworks/base/core/res/res/values/config.xml
|
||||
@@ -22,7 +22,6 @@
|
||||
<string name="config_icon_mask" translatable="false">"M50 0C77.6 0 100 22.4 100 50C100 77.6 77.6 100 50 100C22.4 100 0 77.6 0 50C0 22.4 22.4 0 50 0Z"</string>
|
||||
<bool name="config_useRoundIcon">true</bool>
|
||||
|
||||
- <string name="config_wallpaperCropperPackage">com.android.wallpaperpicker</string>
|
||||
<bool name="config_unplugTurnsOnScreen">true</bool>
|
||||
<!-- Currently disabled for Android Go
|
||||
<integer name="config_multiuserMaximumUsers">4</integer>
|
||||
--
|
||||
2.17.1
|
||||
|
@ -0,0 +1,30 @@
|
||||
From 3290062c72effc07ccfd62e2b8ef67f897869b8d Mon Sep 17 00:00:00 2001
|
||||
From: Andy CrossGate Yan <GeForce8800Ultra@gmail.com>
|
||||
Date: Thu, 5 Sep 2019 02:08:22 +0000
|
||||
Subject: [PATCH] vendor_lineage: Log privapp-permissions whitelist violations
|
||||
instead
|
||||
|
||||
Change-Id: I49dba61f332253e291a65e79ca70d9a07d45bb07
|
||||
---
|
||||
config/common.mk | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/config/common.mk b/config/common.mk
|
||||
index 837e11ef..8dfc372b 100644
|
||||
--- a/config/common.mk
|
||||
+++ b/config/common.mk
|
||||
@@ -89,9 +89,9 @@ PRODUCT_COPY_FILES += \
|
||||
vendor/lineage/config/permissions/privapp-permissions-lineage.xml:system/etc/permissions/privapp-permissions-lineage.xml \
|
||||
vendor/lineage/config/permissions/privapp-permissions-cm-legacy.xml:system/etc/permissions/privapp-permissions-cm-legacy.xml
|
||||
|
||||
-# Enforce privapp-permissions whitelist
|
||||
+# Log privapp-permissions whitelist violations
|
||||
PRODUCT_SYSTEM_DEFAULT_PROPERTIES += \
|
||||
- ro.control_privapp_permissions=enforce
|
||||
+ ro.control_privapp_permissions=log
|
||||
|
||||
# Hidden API whitelist
|
||||
PRODUCT_COPY_FILES += \
|
||||
--
|
||||
2.17.1
|
||||
|
Loading…
x
Reference in New Issue
Block a user