magisk-zapret2/upstream/README.md
loop-uh 8bf923faaa
All checks were successful
Background release validation / Prepare Version (push) Successful in 4s
Magisk source guards / guards (push) Successful in 3s
Background release validation / Fetch latest upstream zapret2 release (push) Successful in 16s
Background release validation / Shell integration tests (push) Successful in 1m44s
Background release validation / Build Android APK (push) Successful in 6m33s
Background release validation / Package Magisk Module (push) Successful in 10s
Fetch zapret2 directly from official releases
2026-08-07 15:19:53 +03:00

43 lines
2.8 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Upstream zapret2 payload
Эта папка — единственная точка интеграции с `bol-van/zapret2`.
`fetch-release.sh` на каждой CI-сборке проверяет последний стабильный релиз в
официальном репозитории [`bol-van/zapret2`](https://github.com/bol-van/zapret2),
скачивает официальный `zapret2-v*.tar.gz`, сверяет его с закреплённой SHA-256 из
`pinned-release.json` и отдельно проверяет Android-бинарники по upstream-файлу
`sha256sum.txt`.
`reviewed-release.txt` фиксирует релиз, по которому проверены поддерживаемые
опции и L7-протоколы безопасного TXT-компилятора. Скрипт всё равно запрашивает
latest stable, но останавливает сборку, если upstream уже выпустил новую версию:
сначала нужно просмотреть изменение грамматики, обновить тесты и только затем
сдвинуть эту отметку. Так новый бинарник не расходится молча с валидатором.
Из release-архива берутся только:
- `binaries/android-arm64/nfqws2``arm64-v8a`;
- `binaries/android-arm/nfqws2``armeabi-v7a`;
- Lua-файлы из `lua-files.txt`.
Все шесть официальных Lua-файлов `bol-van/zapret2` перечислены в `lua-files.txt`,
не хранятся в этом репозитории и загружаются заново при каждой CI-сборке.
Собственные Lua-файлы проекта автоматически не заменяются. Это
`custom_funcs.lua`, `zapret-multishake.lua`, `zapret-16kb.lua`,
`zapret-wgobfs.lua`, `zapret-custom.lua` и `init_vars.lua`.
Actions-артефакты по ссылкам вида `/actions/runs/.../artifacts/...` намеренно не
используются: они временные и требуют токен для скачивания из другого репозитория.
Официальный GitHub Release содержит ARM/ARM64-сборки и согласованный с ними
Lua-код. Артефакты `android-x86` и `android-x86_64` для этого Magisk-модуля не
подходят. Forgejo хранит и выпускает только наш модуль, а чужой исходный проект
не зеркалируется.
Локальная проверка (Linux):
```sh
bash upstream/fetch-release.sh ./upstream-payload
```
Каталог назначения должен отсутствовать или быть пустым.