You've already forked KernelSU-Next
mirror of
https://github.com/KernelSU-Next/KernelSU-Next.git
synced 2025-08-27 23:46:34 +00:00
Compare commits
5 Commits
l10n_next
...
dependabot
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
49a0cbfb9a | ||
|
|
1de68a8ed2 | ||
|
|
e0c461322b | ||
|
|
edb99a2c1a | ||
|
|
eaab98b7ec |
2
.github/workflows/avd-kernel.yml
vendored
2
.github/workflows/avd-kernel.yml
vendored
@@ -49,7 +49,7 @@ jobs:
|
||||
remove-haskell: 'true'
|
||||
remove-codeql: 'true'
|
||||
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/checkout@v5
|
||||
with:
|
||||
path: KernelSU-Next
|
||||
fetch-depth: 0
|
||||
|
||||
4
.github/workflows/build-kernel-a12.yml
vendored
4
.github/workflows/build-kernel-a12.yml
vendored
@@ -51,9 +51,9 @@ jobs:
|
||||
RUN_URL: ${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}
|
||||
steps:
|
||||
- name: Download artifacts
|
||||
uses: actions/download-artifact@v4
|
||||
uses: actions/download-artifact@v5
|
||||
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/checkout@v5
|
||||
with:
|
||||
path: KernelSU-Next
|
||||
fetch-depth: 0
|
||||
|
||||
4
.github/workflows/build-kernel-a13.yml
vendored
4
.github/workflows/build-kernel-a13.yml
vendored
@@ -85,9 +85,9 @@ jobs:
|
||||
RUN_URL: ${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}
|
||||
steps:
|
||||
- name: Download artifacts
|
||||
uses: actions/download-artifact@v4
|
||||
uses: actions/download-artifact@v5
|
||||
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/checkout@v5
|
||||
with:
|
||||
path: KernelSU-Next
|
||||
fetch-depth: 0
|
||||
|
||||
4
.github/workflows/build-kernel-a14.yml
vendored
4
.github/workflows/build-kernel-a14.yml
vendored
@@ -106,9 +106,9 @@ jobs:
|
||||
RUN_URL: ${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}
|
||||
steps:
|
||||
- name: Download artifacts
|
||||
uses: actions/download-artifact@v4
|
||||
uses: actions/download-artifact@v5
|
||||
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/checkout@v5
|
||||
with:
|
||||
path: KernelSU-Next
|
||||
fetch-depth: 0
|
||||
|
||||
4
.github/workflows/build-kernel-a15.yml
vendored
4
.github/workflows/build-kernel-a15.yml
vendored
@@ -76,9 +76,9 @@ jobs:
|
||||
RUN_URL: ${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}
|
||||
steps:
|
||||
- name: Download artifacts
|
||||
uses: actions/download-artifact@v4
|
||||
uses: actions/download-artifact@v5
|
||||
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/checkout@v5
|
||||
with:
|
||||
path: KernelSU-Next
|
||||
fetch-depth: 0
|
||||
|
||||
2
.github/workflows/build-kernel-arcvm.yml
vendored
2
.github/workflows/build-kernel-arcvm.yml
vendored
@@ -66,7 +66,7 @@ jobs:
|
||||
sudo ln -s --force /usr/bin/clang++-$LLVM_VERSION /usr/bin/clang++
|
||||
|
||||
- name: Checkout KernelSU-Next
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@v5
|
||||
with:
|
||||
path: KernelSU-Next
|
||||
fetch-depth: 0
|
||||
|
||||
197
.github/workflows/build-manager-ci.yml
vendored
197
.github/workflows/build-manager-ci.yml
vendored
@@ -19,12 +19,48 @@ on:
|
||||
workflow_dispatch:
|
||||
|
||||
jobs:
|
||||
check-cache:
|
||||
runs-on: ubuntu-latest
|
||||
outputs:
|
||||
cache-hit: ${{ steps.cache-artifacts.outputs.cache-hit }}
|
||||
cache-key: ${{ steps.generate-cache-key.outputs.cache-key }}
|
||||
steps:
|
||||
- name: Checkout Repository
|
||||
uses: actions/checkout@v5
|
||||
with:
|
||||
fetch-depth: 0
|
||||
|
||||
- name: Generate cache key from source files
|
||||
id: generate-cache-key
|
||||
run: |
|
||||
# Calculate hash of all files except manager directory
|
||||
HASH=$(find . -type f \
|
||||
-not -path "./manager/*" \
|
||||
-not -path "./.git/*" \
|
||||
-not -path "./.github/workflows/build-manager-ci.yml" \
|
||||
-exec sha256sum {} \; | sort | sha256sum | cut -d' ' -f1)
|
||||
echo "cache-key=artifacts-$HASH" >> $GITHUB_OUTPUT
|
||||
echo "Generated cache key: artifacts-$HASH"
|
||||
|
||||
- name: Check for cached artifacts
|
||||
id: cache-artifacts
|
||||
uses: actions/cache@v4
|
||||
with:
|
||||
path: |
|
||||
cached-artifacts/susfsd
|
||||
cached-artifacts/ksud_overlayfs
|
||||
cached-artifacts/ksud_magic
|
||||
key: ${{ steps.generate-cache-key.outputs.cache-key }}
|
||||
|
||||
build-lkm:
|
||||
needs: check-cache
|
||||
if: needs.check-cache.outputs.cache-hit != 'true'
|
||||
uses: ./.github/workflows/build-lkm.yml
|
||||
secrets: inherit
|
||||
|
||||
build-susfsd:
|
||||
needs: build-lkm
|
||||
needs: [check-cache, build-lkm]
|
||||
if: needs.check-cache.outputs.cache-hit != 'true'
|
||||
strategy:
|
||||
matrix:
|
||||
include:
|
||||
@@ -34,7 +70,8 @@ jobs:
|
||||
os: ${{ matrix.os }}
|
||||
|
||||
build-ksud:
|
||||
needs: build-susfsd
|
||||
needs: [check-cache, build-susfsd]
|
||||
if: needs.check-cache.outputs.cache-hit != 'true'
|
||||
strategy:
|
||||
matrix:
|
||||
include:
|
||||
@@ -49,8 +86,43 @@ jobs:
|
||||
target: ${{ matrix.target }}
|
||||
os: ${{ matrix.os }}
|
||||
|
||||
cache-artifacts:
|
||||
needs: [check-cache, build-ksud]
|
||||
if: needs.check-cache.outputs.cache-hit != 'true'
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Download susfsd artifacts
|
||||
uses: actions/download-artifact@v5
|
||||
with:
|
||||
name: susfsd-linux-android
|
||||
path: cached-artifacts/susfsd
|
||||
|
||||
- name: Download ksud_overlayfs artifacts
|
||||
uses: actions/download-artifact@v5
|
||||
with:
|
||||
pattern: ksud_overlayfs-*
|
||||
path: cached-artifacts/ksud_overlayfs
|
||||
merge-multiple: true
|
||||
|
||||
- name: Download ksud_magic artifacts
|
||||
uses: actions/download-artifact@v5
|
||||
with:
|
||||
pattern: ksud_magic-*
|
||||
path: cached-artifacts/ksud_magic
|
||||
merge-multiple: true
|
||||
|
||||
- name: Cache artifacts
|
||||
uses: actions/cache/save@v4
|
||||
with:
|
||||
path: |
|
||||
cached-artifacts/susfsd
|
||||
cached-artifacts/ksud_overlayfs
|
||||
cached-artifacts/ksud_magic
|
||||
key: ${{ needs.check-cache.outputs.cache-key }}
|
||||
|
||||
build-manager:
|
||||
needs: build-ksud
|
||||
needs: [check-cache, build-ksud]
|
||||
if: always() && needs.check-cache.result == 'success' && (needs.check-cache.outputs.cache-hit == 'true' || needs.build-ksud.result == 'success')
|
||||
runs-on: ubuntu-latest
|
||||
defaults:
|
||||
run:
|
||||
@@ -58,7 +130,7 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Checkout Repository
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@v5
|
||||
with:
|
||||
fetch-depth: 0
|
||||
|
||||
@@ -84,7 +156,7 @@ jobs:
|
||||
fi
|
||||
|
||||
- name: Setup Java
|
||||
uses: actions/setup-java@v4
|
||||
uses: actions/setup-java@v5
|
||||
with:
|
||||
distribution: temurin
|
||||
java-version: 21
|
||||
@@ -92,87 +164,122 @@ jobs:
|
||||
- name: Setup Gradle
|
||||
uses: gradle/actions/setup-gradle@v4
|
||||
|
||||
# Restore cached artifacts if cache hit
|
||||
- name: Restore cached artifacts
|
||||
if: needs.check-cache.outputs.cache-hit == 'true'
|
||||
uses: actions/cache/restore@v4
|
||||
with:
|
||||
path: |
|
||||
cached-artifacts/susfsd
|
||||
cached-artifacts/ksud_overlayfs
|
||||
cached-artifacts/ksud_magic
|
||||
key: ${{ needs.check-cache.outputs.cache-key }}
|
||||
|
||||
# Download fresh artifacts if cache miss
|
||||
- name: Download susfsd
|
||||
uses: actions/download-artifact@v4
|
||||
if: needs.check-cache.outputs.cache-hit != 'true'
|
||||
uses: actions/download-artifact@v5
|
||||
with:
|
||||
name: susfsd-linux-android
|
||||
path: .
|
||||
|
||||
- name: Copy susfsd to app jniLibs
|
||||
run: |
|
||||
mkdir -p app/src/main/jniLibs/arm64-v8a
|
||||
cp -f ../arm64-v8a/susfsd ../manager/app/src/main/jniLibs/arm64-v8a/libsusfsd.so
|
||||
|
||||
mkdir -p app/src/main/jniLibs/armeabi-v7a
|
||||
cp -f ../armeabi-v7a/susfsd ../manager/app/src/main/jniLibs/armeabi-v7a/libsusfsd.so
|
||||
|
||||
mkdir -p app/src/main/jniLibs/x86_64
|
||||
cp -f ../x86_64/susfsd ../manager/app/src/main/jniLibs/x86_64/libsusfsd.so
|
||||
|
||||
|
||||
# Download fresh ksud artifacts if cache miss
|
||||
- name: Download arm64 ksud_overlayfs
|
||||
uses: actions/download-artifact@v4
|
||||
if: needs.check-cache.outputs.cache-hit != 'true'
|
||||
uses: actions/download-artifact@v5
|
||||
with:
|
||||
name: ksud_overlayfs-aarch64-linux-android
|
||||
path: ksud_overlayfs
|
||||
|
||||
- name: Download arm ksud_overlayfs
|
||||
uses: actions/download-artifact@v4
|
||||
if: needs.check-cache.outputs.cache-hit != 'true'
|
||||
uses: actions/download-artifact@v5
|
||||
with:
|
||||
name: ksud_overlayfs-armv7-linux-androideabi
|
||||
path: ksud_overlayfs
|
||||
|
||||
- name: Download x86_64 ksud_overlayfs
|
||||
uses: actions/download-artifact@v4
|
||||
if: needs.check-cache.outputs.cache-hit != 'true'
|
||||
uses: actions/download-artifact@v5
|
||||
with:
|
||||
name: ksud_overlayfs-x86_64-linux-android
|
||||
path: ksud_overlayfs
|
||||
|
||||
- name: Copy ksud_overlayfs to app jniLibs
|
||||
run: |
|
||||
mkdir -p app/src/main/jniLibs/arm64-v8a
|
||||
|
||||
mkdir -p app/src/main/jniLibs/armeabi-v7a
|
||||
|
||||
mkdir -p app/src/main/jniLibs/x86_64
|
||||
|
||||
cp -f ../ksud_overlayfs/aarch64-linux-android/release/ksud ../manager/app/src/main/jniLibs/arm64-v8a/libksud_overlayfs.so
|
||||
|
||||
cp -f ../ksud_overlayfs/armv7-linux-androideabi/release/ksud ../manager/app/src/main/jniLibs/armeabi-v7a/libksud_overlayfs.so
|
||||
|
||||
cp -f ../ksud_overlayfs/x86_64-linux-android/release/ksud ../manager/app/src/main/jniLibs/x86_64/libksud_overlayfs.so
|
||||
|
||||
- name: Download arm64 ksud_magic
|
||||
uses: actions/download-artifact@v4
|
||||
if: needs.check-cache.outputs.cache-hit != 'true'
|
||||
uses: actions/download-artifact@v5
|
||||
with:
|
||||
name: ksud_magic-aarch64-linux-android
|
||||
path: ksud_magic
|
||||
|
||||
- name: Download arm ksud_magic
|
||||
uses: actions/download-artifact@v4
|
||||
if: needs.check-cache.outputs.cache-hit != 'true'
|
||||
uses: actions/download-artifact@v5
|
||||
with:
|
||||
name: ksud_magic-armv7-linux-androideabi
|
||||
path: ksud_magic
|
||||
|
||||
- name: Download x86_64 ksud_magic
|
||||
uses: actions/download-artifact@v4
|
||||
if: needs.check-cache.outputs.cache-hit != 'true'
|
||||
uses: actions/download-artifact@v5
|
||||
with:
|
||||
name: ksud_magic-x86_64-linux-android
|
||||
path: ksud_magic
|
||||
|
||||
# Copy artifacts to jniLibs (works for both cached and fresh)
|
||||
- name: Copy susfsd to app jniLibs
|
||||
run: |
|
||||
mkdir -p app/src/main/jniLibs/arm64-v8a
|
||||
mkdir -p app/src/main/jniLibs/armeabi-v7a
|
||||
mkdir -p app/src/main/jniLibs/x86_64
|
||||
|
||||
if [ "${{ needs.check-cache.outputs.cache-hit }}" == "true" ]; then
|
||||
# Copy from cached artifacts
|
||||
cp -f ../cached-artifacts/susfsd/arm64-v8a/susfsd ../manager/app/src/main/jniLibs/arm64-v8a/libsusfsd.so
|
||||
cp -f ../cached-artifacts/susfsd/armeabi-v7a/susfsd ../manager/app/src/main/jniLibs/armeabi-v7a/libsusfsd.so
|
||||
cp -f ../cached-artifacts/susfsd/x86_64/susfsd ../manager/app/src/main/jniLibs/x86_64/libsusfsd.so
|
||||
else
|
||||
# Copy from fresh artifacts
|
||||
cp -f ../arm64-v8a/susfsd ../manager/app/src/main/jniLibs/arm64-v8a/libsusfsd.so
|
||||
cp -f ../armeabi-v7a/susfsd ../manager/app/src/main/jniLibs/armeabi-v7a/libsusfsd.so
|
||||
cp -f ../x86_64/susfsd ../manager/app/src/main/jniLibs/x86_64/libsusfsd.so
|
||||
fi
|
||||
|
||||
- name: Copy ksud_overlayfs to app jniLibs
|
||||
run: |
|
||||
mkdir -p app/src/main/jniLibs/arm64-v8a
|
||||
mkdir -p app/src/main/jniLibs/armeabi-v7a
|
||||
mkdir -p app/src/main/jniLibs/x86_64
|
||||
|
||||
if [ "${{ needs.check-cache.outputs.cache-hit }}" == "true" ]; then
|
||||
# Copy from cached artifacts
|
||||
cp -f ../cached-artifacts/ksud_overlayfs/aarch64-linux-android/release/ksud ../manager/app/src/main/jniLibs/arm64-v8a/libksud_overlayfs.so
|
||||
cp -f ../cached-artifacts/ksud_overlayfs/armv7-linux-androideabi/release/ksud ../manager/app/src/main/jniLibs/armeabi-v7a/libksud_overlayfs.so
|
||||
cp -f ../cached-artifacts/ksud_overlayfs/x86_64-linux-android/release/ksud ../manager/app/src/main/jniLibs/x86_64/libksud_overlayfs.so
|
||||
else
|
||||
# Copy from fresh artifacts
|
||||
cp -f ../ksud_overlayfs/aarch64-linux-android/release/ksud ../manager/app/src/main/jniLibs/arm64-v8a/libksud_overlayfs.so
|
||||
cp -f ../ksud_overlayfs/armv7-linux-androideabi/release/ksud ../manager/app/src/main/jniLibs/armeabi-v7a/libksud_overlayfs.so
|
||||
cp -f ../ksud_overlayfs/x86_64-linux-android/release/ksud ../manager/app/src/main/jniLibs/x86_64/libksud_overlayfs.so
|
||||
fi
|
||||
|
||||
- name: Copy ksud_magic to app jniLibs
|
||||
run: |
|
||||
mkdir -p app/src/main/jniLibs/arm64-v8a
|
||||
|
||||
mkdir -p app/src/main/jniLibs/armeabi-v7a
|
||||
|
||||
mkdir -p app/src/main/jniLibs/x86_64
|
||||
|
||||
cp -f ../ksud_magic/aarch64-linux-android/release/ksud ../manager/app/src/main/jniLibs/arm64-v8a/libksud_magic.so
|
||||
|
||||
cp -f ../ksud_magic/armv7-linux-androideabi/release/ksud ../manager/app/src/main/jniLibs/armeabi-v7a/libksud_magic.so
|
||||
|
||||
cp -f ../ksud_magic/x86_64-linux-android/release/ksud ../manager/app/src/main/jniLibs/x86_64/libksud_magic.so
|
||||
if [ "${{ needs.check-cache.outputs.cache-hit }}" == "true" ]; then
|
||||
# Copy from cached artifacts
|
||||
cp -f ../cached-artifacts/ksud_magic/aarch64-linux-android/release/ksud ../manager/app/src/main/jniLibs/arm64-v8a/libksud_magic.so
|
||||
cp -f ../cached-artifacts/ksud_magic/armv7-linux-androideabi/release/ksud ../manager/app/src/main/jniLibs/armeabi-v7a/libksud_magic.so
|
||||
cp -f ../cached-artifacts/ksud_magic/x86_64-linux-android/release/ksud ../manager/app/src/main/jniLibs/x86_64/libksud_magic.so
|
||||
else
|
||||
# Copy from fresh artifacts
|
||||
cp -f ../ksud_magic/aarch64-linux-android/release/ksud ../manager/app/src/main/jniLibs/arm64-v8a/libksud_magic.so
|
||||
cp -f ../ksud_magic/armv7-linux-androideabi/release/ksud ../manager/app/src/main/jniLibs/armeabi-v7a/libksud_magic.so
|
||||
cp -f ../ksud_magic/x86_64-linux-android/release/ksud ../manager/app/src/main/jniLibs/x86_64/libksud_magic.so
|
||||
fi
|
||||
|
||||
- name: Build with Gradle
|
||||
run: |
|
||||
|
||||
191
.github/workflows/build-manager-spoofed.yml
vendored
191
.github/workflows/build-manager-spoofed.yml
vendored
@@ -21,12 +21,48 @@ on:
|
||||
- cron: "0 12 * * *" # 6 PM UTC+6 | 12 PM UTC
|
||||
|
||||
jobs:
|
||||
check-cache:
|
||||
runs-on: ubuntu-latest
|
||||
outputs:
|
||||
cache-hit: ${{ steps.cache-artifacts.outputs.cache-hit }}
|
||||
cache-key: ${{ steps.generate-cache-key.outputs.cache-key }}
|
||||
steps:
|
||||
- name: Checkout Repository
|
||||
uses: actions/checkout@v5
|
||||
with:
|
||||
fetch-depth: 0
|
||||
|
||||
- name: Generate cache key from source files
|
||||
id: generate-cache-key
|
||||
run: |
|
||||
# Calculate hash of all files except manager directory
|
||||
HASH=$(find . -type f \
|
||||
-not -path "./manager/*" \
|
||||
-not -path "./.git/*" \
|
||||
-not -path "./.github/workflows/build-manager-spoofed.yml" \
|
||||
-exec sha256sum {} \; | sort | sha256sum | cut -d' ' -f1)
|
||||
echo "cache-key=artifacts-spoofed-$HASH" >> $GITHUB_OUTPUT
|
||||
echo "Generated cache key: artifacts-spoofed-$HASH"
|
||||
|
||||
- name: Check for cached artifacts
|
||||
id: cache-artifacts
|
||||
uses: actions/cache@v4
|
||||
with:
|
||||
path: |
|
||||
cached-artifacts/susfsd
|
||||
cached-artifacts/ksud_overlayfs
|
||||
cached-artifacts/ksud_magic
|
||||
key: ${{ steps.generate-cache-key.outputs.cache-key }}
|
||||
|
||||
build-lkm:
|
||||
needs: check-cache
|
||||
if: needs.check-cache.outputs.cache-hit != 'true'
|
||||
uses: ./.github/workflows/build-lkm.yml
|
||||
secrets: inherit
|
||||
|
||||
build-susfsd:
|
||||
needs: build-lkm
|
||||
needs: [check-cache, build-lkm]
|
||||
if: needs.check-cache.outputs.cache-hit != 'true'
|
||||
strategy:
|
||||
matrix:
|
||||
include:
|
||||
@@ -36,7 +72,8 @@ jobs:
|
||||
os: ${{ matrix.os }}
|
||||
|
||||
build-ksud:
|
||||
needs: build-susfsd
|
||||
needs: [check-cache, build-susfsd]
|
||||
if: needs.check-cache.outputs.cache-hit != 'true'
|
||||
strategy:
|
||||
matrix:
|
||||
include:
|
||||
@@ -51,8 +88,43 @@ jobs:
|
||||
target: ${{ matrix.target }}
|
||||
os: ${{ matrix.os }}
|
||||
|
||||
cache-artifacts:
|
||||
needs: [check-cache, build-ksud]
|
||||
if: needs.check-cache.outputs.cache-hit != 'true'
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Download susfsd artifacts
|
||||
uses: actions/download-artifact@v5
|
||||
with:
|
||||
name: susfsd-linux-android
|
||||
path: cached-artifacts/susfsd
|
||||
|
||||
- name: Download ksud_overlayfs artifacts
|
||||
uses: actions/download-artifact@v5
|
||||
with:
|
||||
pattern: ksud_overlayfs-*
|
||||
path: cached-artifacts/ksud_overlayfs
|
||||
merge-multiple: true
|
||||
|
||||
- name: Download ksud_magic artifacts
|
||||
uses: actions/download-artifact@v5
|
||||
with:
|
||||
pattern: ksud_magic-*
|
||||
path: cached-artifacts/ksud_magic
|
||||
merge-multiple: true
|
||||
|
||||
- name: Cache artifacts
|
||||
uses: actions/cache/save@v4
|
||||
with:
|
||||
path: |
|
||||
cached-artifacts/susfsd
|
||||
cached-artifacts/ksud_overlayfs
|
||||
cached-artifacts/ksud_magic
|
||||
key: ${{ needs.check-cache.outputs.cache-key }}
|
||||
|
||||
build-manager:
|
||||
needs: build-ksud
|
||||
needs: [check-cache, build-ksud]
|
||||
if: always() && needs.check-cache.result == 'success' && (needs.check-cache.outputs.cache-hit == 'true' || needs.build-ksud.result == 'success')
|
||||
runs-on: ubuntu-latest
|
||||
defaults:
|
||||
run:
|
||||
@@ -60,7 +132,7 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Checkout Repository
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@v5
|
||||
with:
|
||||
fetch-depth: 0
|
||||
|
||||
@@ -91,7 +163,7 @@ jobs:
|
||||
fi
|
||||
|
||||
- name: Setup Java
|
||||
uses: actions/setup-java@v4
|
||||
uses: actions/setup-java@v5
|
||||
with:
|
||||
distribution: temurin
|
||||
java-version: 21
|
||||
@@ -99,75 +171,122 @@ jobs:
|
||||
- name: Setup Gradle
|
||||
uses: gradle/actions/setup-gradle@v4
|
||||
|
||||
# Restore cached artifacts if cache hit
|
||||
- name: Restore cached artifacts
|
||||
if: needs.check-cache.outputs.cache-hit == 'true'
|
||||
uses: actions/cache/restore@v4
|
||||
with:
|
||||
path: |
|
||||
cached-artifacts/susfsd
|
||||
cached-artifacts/ksud_overlayfs
|
||||
cached-artifacts/ksud_magic
|
||||
key: ${{ needs.check-cache.outputs.cache-key }}
|
||||
|
||||
# Download fresh artifacts if cache miss
|
||||
- name: Download susfsd
|
||||
uses: actions/download-artifact@v4
|
||||
if: needs.check-cache.outputs.cache-hit != 'true'
|
||||
uses: actions/download-artifact@v5
|
||||
with:
|
||||
name: susfsd-linux-android
|
||||
path: .
|
||||
|
||||
- name: Copy susfsd to app jniLibs
|
||||
run: |
|
||||
mkdir -p app/src/main/jniLibs/arm64-v8a
|
||||
cp -f ../arm64-v8a/susfsd ../manager/app/src/main/jniLibs/arm64-v8a/libsusfsd.so
|
||||
|
||||
mkdir -p app/src/main/jniLibs/armeabi-v7a
|
||||
cp -f ../armeabi-v7a/susfsd ../manager/app/src/main/jniLibs/armeabi-v7a/libsusfsd.so
|
||||
|
||||
mkdir -p app/src/main/jniLibs/x86_64
|
||||
cp -f ../x86_64/susfsd ../manager/app/src/main/jniLibs/x86_64/libsusfsd.so
|
||||
|
||||
|
||||
# Download fresh ksud artifacts if cache miss
|
||||
- name: Download arm64 ksud_overlayfs
|
||||
uses: actions/download-artifact@v4
|
||||
if: needs.check-cache.outputs.cache-hit != 'true'
|
||||
uses: actions/download-artifact@v5
|
||||
with:
|
||||
name: ksud_overlayfs-aarch64-linux-android
|
||||
path: ksud_overlayfs
|
||||
|
||||
- name: Download arm ksud_overlayfs
|
||||
uses: actions/download-artifact@v4
|
||||
if: needs.check-cache.outputs.cache-hit != 'true'
|
||||
uses: actions/download-artifact@v5
|
||||
with:
|
||||
name: ksud_overlayfs-armv7-linux-androideabi
|
||||
path: ksud_overlayfs
|
||||
|
||||
- name: Download x86_64 ksud_overlayfs
|
||||
uses: actions/download-artifact@v4
|
||||
if: needs.check-cache.outputs.cache-hit != 'true'
|
||||
uses: actions/download-artifact@v5
|
||||
with:
|
||||
name: ksud_overlayfs-x86_64-linux-android
|
||||
path: ksud_overlayfs
|
||||
|
||||
- name: Copy ksud_overlayfs to app jniLibs
|
||||
run: |
|
||||
cp -f ../ksud_overlayfs/aarch64-linux-android/release/ksud ../manager/app/src/main/jniLibs/arm64-v8a/libksud_overlayfs.so
|
||||
|
||||
cp -f ../ksud_overlayfs/armv7-linux-androideabi/release/ksud ../manager/app/src/main/jniLibs/armeabi-v7a/libksud_overlayfs.so
|
||||
|
||||
cp -f ../ksud_overlayfs/x86_64-linux-android/release/ksud ../manager/app/src/main/jniLibs/x86_64/libksud_overlayfs.so
|
||||
|
||||
- name: Download arm64 ksud_magic
|
||||
uses: actions/download-artifact@v4
|
||||
if: needs.check-cache.outputs.cache-hit != 'true'
|
||||
uses: actions/download-artifact@v5
|
||||
with:
|
||||
name: ksud_magic-aarch64-linux-android
|
||||
path: ksud_magic
|
||||
|
||||
- name: Download arm ksud_magic
|
||||
uses: actions/download-artifact@v4
|
||||
if: needs.check-cache.outputs.cache-hit != 'true'
|
||||
uses: actions/download-artifact@v5
|
||||
with:
|
||||
name: ksud_magic-armv7-linux-androideabi
|
||||
path: ksud_magic
|
||||
|
||||
- name: Download x86_64 ksud_magic
|
||||
uses: actions/download-artifact@v4
|
||||
if: needs.check-cache.outputs.cache-hit != 'true'
|
||||
uses: actions/download-artifact@v5
|
||||
with:
|
||||
name: ksud_magic-x86_64-linux-android
|
||||
path: ksud_magic
|
||||
|
||||
# Copy artifacts to jniLibs (works for both cached and fresh)
|
||||
- name: Copy susfsd to app jniLibs
|
||||
run: |
|
||||
mkdir -p app/src/main/jniLibs/arm64-v8a
|
||||
mkdir -p app/src/main/jniLibs/armeabi-v7a
|
||||
mkdir -p app/src/main/jniLibs/x86_64
|
||||
|
||||
if [ "${{ needs.check-cache.outputs.cache-hit }}" == "true" ]; then
|
||||
# Copy from cached artifacts
|
||||
cp -f ../cached-artifacts/susfsd/arm64-v8a/susfsd ../manager/app/src/main/jniLibs/arm64-v8a/libsusfsd.so
|
||||
cp -f ../cached-artifacts/susfsd/armeabi-v7a/susfsd ../manager/app/src/main/jniLibs/armeabi-v7a/libsusfsd.so
|
||||
cp -f ../cached-artifacts/susfsd/x86_64/susfsd ../manager/app/src/main/jniLibs/x86_64/libsusfsd.so
|
||||
else
|
||||
# Copy from fresh artifacts
|
||||
cp -f ../arm64-v8a/susfsd ../manager/app/src/main/jniLibs/arm64-v8a/libsusfsd.so
|
||||
cp -f ../armeabi-v7a/susfsd ../manager/app/src/main/jniLibs/armeabi-v7a/libsusfsd.so
|
||||
cp -f ../x86_64/susfsd ../manager/app/src/main/jniLibs/x86_64/libsusfsd.so
|
||||
fi
|
||||
|
||||
- name: Copy ksud_overlayfs to app jniLibs
|
||||
run: |
|
||||
mkdir -p app/src/main/jniLibs/arm64-v8a
|
||||
mkdir -p app/src/main/jniLibs/armeabi-v7a
|
||||
mkdir -p app/src/main/jniLibs/x86_64
|
||||
|
||||
if [ "${{ needs.check-cache.outputs.cache-hit }}" == "true" ]; then
|
||||
# Copy from cached artifacts
|
||||
cp -f ../cached-artifacts/ksud_overlayfs/aarch64-linux-android/release/ksud ../manager/app/src/main/jniLibs/arm64-v8a/libksud_overlayfs.so
|
||||
cp -f ../cached-artifacts/ksud_overlayfs/armv7-linux-androideabi/release/ksud ../manager/app/src/main/jniLibs/armeabi-v7a/libksud_overlayfs.so
|
||||
cp -f ../cached-artifacts/ksud_overlayfs/x86_64-linux-android/release/ksud ../manager/app/src/main/jniLibs/x86_64/libksud_overlayfs.so
|
||||
else
|
||||
# Copy from fresh artifacts
|
||||
cp -f ../ksud_overlayfs/aarch64-linux-android/release/ksud ../manager/app/src/main/jniLibs/arm64-v8a/libksud_overlayfs.so
|
||||
cp -f ../ksud_overlayfs/armv7-linux-androideabi/release/ksud ../manager/app/src/main/jniLibs/armeabi-v7a/libksud_overlayfs.so
|
||||
cp -f ../ksud_overlayfs/x86_64-linux-android/release/ksud ../manager/app/src/main/jniLibs/x86_64/libksud_overlayfs.so
|
||||
fi
|
||||
|
||||
- name: Copy ksud_magic to app jniLibs
|
||||
run: |
|
||||
cp -f ../ksud_magic/aarch64-linux-android/release/ksud ../manager/app/src/main/jniLibs/arm64-v8a/libksud_magic.so
|
||||
|
||||
cp -f ../ksud_magic/armv7-linux-androideabi/release/ksud ../manager/app/src/main/jniLibs/armeabi-v7a/libksud_magic.so
|
||||
mkdir -p app/src/main/jniLibs/arm64-v8a
|
||||
mkdir -p app/src/main/jniLibs/armeabi-v7a
|
||||
mkdir -p app/src/main/jniLibs/x86_64
|
||||
|
||||
cp -f ../ksud_magic/x86_64-linux-android/release/ksud ../manager/app/src/main/jniLibs/x86_64/libksud_magic.so
|
||||
if [ "${{ needs.check-cache.outputs.cache-hit }}" == "true" ]; then
|
||||
# Copy from cached artifacts
|
||||
cp -f ../cached-artifacts/ksud_magic/aarch64-linux-android/release/ksud ../manager/app/src/main/jniLibs/arm64-v8a/libksud_magic.so
|
||||
cp -f ../cached-artifacts/ksud_magic/armv7-linux-androideabi/release/ksud ../manager/app/src/main/jniLibs/armeabi-v7a/libksud_magic.so
|
||||
cp -f ../cached-artifacts/ksud_magic/x86_64-linux-android/release/ksud ../manager/app/src/main/jniLibs/x86_64/libksud_magic.so
|
||||
else
|
||||
# Copy from fresh artifacts
|
||||
cp -f ../ksud_magic/aarch64-linux-android/release/ksud ../manager/app/src/main/jniLibs/arm64-v8a/libksud_magic.so
|
||||
cp -f ../ksud_magic/armv7-linux-androideabi/release/ksud ../manager/app/src/main/jniLibs/armeabi-v7a/libksud_magic.so
|
||||
cp -f ../ksud_magic/x86_64-linux-android/release/ksud ../manager/app/src/main/jniLibs/x86_64/libksud_magic.so
|
||||
fi
|
||||
|
||||
- name: Build with Gradle
|
||||
run: |
|
||||
|
||||
18
.github/workflows/build-manager.yml
vendored
18
.github/workflows/build-manager.yml
vendored
@@ -58,7 +58,7 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Checkout Repository
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@v5
|
||||
with:
|
||||
fetch-depth: 0
|
||||
|
||||
@@ -84,7 +84,7 @@ jobs:
|
||||
fi
|
||||
|
||||
- name: Setup Java
|
||||
uses: actions/setup-java@v4
|
||||
uses: actions/setup-java@v5
|
||||
with:
|
||||
distribution: temurin
|
||||
java-version: 21
|
||||
@@ -93,7 +93,7 @@ jobs:
|
||||
uses: gradle/actions/setup-gradle@v4
|
||||
|
||||
- name: Download susfsd
|
||||
uses: actions/download-artifact@v4
|
||||
uses: actions/download-artifact@v5
|
||||
with:
|
||||
name: susfsd-linux-android
|
||||
path: .
|
||||
@@ -111,19 +111,19 @@ jobs:
|
||||
|
||||
|
||||
- name: Download arm64 ksud_overlayfs
|
||||
uses: actions/download-artifact@v4
|
||||
uses: actions/download-artifact@v5
|
||||
with:
|
||||
name: ksud_overlayfs-aarch64-linux-android
|
||||
path: ksud_overlayfs
|
||||
|
||||
- name: Download arm ksud_overlayfs
|
||||
uses: actions/download-artifact@v4
|
||||
uses: actions/download-artifact@v5
|
||||
with:
|
||||
name: ksud_overlayfs-armv7-linux-androideabi
|
||||
path: ksud_overlayfs
|
||||
|
||||
- name: Download x86_64 ksud_overlayfs
|
||||
uses: actions/download-artifact@v4
|
||||
uses: actions/download-artifact@v5
|
||||
with:
|
||||
name: ksud_overlayfs-x86_64-linux-android
|
||||
path: ksud_overlayfs
|
||||
@@ -137,19 +137,19 @@ jobs:
|
||||
cp -f ../ksud_overlayfs/x86_64-linux-android/release/ksud ../manager/app/src/main/jniLibs/x86_64/libksud_overlayfs.so
|
||||
|
||||
- name: Download arm64 ksud_magic
|
||||
uses: actions/download-artifact@v4
|
||||
uses: actions/download-artifact@v5
|
||||
with:
|
||||
name: ksud_magic-aarch64-linux-android
|
||||
path: ksud_magic
|
||||
|
||||
- name: Download arm ksud_magic
|
||||
uses: actions/download-artifact@v4
|
||||
uses: actions/download-artifact@v5
|
||||
with:
|
||||
name: ksud_magic-armv7-linux-androideabi
|
||||
path: ksud_magic
|
||||
|
||||
- name: Download x86_64 ksud_magic
|
||||
uses: actions/download-artifact@v4
|
||||
uses: actions/download-artifact@v5
|
||||
with:
|
||||
name: ksud_magic-x86_64-linux-android
|
||||
path: ksud_magic
|
||||
|
||||
2
.github/workflows/build-su.yml
vendored
2
.github/workflows/build-su.yml
vendored
@@ -15,7 +15,7 @@ jobs:
|
||||
name: Build userspace su
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/checkout@v5
|
||||
with:
|
||||
fetch-depth: 0
|
||||
- name: Setup need_upload
|
||||
|
||||
2
.github/workflows/clippy.yml
vendored
2
.github/workflows/clippy.yml
vendored
@@ -24,7 +24,7 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout Repository
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@v5
|
||||
|
||||
- name: Setup Rust
|
||||
run: rustup update stable
|
||||
|
||||
2
.github/workflows/gki-kernel.yml
vendored
2
.github/workflows/gki-kernel.yml
vendored
@@ -82,7 +82,7 @@ jobs:
|
||||
remove-haskell: 'true'
|
||||
remove-codeql: 'true'
|
||||
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/checkout@v5
|
||||
with:
|
||||
path: KernelSU-Next
|
||||
fetch-depth: 0
|
||||
|
||||
4
.github/workflows/ksud.yml
vendored
4
.github/workflows/ksud.yml
vendored
@@ -22,12 +22,12 @@ jobs:
|
||||
runs-on: ${{ inputs.os }}
|
||||
steps:
|
||||
- name: Checkout Repository
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@v5
|
||||
with:
|
||||
fetch-depth: 0
|
||||
|
||||
- name: Download Artifacts
|
||||
uses: actions/download-artifact@v4
|
||||
uses: actions/download-artifact@v5
|
||||
|
||||
- name: Prepare LKM Files
|
||||
if: ${{ inputs.pack_lkm }}
|
||||
|
||||
2
.github/workflows/release.yml
vendored
2
.github/workflows/release.yml
vendored
@@ -39,7 +39,7 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Download artifacts
|
||||
uses: actions/download-artifact@v4
|
||||
uses: actions/download-artifact@v5
|
||||
- name: Zip AnyKernel3
|
||||
run: |
|
||||
for dir in AnyKernel3-*; do
|
||||
|
||||
2
.github/workflows/rustfmt.yml
vendored
2
.github/workflows/rustfmt.yml
vendored
@@ -23,7 +23,7 @@ jobs:
|
||||
format:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/checkout@v5
|
||||
|
||||
- uses: dtolnay/rust-toolchain@nightly
|
||||
with:
|
||||
|
||||
2
.github/workflows/shellcheck.yml
vendored
2
.github/workflows/shellcheck.yml
vendored
@@ -18,7 +18,7 @@ jobs:
|
||||
shellcheck:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/checkout@v5
|
||||
|
||||
- name: Run ShellCheck
|
||||
uses: ludeeus/action-shellcheck@2.0.0
|
||||
|
||||
2
.github/workflows/susfsd.yml
vendored
2
.github/workflows/susfsd.yml
vendored
@@ -17,7 +17,7 @@ jobs:
|
||||
name: Build userspace susfsd
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/checkout@v5
|
||||
with:
|
||||
fetch-depth: 0
|
||||
- name: Build susfsd
|
||||
|
||||
6
.github/workflows/wsa-kernel.yml
vendored
6
.github/workflows/wsa-kernel.yml
vendored
@@ -36,7 +36,7 @@ jobs:
|
||||
key: llvm-12.0.1
|
||||
|
||||
- name: Setup LLVM
|
||||
uses: KyleMayes/install-llvm-action@v1
|
||||
uses: KyleMayes/install-llvm-action@v2
|
||||
with:
|
||||
version: "12.0.1"
|
||||
force-version: true
|
||||
@@ -44,13 +44,13 @@ jobs:
|
||||
cached: ${{ steps.cache-llvm.outputs.cache-hit }}
|
||||
|
||||
- name: Checkout KernelSU-Next
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@v5
|
||||
with:
|
||||
path: KernelSU-Next
|
||||
fetch-depth: 0
|
||||
|
||||
- name: Setup kernel source
|
||||
uses: actions/checkout@v4
|
||||
uses: actions/checkout@v5
|
||||
with:
|
||||
repository: microsoft/WSA-Linux-Kernel
|
||||
ref: android-lts/latte-2/${{ inputs.version }}
|
||||
|
||||
@@ -40,4 +40,11 @@ config KSU_LSM_SECURITY_HOOKS
|
||||
Disabling this is mostly only useful for kernel 4.1 and older.
|
||||
Make sure to implement manual hooks on security/security.c.
|
||||
|
||||
config KSU_SWITCH_MANAGER
|
||||
bool "KernelSU switch manager support"
|
||||
depends on KSU
|
||||
default n
|
||||
help
|
||||
Enable KernelSU switch manager support.
|
||||
|
||||
endmenu
|
||||
|
||||
@@ -314,7 +314,9 @@ static struct kernel_param_ops expected_size_ops = {
|
||||
module_param_cb(ksu_debug_manager_uid, &expected_size_ops,
|
||||
&ksu_debug_manager_uid, S_IRUSR | S_IWUSR);
|
||||
|
||||
#else
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_KSU_SWITCH_MANAGER
|
||||
|
||||
static int set_expected_size(const char *val, const struct kernel_param *kp)
|
||||
{
|
||||
@@ -385,9 +387,5 @@ bool is_manager_apk(char *path)
|
||||
pr_info("%s: expected size: %u, expected hash: %s\n",
|
||||
path, expected_manager_size, expected_manager_hash);
|
||||
|
||||
#ifdef CONFIG_KSU_DEBUG
|
||||
return check_v2_signature(path, EXPECTED_MANAGER_SIZE, EXPECTED_MANAGER_HASH);
|
||||
#else
|
||||
return check_v2_signature(path, expected_manager_size, expected_manager_hash);
|
||||
#endif
|
||||
}
|
||||
|
||||
@@ -231,6 +231,6 @@
|
||||
<string name="module_sort_enabled_first">Сортиране (първо активирани)</string>
|
||||
<string name="module_sort_action_first">Сортиране (първо действие)</string>
|
||||
<string name="module_sort_webui_first">Сортиране (първо WebUI)</string>
|
||||
<string name="settings_global_namespace_mode">Режим на глобално пространство от имена</string>
|
||||
<string name="settings_global_namespace_mode_summary">Всички сесии на root използват глобалното пространство от имена за монтиране</string>
|
||||
<string name="settings_global_namespace_mode">Global Namespace Mode</string>
|
||||
<string name="settings_global_namespace_mode_summary">All root sessions use the global mount namespace</string>
|
||||
</resources>
|
||||
|
||||
@@ -20,7 +20,7 @@
|
||||
<string name="home_failure">Firma v2 di KernelSU Next non trovata nel kernel! [ !KSU_NEXT || != size/hash ]</string>
|
||||
<string name="home_failure_tip">Chiedi allo sviluppatore del kernel d\'integrare KernelSU Next!</string>
|
||||
<string name="home_kernel">Versione kernel</string>
|
||||
<string name="hook_mode">Modalità hook</string>
|
||||
<string name="hook_mode">Modalità Hook</string>
|
||||
<string name="enable">Abilita</string>
|
||||
<string name="disable">Disabilita</string>
|
||||
<string name="enabled">Abilitato</string>
|
||||
@@ -30,7 +30,7 @@
|
||||
<string name="home_susfs_version">Versione SuSFS</string>
|
||||
<string name="home_susfs_sus_su">SuS SU</string>
|
||||
<string name="home_android">Versione Android</string>
|
||||
<string name="home_manager_version">Versione manager</string>
|
||||
<string name="home_manager_version">Versione Manager</string>
|
||||
<string name="home_abi">ABI</string>
|
||||
<string name="home_selinux_status">Stato SELinux</string>
|
||||
<string name="selinux_status_disabled">Disabilitato</string>
|
||||
@@ -103,7 +103,7 @@
|
||||
<string name="proceed">Procedi</string>
|
||||
<string name="cancel">Annulla</string>
|
||||
<string name="later">Più tardi</string>
|
||||
<string name="lkm_warning_message">La patch LKM si basa su componenti closed source. Vuoi continuare?</string>
|
||||
<string name="lkm_warning_message">La patch LKM si basa su codici vuoi continuare?</string>
|
||||
<string name="home_next_kernelsu">🔥 Prossima build</string>
|
||||
<string name="home_next_kernelsu_repo">https://github.com/KernelSU-Next/KernelSU-Next</string>
|
||||
<string name="home_next_kernelsu_body">Prossimo branch sperimentale. Provalo su GitHub!</string>
|
||||
@@ -176,8 +176,8 @@
|
||||
<string name="app_profile_template_import_empty">Gli appunti sono vuoti!</string>
|
||||
<string name="module_changelog_failed">Recupero del changelog non riuscito: %s</string>
|
||||
<string name="settings_check_update">Controlla aggiornamenti</string>
|
||||
<string name="settings_check_update_summary">Cerca automaticamente gli aggiornamenti all\'apertura dell\'applicazione</string>
|
||||
<string name="grant_root_failed">Impossibile concedere i permessi root!</string>
|
||||
<string name="settings_check_update_summary">Cerca automaticamente gli aggiornamenti all\'apertura dell\'applicazione.</string>
|
||||
<string name="grant_root_failed">Impossibile concedere i permessi root! </string>
|
||||
<string name="action">Azione</string>
|
||||
<string name="webui">WebUI</string>
|
||||
<string name="open">Apri</string>
|
||||
|
||||
@@ -41,7 +41,7 @@
|
||||
<string name="module_failed_to_enable">Não foi possível ativar o módulo %s</string>
|
||||
<string name="module_failed_to_disable">Não foi possível desativar o módulo %s</string>
|
||||
<string name="module_empty">Nenhum módulo instalado</string>
|
||||
<string name="module">Módulos</string>
|
||||
<string name="module">Módulo</string>
|
||||
<string name="module_install_prompt_with_name">Os seguintes módulos serão instalados: %1$s</string>
|
||||
<string name="module_sort_a_to_z">Ordenar (A → Z)</string>
|
||||
<string name="module_sort_z_to_a">Organizar (Z → A)</string>
|
||||
@@ -73,7 +73,7 @@
|
||||
<string name="module_update_json">UpdateJson</string>
|
||||
<string name="module_update_json_empty">Vazio</string>
|
||||
<string name="enable_developer_options">Ativar opções do desenvolvedor</string>
|
||||
<string name="enable_developer_options_summary">Exibe ajustes ocultos e informações de depuração relevantes apenas para desenvolvedores.</string>
|
||||
<string name="enable_developer_options_summary">Exibe as configurações ocultas e informações de depuração relevantes apenas para desenvolvedores.</string>
|
||||
<string name="module_overlay_fs_not_available">Os módulos estão indisponíveis porque OverlayFS está desabilitado pelo kernel!</string>
|
||||
<string name="refresh">Atualizar</string>
|
||||
<string name="show_system_apps">Mostrar apps do sistema</string>
|
||||
@@ -97,7 +97,7 @@
|
||||
<string name="allowlist_restore">Restaurar lista de permissões</string>
|
||||
<string name="allowlist_restore_message">Restaure a lista de permissões de um backup recente.</string>
|
||||
<string name="allowlist_backup">Backup da lista de permissões</string>
|
||||
<string name="allowlist_backup_message">Faça backup da lista de permissões atual.</string>
|
||||
<string name="allowlist_backup_message">Faça backup da lista de permissões configurada atualmente.</string>
|
||||
<string name="warning">Aviso</string>
|
||||
<string name="warning_message">Este recurso ainda está em beta e em desenvolvimento. Certifique-se de fazer backup de seus módulos antes de continuar. Use esse recurso somente se você compreender os riscos potenciais. Proceda com cautela.</string>
|
||||
<string name="proceed">Prosseguir</string>
|
||||
@@ -231,6 +231,6 @@
|
||||
<string name="module_sort_enabled_first">Ordenar (Habilitado primeiro)</string>
|
||||
<string name="module_sort_action_first">Ordenar (exceto primeiro)</string>
|
||||
<string name="module_sort_webui_first">Ordenar (WebUI primeiro)</string>
|
||||
<string name="settings_global_namespace_mode">Modo de namespace global</string>
|
||||
<string name="settings_global_namespace_mode_summary">Todas as sessões raiz usam o namespace de montagem global</string>
|
||||
<string name="settings_global_namespace_mode">Global Namespace Mode</string>
|
||||
<string name="settings_global_namespace_mode_summary">All root sessions use the global mount namespace</string>
|
||||
</resources>
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<string name="issue_report_title">Возникли проблемы?</string>
|
||||
<string name="issue_report_body">Заметили ошибку или есть предложения?</string>
|
||||
<string name="issue_report_body">Обнаружена ошибка или нужна обратная связь?</string>
|
||||
<string name="issue_report_body_2">Сообщите об этом как можно скорее!</string>
|
||||
<string name="issue_report_github">Сообщить на GitHub</string>
|
||||
<string name="issue_report_telegram">Связаться через Telegram</string>
|
||||
@@ -96,7 +96,7 @@
|
||||
<string name="module_backup">Бэкап модулей</string>
|
||||
<string name="allowlist_restore">Восстановить список прав</string>
|
||||
<string name="allowlist_restore_message">Восстановить список прав из последней резервной копии.</string>
|
||||
<string name="allowlist_backup">Бэкап списка прав</string>
|
||||
<string name="allowlist_backup">Бэкап списка разрешений</string>
|
||||
<string name="allowlist_backup_message">Резервное копирование текущего списка разрешений.</string>
|
||||
<string name="warning">Предупреждение</string>
|
||||
<string name="warning_message">Эта функция всё ещё находится в стадии бета-тестирования. Пожалуйста, убедитесь, что вы создали резервные копии модулей перед использованием. Используйте это только если понимаете возможные риски. Будьте осторожны.</string>
|
||||
@@ -117,7 +117,7 @@
|
||||
<string name="profile">Профиль Приложения</string>
|
||||
<string name="profile_default">По умолчанию</string>
|
||||
<string name="profile_template">Шаблон</string>
|
||||
<string name="profile_custom">Настроить</string>
|
||||
<string name="profile_custom">Пользовательский</string>
|
||||
<string name="profile_name">Имя профиля</string>
|
||||
<string name="profile_namespace">Пространство монтирования</string>
|
||||
<string name="profile_namespace_inherited">Унаследованный</string>
|
||||
@@ -130,10 +130,10 @@
|
||||
<string name="failed_to_update_app_profile">Не удалось обновить Профиль Приложения для %s</string>
|
||||
<string name="require_kernel_version">Текущая версия KernelSU Next %1$d слишком низкая для корректной работы менеджера. Пожалуйста, обновитесь до версии %2$d или выше!</string>
|
||||
<string name="settings_umount_modules_default">Размонтировать модули</string>
|
||||
<string name="settings_umount_modules_default_summary">Глобальное значение по умолчанию для параметра \"Размонтировать модули\" в Профиле Приложения. Если этот параметр включён, то все изменения, внесённые модулями, будут скрыты для приложений без установленного профиля или root-доступа.</string>
|
||||
<string name="settings_umount_modules_default_summary">По умолчанию включает статус \"Umount\" для приложений. Если эта настройка включена, то все модификации, внесённые модулями, будут удалены для приложений без включённого root-доступа.</string>
|
||||
<string name="settings_susfs_toggle">Скрыть хук kprobes</string>
|
||||
<string name="settings_susfs_toggle_summary">Эта опция отключает хук kprobes, созданный ksu, и вместо него активирует встроенный хук без использования kprobes, реализующий ту же функциональность, которая применяется к ядрам без GKI, не поддерживающим kprobe.</string>
|
||||
<string name="profile_umount_modules_summary">Если этот параметр включен, то все модификации, внесённые модулями, будут скрыты для данного приложения.</string>
|
||||
<string name="profile_umount_modules_summary">Если эта настройка включена, то все модификации, внесённые модулями, будут удалены для данного приложения.</string>
|
||||
<string name="profile_selinux_domain">Домен</string>
|
||||
<string name="profile_selinux_rules">Правила</string>
|
||||
<string name="module_update">Обновить</string>
|
||||
@@ -153,7 +153,7 @@
|
||||
<string name="failed_to_update_sepolicy">Не удалось обновить правила SELinux для %s</string>
|
||||
<string name="su_not_allowed">Предоставление прав суперпользователя запрещено для: %s</string>
|
||||
<string name="module_changelog">Журнал изменений</string>
|
||||
<string name="settings_profile_template">Шаблоны root-доступа</string>
|
||||
<string name="settings_profile_template">Шаблоны доступа</string>
|
||||
<string name="settings_profile_template_summary">Управление локальными и онлайн шаблонами root-доступа.</string>
|
||||
<string name="app_profile_template_create">Создать шаблон</string>
|
||||
<string name="app_profile_template_edit">Изменить шаблон</string>
|
||||
@@ -231,6 +231,6 @@
|
||||
<string name="module_sort_enabled_first">По статусу (Сначала включённые)</string>
|
||||
<string name="module_sort_action_first">По статусу (Сначала со скриптом)</string>
|
||||
<string name="module_sort_webui_first">По статусу (Сначала с WebUI)</string>
|
||||
<string name="settings_global_namespace_mode">Общее пространство монтирования</string>
|
||||
<string name="settings_global_namespace_mode_summary">Все сессии root используют одну файловую систему.</string>
|
||||
<string name="settings_global_namespace_mode">Общее пространство имён</string>
|
||||
<string name="settings_global_namespace_mode_summary">Все сессии пользователя root будут использовать общее пространство имён</string>
|
||||
</resources>
|
||||
|
||||
@@ -82,7 +82,7 @@
|
||||
<string name="safe_mode">Güvenli mod</string>
|
||||
<string name="reboot_to_apply">Etkili olması için yeniden başlatın</string>
|
||||
<string name="module_magisk_conflict">Magisk ile yaşanan bir çakışma nedeniyle modüller kullanılamıyor!</string>
|
||||
<string name="home_mount_system">Bağlantı sistemi</string>
|
||||
<string name="home_mount_system">Montaj sistemi</string>
|
||||
<string name="home_magic_mount">Magic Mount</string>
|
||||
<string name="home_overlayfs_mount">OverlayFS</string>
|
||||
<string name="unavailable">Mevcut değil</string>
|
||||
|
||||
@@ -170,7 +170,7 @@
|
||||
<string name="app_profile_import_from_clipboard">Nhập từ bộ nhớ tạm</string>
|
||||
<string name="app_profile_export_to_clipboard">Xuất vào bộ nhớ tạm</string>
|
||||
<string name="app_profile_template_export_empty">Không tìm thấy mẫu cục bộ để xuất!</string>
|
||||
<string name="app_profile_template_import_success">Đã nhập thành công</string>
|
||||
<string name="app_profile_template_import_success">Nhập thành công</string>
|
||||
<string name="app_profile_template_sync">Đồng bộ hoá các mẫu trực tuyến</string>
|
||||
<string name="app_profile_template_save_failed">Lưu mẫu thất bại</string>
|
||||
<string name="app_profile_template_import_empty">Bộ nhớ tạm đang trống!</string>
|
||||
@@ -186,7 +186,7 @@
|
||||
<string name="direct_install">Cài đặt trực tiếp (Khuyến nghị)</string>
|
||||
<string name="select_file">Chọn file</string>
|
||||
<string name="install_inactive_slot">Cài đặt vào phân vùng không hoạt động (Sau OTA)</string>
|
||||
<string name="install_inactive_slot_warning">Thiết bị của bạn sẽ **BUỘC** phải khởi động vào phân vùng không hoạt động hiện tại sau khi khởi động lại!\nChỉ sử dụng tùy chọn này sau khi cập nhật OTA hoàn tất.\nTiếp tục?</string>
|
||||
<string name="install_inactive_slot_warning">Thiết bị của bạn sẽ **BUỘC** phải khởi động vào phân vùng không hoạt động hiện tại sau khi khởi động lại!\nChỉ sử dụng tùy chọn này sau khi OTA hoàn tất.\nTiếp tục?</string>
|
||||
<string name="install_next">Tiếp tục</string>
|
||||
<string name="select_file_tip">Phân vùng image %1$s được khuyến nghị</string>
|
||||
<string name="select_kmi">Chọn KMI</string>
|
||||
|
||||
Reference in New Issue
Block a user