diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml new file mode 100644 index 00000000..06223c11 --- /dev/null +++ b/.github/workflows/main.yml @@ -0,0 +1,114 @@ +name: Build Wrapper + +on: [push, workflow_dispatch] + +jobs: + build: + name: Build Wrapper + runs-on: ubuntu-latest + steps: + # Checkout + - name: Checkout repository + uses: actions/checkout@v4 + + - name: Free Disk Space (Ubuntu) + uses: jlumbroso/free-disk-space@main + with: + # this might remove tools that are actually needed, + # if set to "true" but frees about 6 GB + tool-cache: true + # all of these default to true, but feel free to set to + # "false" if necessary for your workflow + android: false + dotnet: true + haskell: true + large-packages: true + docker-images: true + swap-storage: true + + # Cache + - uses: actions/cache@v3 + with: + path: Library + key: Library-${{ hashFiles('Assets/**', 'Packages/**', 'ProjectSettings/**') }} + restore-keys: | + Library- + + # Build + - name: Build APK + uses: game-ci/unity-builder@v4 + env: + UNITY_LICENSE: ${{ secrets.UNITY_LICENSE }} + UNITY_EMAIL: ${{ secrets.UNITY_EMAIL }} + UNITY_PASSWORD: ${{ secrets.UNITY_PASSWORD }} + with: + targetPlatform: Android + customImage: 'unityci/editor:ubuntu-2021.3.37f1-android-3.1.0' + androidExportType: androidPackage + androidTargetSdkVersion: 32 + androidKeystoreName: user.keystore + androidKeystoreBase64: ${{ secrets.ANDROID_KEYSTORE_BASE64 }} + androidKeystorePass: ${{ secrets.ANDROID_KEYSTORE_PASS }} + androidKeyaliasName: ${{ secrets.ANDROID_KEYALIAS_NAME }} + androidKeyaliasPass: ${{ secrets.ANDROID_KEYALIAS_PASS }} + + # Export + - name: Export Project + uses: game-ci/unity-builder@v4 + env: + UNITY_LICENSE: ${{ secrets.UNITY_LICENSE }} + UNITY_EMAIL: ${{ secrets.UNITY_EMAIL }} + UNITY_PASSWORD: ${{ secrets.UNITY_PASSWORD }} + with: + targetPlatform: Android + customImage: 'unityci/editor:ubuntu-2021.3.37f1-android-3.1.0' + buildsPath: exported + allowDirtyBuild: true + androidExportType: androidStudioProject + androidTargetSdkVersion: 32 + androidKeystoreName: qcxr.keystore + androidKeystoreBase64: ${{ secrets.ANDROID_KEYSTORE_BASE64 }} + androidKeystorePass: ${{ secrets.ANDROID_KEYSTORE_PASS }} + androidKeyaliasName: ${{ secrets.ANDROID_KEYALIAS_NAME }} + androidKeyaliasPass: ${{ secrets.ANDROID_KEYALIAS_PASS }} + + # Upload exported Android Studio project + - uses: actions/upload-artifact@v4 + with: + name: Exported + path: exported + update: + name: Update IL2CPP repo + runs-on: ubuntu-latest + needs: build + steps: + - name: Checkout repository + uses: actions/checkout@v4 + with: + repository: QuestCraftPlusPlus/Wrapper-IL2CPP + token: ${{ secrets.PERSONAL_TOKEN }} + - name: Grab IL2CPP changes + uses: actions/download-artifact@v4 + with: + name: Exported + - name: Copy Changes + run: | + cp -rf $GITHUB_WORKSPACE/Android/Android/unityLibrary/src/main/assets unityLibrary/src/main/assets + cp -rf $GITHUB_WORKSPACE/Android/Android/unityLibrary/src/main/jniLibs unityLibrary/src/main/jniLibs + cp -rf $GITHUB_WORKSPACE/Android/Android/unityLibrary/src/main/Il2CppOutputProject unityLibrary/src/main/Il2CppOutputProject + cp -rf $GITHUB_WORKSPACE/Android/Android/unityLibrary/src/main/jniStaticLibs unityLibrary/src/main/jniStaticLibs + cp -rf $GITHUB_WORKSPACE/Android/Android/unityLibrary/src/main/res unityLibrary/src/main/res + cp -rf $GITHUB_WORKSPACE/Android/Android/unityLibrary/src/main/resources unityLibrary/src/main/resources + cp -rf $GITHUB_WORKSPACE/Android/Android/launcher/src/main/res launcher/src/main/res + cp -f $GITHUB_WORKSPACE/Android/Android/unityLibrary/src/main/AndroidManifest.xml unityLibrary/src/main/AndroidManifest.xml + cp -f $GITHUB_WORKSPACE/Android/Android/launcher/src/main/AndroidManifest.xml launcher/src/main/AndroidManifest.xml + - name: Commit files + run: | + git config --local user.email "41898282+github-actions[bot]@users.noreply.github.com" + git config --local user.name "github-actions[bot]" + git commit -a -m "Auto-update" + - name: Push changes + uses: ad-m/github-push-action@master + with: + repository: QuestCraftPlusPlus/Wrapper-IL2CPP + github_token: ${{ secrets.PERSONAL_TOKEN }} diff --git a/Packages/manifest.json b/Packages/manifest.json index 99e35dff..ab4ce69a 100644 --- a/Packages/manifest.json +++ b/Packages/manifest.json @@ -1,5 +1,6 @@ { "dependencies": { + "com.netpyoung.webp": "https://github.com/netpyoung/unity.webp.git?path=unity_project/Assets/unity.webp#0.3.9", "com.unity.2d.sprite": "1.0.0", "com.unity.collab-proxy": "2.3.1", "com.unity.feature.development": "1.0.1", @@ -9,15 +10,14 @@ "com.unity.test-framework": "1.1.33", "com.unity.textmeshpro": "3.0.6", "com.unity.timeline": "1.6.5", - "com.unity.toolchain.macos-arm64-linux-x86_64": "2.0.0", - "com.unity.toolchain.win-x86_64-linux-x86_64": "2.0.6", "com.unity.ugui": "1.0.0", - "com.unity.visualscripting": "1.9.2", + "com.unity.visualscripting": "1.9.4", "com.unity.xr.core-utils": "2.3.0", "com.unity.xr.interaction.toolkit": "2.5.2", "com.unity.xr.management": "4.4.1", "com.unity.xr.openxr": "1.10.0", "com.unity.xr.openxr.picoxr": "file:LocalPackages/PICO Unity OpenXR Integration SDK_120", + "org.nuget.system.runtime.compilerservices.unsafe": "6.0.0", "com.unity.modules.ai": "1.0.0", "com.unity.modules.androidjni": "1.0.0", "com.unity.modules.animation": "1.0.0", @@ -48,9 +48,7 @@ "com.unity.modules.video": "1.0.0", "com.unity.modules.vr": "1.0.0", "com.unity.modules.wind": "1.0.0", - "com.unity.modules.xr": "1.0.0", - "com.netpyoung.webp": "https://github.com/netpyoung/unity.webp.git?path=unity_project/Assets/unity.webp#0.3.9", - "org.nuget.system.runtime.compilerservices.unsafe": "6.0.0" + "com.unity.modules.xr": "1.0.0" }, "scopedRegistries": [ { @@ -61,4 +59,4 @@ ] } ] -} \ No newline at end of file +} diff --git a/Packages/packages-lock.json b/Packages/packages-lock.json index 1a002275..c306b1a4 100644 --- a/Packages/packages-lock.json +++ b/Packages/packages-lock.json @@ -103,22 +103,6 @@ "dependencies": {}, "url": "https://packages.unity.com" }, - "com.unity.sysroot": { - "version": "2.0.7", - "depth": 1, - "source": "registry", - "dependencies": {}, - "url": "https://packages.unity.com" - }, - "com.unity.sysroot.linux-x86_64": { - "version": "2.0.6", - "depth": 1, - "source": "registry", - "dependencies": { - "com.unity.sysroot": "2.0.7" - }, - "url": "https://packages.unity.com" - }, "com.unity.test-framework": { "version": "1.1.33", "depth": 0, @@ -161,26 +145,6 @@ }, "url": "https://packages.unity.com" }, - "com.unity.toolchain.macos-arm64-linux-x86_64": { - "version": "2.0.0", - "depth": 0, - "source": "registry", - "dependencies": { - "com.unity.sysroot": "2.0.7", - "com.unity.sysroot.linux-x86_64": "2.0.6" - }, - "url": "https://packages.unity.com" - }, - "com.unity.toolchain.win-x86_64-linux-x86_64": { - "version": "2.0.6", - "depth": 0, - "source": "registry", - "dependencies": { - "com.unity.sysroot": "2.0.7", - "com.unity.sysroot.linux-x86_64": "2.0.6" - }, - "url": "https://packages.unity.com" - }, "com.unity.ugui": { "version": "1.0.0", "depth": 0, @@ -191,7 +155,7 @@ } }, "com.unity.visualscripting": { - "version": "1.9.2", + "version": "1.9.4", "depth": 0, "source": "registry", "dependencies": {