name: Setup Wild KSU description: Download and configure Wild KSU with version tracking inputs: ksu_commit: description: "KSU Commit" required: true type: string runs: using: composite steps: - name: Download Wild KSU shell: bash working-directory: ${{ github.workspace }}/kernel run: | # Clone the repository curl -LSs "https://raw.githubusercontent.com/KernelSU-Next/KernelSU-Next/dev/kernel/setup.sh" | bash -s dev cd KernelSU-Next/kernel COMMITS_COUNT=$(/usr/bin/git rev-list --count HEAD) BASE_VERSION=30000 KSU_VERSION=$(expr $COMMITS_COUNT "+" $BASE_VERSION) sed -i "s/^KSU_VERSION_FALLBACK := 1$/KSU_VERSION_FALLBACK := ${KSU_VERSION}/" Kbuild KSU_GIT_TAG="$(git describe --tags --abbrev=0 2>/dev/null || echo "v0.0.1")" sed -i "s/^KSU_VERSION_TAG_FALLBACK := v0.0.1$/KSU_VERSION_TAG_FALLBACK := ${KSU_GIT_TAG}/" Kbuild - name: Enable KernelSU Config shell: bash working-directory: ${{ github.workspace }}/kernel run: | cat >> "${{ github.workspace }}/wild_gki.fragment" << 'EOF' # KernelSU Configuration CONFIG_KSU=y EOF - name: Extract KSU Version Info id: ksu-version shell: bash working-directory: ${{ github.workspace }}/kernel/KernelSU-Next run: | # Extract and export KSU version info KSU_GIT_VERSION=$(git rev-list --count HEAD 2>/dev/null) KSU_GIT_TAG=$(git describe --tags --abbrev=0 2>/dev/null) KSU_COMMIT=$(git rev-parse --short HEAD 2>/dev/null) KSU_VERSION=$((30000 + KSU_GIT_VERSION)) echo "KSU_GIT_TAG=$KSU_GIT_TAG" >> $GITHUB_ENV echo "KSU_VERSION=$KSU_VERSION" >> $GITHUB_ENV echo "KSU_COMMIT=$KSU_COMMIT" >> $GITHUB_ENV