name: Build Kernels permissions: contents: write actions: write on: workflow_dispatch: inputs: use_make: description: 'Build with MAKE?' required: true type: boolean default: true release_type: description: "Choose Release Type" required: true type: choice options: - Actions - Release default: Release jobs: build-a12-5-10: uses: ./.github/workflows/kernel-a12-5-10.yml secrets: inherit with: use_make: ${{ inputs.use_make }} build-a13-5-10: uses: ./.github/workflows/kernel-a13-5-10.yml secrets: inherit with: use_make: ${{ inputs.use_make }} build-a13-5-15: uses: ./.github/workflows/kernel-a13-5-15.yml secrets: inherit with: use_make: ${{ inputs.use_make }} build-a14-5-15: uses: ./.github/workflows/kernel-a14-5-15.yml secrets: inherit with: use_make: ${{ inputs.use_make }} build-a14-6-1: uses: ./.github/workflows/kernel-a14-6-1.yml secrets: inherit with: use_make: ${{ inputs.use_make }} build-a15-6-6: uses: ./.github/workflows/kernel-a15-6-6.yml secrets: inherit with: use_make: ${{ inputs.use_make }} release: runs-on: ubuntu-latest if: ${{ inputs.release_type == 'Release' }} needs: - build-a12-5-10 - build-a13-5-10 - build-a13-5-15 - build-a14-5-15 - build-a14-6-1 - build-a15-6-6 env: GITHUB_TOKEN: ${{ secrets.MY_GITHUB_TOKEN }} RELEASE_NAME: "GKI Kernels With WKSU & SUSFS v1.5.9" RELEASE_BODY: steps: - name: Maximize Build Space uses: AdityaGarg8/remove-unwanted-software@v5 with: # remove-dotnet: 'true' # Frees ~2 GB # remove-android: 'true' # Frees ~9 GB # remove-haskell: 'true' # Frees ~5.2 GB # remove-codeql: 'true' # Frees ~5.4 GB # remove-docker-images: 'true' # Frees ~3.2 GB # remove-large-packages: 'true' # Frees ~3.1 GB remove-swapfile: 'true' # Frees ~4 GB # remove-cached-tools: 'false' # Avoid unless confirmed safe verbose: 'true' # Enable detailed logging - name: Checkout code uses: actions/checkout@v4 - name: Get commit hashes and generate commit URLs run: | GITLAB_OWNER="simonpunk" GITLAB_REPO="susfs4ksu" declare -A BRANCH_MAP=( ["gki_android12_5_10"]="gki-android12-5.10" ["gki_android13_5_10"]="gki-android13-5.10" ["gki_android13_5_15"]="gki-android13-5.15" ["gki_android14_5_15"]="gki-android14-5.15" ["gki_android14_6_1"]="gki-android14-6.1" ["gki_android15_6_6"]="gki-android15-6.6" ) for var_name in "${!BRANCH_MAP[@]}"; do branch_name="${BRANCH_MAP[$var_name]}" COMMIT_HASH=$(git ls-remote https://gitlab.com/$GITLAB_OWNER/$GITLAB_REPO.git refs/heads/$branch_name | awk '{ print $1 }') if [[ -n "$COMMIT_HASH" ]]; then COMMIT_URL="https://gitlab.com/$GITLAB_OWNER/$GITLAB_REPO/-/commit/$COMMIT_HASH" echo "$branch_name Commit: $COMMIT_HASH" echo "$branch_name Commit URL: $COMMIT_URL" echo "COMMIT_HASH_${var_name}=$COMMIT_HASH" >> "$GITHUB_ENV" echo "COMMIT_URL_${var_name}=$COMMIT_URL" >> "$GITHUB_ENV" fi done - name: Get KernelSU variant refs and links run: | # Get WKSU latest commit from wild branch WKSU_REF=$(git ls-remote "https://github.com/WildKernels/Wild_KSU.git" refs/heads/wild | awk '{print $1}') WKSU_URL="https://github.com/WildKernels/Wild_KSU/commit/$WKSU_REF" echo "WKSU_REF=$WKSU_REF" >> $GITHUB_ENV echo "WKSU_URL=$WKSU_URL" >> $GITHUB_ENV - name: Generate and Create New Tag run: | LATEST_TAG=$(gh api repos/${{ github.repository }}/tags --jq '.[0].name') if [ -z "$LATEST_TAG" ]; then LATEST_TAG="v1.5.9-r0" fi NEW_TAG=$(echo "$LATEST_TAG" | awk -F'-r' '{suffix=$2; if (!suffix) suffix=0; suffix++; printf "%s-r%d", $1, suffix}') echo "New tag: $NEW_TAG" echo "NEW_TAG=${NEW_TAG}" >> $GITHUB_ENV git tag $NEW_TAG git push origin $NEW_TAG - name: Download Artifacts uses: actions/download-artifact@v4 with: path: ./downloaded-artifacts - name: Set release body run: | cat << 'EOF' > release_body.md **IMPORTANT DISCLAIMER** This software is provided for testing and educational purposes only. Use at your own risk. The developers are not responsible for any damage, data loss, or issues that may occur. Please ensure you have proper backups before installation. Features: -> Wild KSU -> Multi Manager Support for WKSU Manager & KernelSU-Next Manager (Only Install One) -> SUSFS āļž v1.5.9 -> Scope-Minimized Manual hooks v1.4 -> Magic Mount Support -> Simple Maphide for LineageOS Detections -> Futile Maphide for jit-zygote-cache Detections -> Ptrace Patch Support for Older Kernels (<5.16) -> IPSet Support for Advanced Network Filtering -> Wireguard Support -> BBR v1 Support Notes: -> SUS SU Mode 2 will show as disabled or not compatble due to non-kprobe hooks and is not needed anymore! -> Official Kernel Flasher is broken with latest susfs, try https://github.com/fatalcoder524/KernelFlasher/ Module: -> https://github.com/sidex15/ksu_module_susfs Managers: -> WKSU: https://t.me/Wild_Kernels/26618 -> Next: https://github.com/KernelSU-Next/KernelSU-Next Commit Hashes (at the time of release): -> WKSU: [${{ env.WKSU_REF }}](${{ env.WKSU_URL }}) -> SUSFS4KSU: -> gki-android12-5.10: [${{ env.COMMIT_HASH_gki_android12_5_10 }}](${{ env.COMMIT_URL_gki_android12_5_10 }}) -> gki-android13-5.10: [${{ env.COMMIT_HASH_gki_android13_5_10 }}](${{ env.COMMIT_URL_gki_android13_5_10 }}) -> gki-android13-5.15: [${{ env.COMMIT_HASH_gki_android13_5_15 }}](${{ env.COMMIT_URL_gki_android13_5_15 }}) -> gki-android14-5.15: [${{ env.COMMIT_HASH_gki_android14_5_15 }}](${{ env.COMMIT_URL_gki_android14_5_15 }}) -> gki-android14-6.1: [${{ env.COMMIT_HASH_gki_android14_6_1 }}](${{ env.COMMIT_URL_gki_android14_6_1 }}) -> gki-android15-6.6: [${{ env.COMMIT_HASH_gki_android15_6_6 }}](${{ env.COMMIT_URL_gki_android15_6_6 }}) EOF - name: Create GitHub Release uses: softprops/action-gh-release@v2 with: tag_name: ${{ env.NEW_TAG }} prerelease: false files: "" name: ${{ env.RELEASE_NAME }} body_path: release_body.md - name: Upload Release Assets run: | for file in ./downloaded-artifacts/*/*; do if [ -d "$file" ]; then continue fi echo "Uploading $file..." gh release upload ${{ env.NEW_TAG }} "$file" done - name: Display Files Uploaded run: | echo "GitHub release created with the following files:" ls ./downloaded-artifacts/**/* - name: Send Telegram Notification run: | curl -X POST "https://api.telegram.org/bot${{ secrets.TELEGRAM_BOT_TOKEN }}/sendMessage" \ -F chat_id="${{ secrets.TELEGRAM_CHAT_ID }}" \ -F message_thread_id="${{ secrets.TELEGRAM_TOPIC_ID_GKI }}" \ -F text=" đŸŒŊ *New Kernel Release Uploaded* đŸ“Ļ *Repository:* [${{ github.repository }}](https://github.com/${{ github.repository }}) âœī¸ *Commit:* [${{ github.sha }}](https://github.com/${{ github.repository }}/commit/${{ github.sha }}) [🔗 View GitHub Release](https://github.com/${{ github.repository }}/releases/tag/${{ env.NEW_TAG }})" \ -F parse_mode="Markdown"