ZapretKVN-android/docs/THIRD_PARTY_NOTICES.md
loop-uh ac64b1b4af
Some checks failed
Android CI / build (push) Has been cancelled
Модули: :core:model и :feature:{home,servers,routing,settings}
- :core:model: типы значений для UI (состояние VPN, профили, маршруты,
  приложения, диагностика, настройки, обновления) с прежними пакетами;
  типы обновлений вынесены из :app-updater, смешанные файлы разделены.
- :feature:*: экраны, презентеры и их JVM-тесты; *Route.kt, ViewModel,
  BuildConfig и QR-лаунчеры остаются в :app. Общие флаги, release notes,
  PresetPicker, DiagnosticShareButton — в :core:designsystem, форматтер
  задержки и ScreenshotPrivacy — в :core:ui-model.
- verify-project.sh: запрет зависимости :feature:* от :app и импорта рантайма
  VPN/ViewModel/AppContainer из feature/**; пути delay и AboutPage обновлены.
- CI и build-test-bundle запускают testDebugUnitTest всех модулей.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-14 22:37:48 +03:00

7.9 KiB

Third-party notices

sing-box-extended

  • Source: https://github.com/shtorm-7/sing-box-extended
  • Pinned commit: e8f6936480b7fa9738911e3e7fc2ec0d8a634a88
  • Android patchset manifest: core-patches/series.sha256
  • The exact patchset SHA-256 is recorded in core.properties and the diagnostic build identity.
  • License: GNU General Public License version 3 or later.
  • Copyright: 2022 nekohasekai and contributors.

Pinned source additionally states that no derivative work may use the name of, or imply association with, the original application without prior consent. Zapret KVN uses its own name and identity.

Release artifacts must include corresponding source/build instructions required by the license. The exact pinned license text, including the additional naming condition, is also retained as an application raw resource and as a CI core artifact. The patch is applied only after verifying the pinned checkout and patch hash, is recorded separately from the upstream revision, and is reversed after compilation.

Xray core

  • Source: https://github.com/XTLS/Xray-core
  • Module: github.com/xtls/xray-core@v1.260327.0 (v26.3.27).
  • Pinned commit: d2758a023cd7f4174a5a5fa4ff66e487d4342ba0.
  • License: Mozilla Public License 2.0, retained in res/raw/xray_core_license.txt.

The official VLESS implementation is linked into libbox.so. The local patchset adds the protected socket adapter and logger interface integration; original Xray protocol sources are not rewritten. sing-box remains the only routing, DNS and TUN owner. The corresponding integration source and build instructions are included in core-patches/0004-protocol-runtime-modules.patch.

Hysteria core and extras

  • Source: https://github.com/HyNetworks/hysteria
  • Pinned tag: app/v2.13.0
  • Pinned commit: ca8fbd874fd6ca82413948de6dc5924405e103e1
  • Modules: github.com/apernet/hysteria/core/v2@v2.13.0 and github.com/apernet/hysteria/extras/v2@v2.13.0.
  • License: MIT.
  • Copyright: 2023 Toby.

The official client is linked into the common libbox.so and uses the sing-box Android packet dialer. It does not create a sidecar process, local SOCKS proxy, or second TUN.

Copyright 2023 Toby

Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in
the Software without restriction, including without limitation the rights to
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
of the Software, and to permit persons to whom the Software is furnished to do
so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

Android WireGuard data-plane

Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in
the Software without restriction, including without limitation the rights to
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
of the Software, and to permit persons to whom the Software is furnished to do
so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

SagerNet sing-geoip rule-set

The APK contains only the pinned RU IP binary rule-set. Its SHA-256 and source URL are recorded in app/src/main/assets/rule-sets/manifest.json; the upstream license is retained as app/src/main/res/raw/sing_geoip_license.txt.

DB-IP IP to Country Lite

The application packages a compact, derived copy of this table (app/src/main/assets/geoip/country.bin, built by scripts/build-geoip-country.py; source month, SHA-256 and sizes in app/src/main/assets/geoip/manifest.json). It is used offline, only to show a country flag next to a server from the server's own IP address. The table is refreshed only together with the application; nothing is downloaded at runtime. The derived copy merges neighbouring ranges of one country and keeps IPv6 ranges at /48 precision.

The generated libbox.aar also contains the Go modules resolved by the pinned go.mod and go.sum. Their exact source versions are therefore reproducible from the commit above. Their original copyright and license files remain in the downloaded module sources under core-build/gopath/pkg/mod; release source bundles must preserve them.

AndroidX and Jetpack Compose

The app uses AndroidX Core, Activity, Compose UI, Foundation, Material icons and Material 3. These components are distributed under the Apache License 2.0. License resources supplied by these runtime libraries are not stripped from the APK.

Kotlin and Compose compiler

Noto Color Emoji (flags subset)

Flags in server names are drawn with a flags-only subset of Noto Color Emoji (core/designsystem/src/main/res/font/noto_flags.ttf), so they look the same on firmware whose system emoji font has no flag glyphs.

  • Source: https://github.com/googlefonts/noto-emoji
  • Upstream version: 2.051 (noto-emoji 20250818)
  • Copyright: 2013 Google LLC.
  • License: SIL Open Font License 1.1, retained in res/raw/noto_emoji_license.txt.

ZXing Android Embedded and ZXing Core

They are used only by the explicit QR import action. The Apache 2.0 license text is retained in the APK under META-INF together with the notices here.

Gradle Wrapper

  • Source: https://github.com/gradle/gradle
  • License: Apache License 2.0.
  • The checked-in wrapper JAR downloads only the distribution and checksum pinned in gradle/wrapper/gradle-wrapper.properties.

JUnit 4

JUnit is used only for local/CI tests and is not shipped in the APK.