diff --git a/.github/workflows/magisk.yml b/.github/workflows/magisk.yml index 581d401f4e..5630656189 100644 --- a/.github/workflows/magisk.yml +++ b/.github/workflows/magisk.yml @@ -86,8 +86,8 @@ jobs: - name: Dependencies run: | pip3 install beautifulsoup4 lxml - sudo apt-get update && sudo apt-get install setools lzip qemu-utils wine winetricks - wget -qO- "$GITHUB_SERVER_URL/$GITHUB_REPOSITORY/archive/$GITHUB_REF.tar.gz" | sudo tar --wildcards -zxvf- -C ~ --strip-component=2 '*/wine/*' + 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/*' '*/linker/*' winetricks msxml6 - name: Download WSA shell: python @@ -296,6 +296,10 @@ jobs: 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 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 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 @@ -397,6 +401,10 @@ jobs: 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 {} \; 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 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 diff --git a/linker/libc.so b/linker/libc.so new file mode 100644 index 0000000000..748c48ca07 Binary files /dev/null and b/linker/libc.so differ diff --git a/linker/libdl.so b/linker/libdl.so new file mode 100644 index 0000000000..8b24897c51 Binary files /dev/null and b/linker/libdl.so differ diff --git a/linker/libm.so b/linker/libm.so new file mode 100644 index 0000000000..7bf99e88d0 Binary files /dev/null and b/linker/libm.so differ diff --git a/linker/linker64 b/linker/linker64 new file mode 100755 index 0000000000..894beae3d6 Binary files /dev/null and b/linker/linker64 differ