action.yml 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. name: Setup Wild KSU
  2. description: Download and configure Wild KSU with version tracking
  3. inputs:
  4. ksu_commit:
  5. description: "KSU Commit"
  6. required: true
  7. type: string
  8. runs:
  9. using: composite
  10. steps:
  11. - name: Download Wild KSU
  12. shell: bash
  13. working-directory: ${{ github.workspace }}/kernel
  14. run: |
  15. # Clone the repository
  16. curl -LSs "https://raw.githubusercontent.com/KernelSU-Next/KernelSU-Next/dev/kernel/setup.sh" | bash -s dev
  17. cd KernelSU-Next/kernel
  18. COMMITS_COUNT=$(/usr/bin/git rev-list --count HEAD)
  19. BASE_VERSION=30000
  20. KSU_VERSION=$(expr $COMMITS_COUNT "+" $BASE_VERSION)
  21. sed -i "s/^KSU_VERSION_FALLBACK := 1$/KSU_VERSION_FALLBACK := ${KSU_VERSION}/" Kbuild
  22. KSU_GIT_TAG="$(git describe --tags --abbrev=0 2>/dev/null || echo "v0.0.1")"
  23. sed -i "s/^KSU_VERSION_TAG_FALLBACK := v0.0.1$/KSU_VERSION_TAG_FALLBACK := ${KSU_GIT_TAG}/" Kbuild
  24. - name: Enable KernelSU Config
  25. shell: bash
  26. working-directory: ${{ github.workspace }}/kernel
  27. run: |
  28. cat >> "${{ github.workspace }}/wild_gki.fragment" << 'EOF'
  29. # KernelSU Configuration
  30. CONFIG_KSU=y
  31. EOF
  32. - name: Extract KSU Version Info
  33. id: ksu-version
  34. shell: bash
  35. working-directory: ${{ github.workspace }}/kernel/KernelSU-Next
  36. run: |
  37. # Extract and export KSU version info
  38. KSU_GIT_VERSION=$(git rev-list --count HEAD 2>/dev/null)
  39. KSU_GIT_TAG=$(git describe --tags --abbrev=0 2>/dev/null)
  40. KSU_COMMIT=$(git rev-parse --short HEAD 2>/dev/null)
  41. KSU_VERSION=$((30000 + KSU_GIT_VERSION))
  42. echo "KSU_GIT_TAG=$KSU_GIT_TAG" >> $GITHUB_ENV
  43. echo "KSU_VERSION=$KSU_VERSION" >> $GITHUB_ENV
  44. echo "KSU_COMMIT=$KSU_COMMIT" >> $GITHUB_ENV