mirror of
https://github.com/okhsunrog/vpnhide.git
synced 2026-04-29 07:03:24 +00:00
Unified repository for the complete Android VPN-hiding stack: - zygisk/ — Rust Zygisk module (inline libc hooks via shadowhook) - lsposed/ — Kotlin LSPosed module (Java API + system_server hooks) - kmod/ — C kernel module (kretprobe hooks, invisible to anti-tamper) CI workflows use path filters to build only the changed component.
79 lines
1.8 KiB
YAML
79 lines
1.8 KiB
YAML
name: LSPosed
|
|
|
|
on:
|
|
push:
|
|
paths:
|
|
- 'lsposed/**'
|
|
- '.github/workflows/lsposed.yml'
|
|
pull_request:
|
|
paths:
|
|
- 'lsposed/**'
|
|
- '.github/workflows/lsposed.yml'
|
|
workflow_dispatch:
|
|
|
|
permissions:
|
|
contents: write
|
|
|
|
jobs:
|
|
build:
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
|
|
- name: Set up JDK 17
|
|
uses: actions/setup-java@v4
|
|
with:
|
|
distribution: temurin
|
|
java-version: '17'
|
|
|
|
- name: Set up Gradle
|
|
uses: gradle/actions/setup-gradle@v4
|
|
|
|
- name: Build debug APK
|
|
run: cd lsposed && ./gradlew --no-daemon assembleDebug
|
|
|
|
- name: Rename artifact
|
|
id: rename
|
|
run: |
|
|
if [[ "${GITHUB_REF}" == refs/tags/* ]]; then
|
|
tag="${GITHUB_REF##*/}"
|
|
else
|
|
tag="$(git rev-parse --short HEAD)"
|
|
fi
|
|
out="vpnhide-lsposed-${tag}.apk"
|
|
cp lsposed/app/build/outputs/apk/debug/app-debug.apk "$out"
|
|
echo "name=$out" >> "$GITHUB_OUTPUT"
|
|
|
|
- name: Upload artifact
|
|
uses: actions/upload-artifact@v4
|
|
with:
|
|
name: vpnhide-lsposed
|
|
path: ${{ steps.rename.outputs.name }}
|
|
if-no-files-found: error
|
|
|
|
release:
|
|
needs: build
|
|
if: startsWith(github.ref, 'refs/tags/v')
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Download artifact
|
|
uses: actions/download-artifact@v4
|
|
with:
|
|
name: vpnhide-lsposed
|
|
path: dist/
|
|
|
|
- name: Generate sha256
|
|
run: |
|
|
cd dist
|
|
for f in *.apk; do sha256sum "$f" > "${f}.sha256"; done
|
|
|
|
- name: Upload release assets
|
|
uses: softprops/action-gh-release@v2
|
|
with:
|
|
tag_name: ${{ github.ref_name }}
|
|
files: |
|
|
dist/*.apk
|
|
dist/*.sha256
|
|
env:
|
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|