Use Android linker for magiskpolicy

Fix #267
This commit is contained in:
LoveSy 2022-03-19 08:47:02 +08:00
parent a72b00ff4e
commit 85d98c8648
5 changed files with 10 additions and 2 deletions

View File

@ -86,8 +86,8 @@ jobs:
- name: Dependencies - name: Dependencies
run: | run: |
pip3 install beautifulsoup4 lxml pip3 install beautifulsoup4 lxml
sudo apt-get update && sudo apt-get install setools lzip qemu-utils wine winetricks sudo apt-get update && sudo apt-get install setools lzip qemu-utils wine winetricks patchelf
wget -qO- "$GITHUB_SERVER_URL/$GITHUB_REPOSITORY/archive/$GITHUB_REF.tar.gz" | sudo tar --wildcards -zxvf- -C ~ --strip-component=2 '*/wine/*' wget -qO- "$GITHUB_SERVER_URL/$GITHUB_REPOSITORY/archive/$GITHUB_REF.tar.gz" | sudo tar --wildcards -zxvf- -C ~ --strip-component=2 '*/wine/*' '*/linker/*'
winetricks msxml6 winetricks msxml6
- name: Download WSA - name: Download WSA
shell: python shell: python
@ -296,6 +296,10 @@ jobs:
sudo find system/sbin -type f -exec chmod 0755 {} \; sudo find system/sbin -type f -exec chmod 0755 {} \;
sudo find system/sbin -type f -exec chown root:root {} \; sudo find system/sbin -type f -exec chown root:root {} \;
sudo find system/sbin -type f -exec chcon --reference system/product {} \; sudo find system/sbin -type f -exec chcon --reference system/product {} \;
sudo patchelf --replace-needed libc.so "${HOME}/libc.so" ./magiskpolicy
sudo patchelf --replace-needed libm.so "${HOME}/libm.so" ./magiskpolicy
sudo patchelf --replace-needed libdl.so "${HOME}/libdl.so" ./magiskpolicy
sudo patchelf --set-interpreter "${HOME}/linker64" ./magiskpolicy
chmod +x ./magiskpolicy chmod +x ./magiskpolicy
echo '/dev/wsa-magisk(/.*)? u:object_r:magisk_file:s0' | sudo tee -a system/vendor/etc/selinux/vendor_file_contexts echo '/dev/wsa-magisk(/.*)? u:object_r:magisk_file:s0' | sudo tee -a system/vendor/etc/selinux/vendor_file_contexts
echo '/data/adb/magisk(/.*)? u:object_r:magisk_file:s0' | sudo tee -a system/vendor/etc/selinux/vendor_file_contexts echo '/data/adb/magisk(/.*)? u:object_r:magisk_file:s0' | sudo tee -a system/vendor/etc/selinux/vendor_file_contexts
@ -397,6 +401,10 @@ jobs:
sudo find system/system/{app,framework,priv-app} -type f -exec chcon --reference=system/system/framework/ext.jar {} \; sudo find system/system/{app,framework,priv-app} -type f -exec chcon --reference=system/system/framework/ext.jar {} \;
ls gapps/etc/ | xargs -n 1 -I dir sudo find system/system/etc/dir -type f -exec chcon --reference=system/system/etc/permissions {} \; ls gapps/etc/ | xargs -n 1 -I dir sudo find system/system/etc/dir -type f -exec chcon --reference=system/system/etc/permissions {} \;
sudo find system/product/{app,etc,overlay,priv-app} -type f -exec chcon --reference=system/product/etc/permissions/privapp-permissions-venezia.xml {} \; sudo find system/product/{app,etc,overlay,priv-app} -type f -exec chcon --reference=system/product/etc/permissions/privapp-permissions-venezia.xml {} \;
sudo patchelf --replace-needed libc.so "${HOME}/libc.so" ./magiskpolicy
sudo patchelf --replace-needed libm.so "${HOME}/libm.so" ./magiskpolicy
sudo patchelf --replace-needed libdl.so "${HOME}/libdl.so" ./magiskpolicy
sudo patchelf --set-interpreter "${HOME}/linker64" ./magiskpolicy
chmod +x ./magiskpolicy chmod +x ./magiskpolicy
sudo ./magiskpolicy --load system/vendor/etc/selinux/precompiled_sepolicy --save system/vendor/etc/selinux/precompiled_sepolicy "allow gmscore_app gmscore_app vsock_socket { create connect write read }" "allow gmscore_app device_config_runtime_native_boot_prop file read" "allow gmscore_app system_server_tmpfs dir search" "allow gmscore_app system_server_tmpfs file open" sudo ./magiskpolicy --load system/vendor/etc/selinux/precompiled_sepolicy --save system/vendor/etc/selinux/precompiled_sepolicy "allow gmscore_app gmscore_app vsock_socket { create connect write read }" "allow gmscore_app device_config_runtime_native_boot_prop file read" "allow gmscore_app system_server_tmpfs dir search" "allow gmscore_app system_server_tmpfs file open"
- name: Fix GApps prop - name: Fix GApps prop

BIN
linker/libc.so Normal file

Binary file not shown.

BIN
linker/libdl.so Normal file

Binary file not shown.

BIN
linker/libm.so Normal file

Binary file not shown.

BIN
linker/linker64 Executable file

Binary file not shown.