2026-02-23 00:55:11 +01:00
|
|
|
from conan import ConanFile
|
|
|
|
|
|
|
|
|
|
class AmneziaVPN(ConanFile):
|
|
|
|
|
settings = "os", "compiler", "build_type", "arch"
|
2026-03-03 01:29:03 +01:00
|
|
|
generators = "CMakeConfigDeps"
|
2026-02-23 00:55:11 +01:00
|
|
|
|
2026-03-16 13:24:02 +01:00
|
|
|
options = {
|
|
|
|
|
"macos_ne": [True, False]
|
|
|
|
|
}
|
|
|
|
|
default_options = {
|
|
|
|
|
"macos_ne": False
|
|
|
|
|
}
|
|
|
|
|
|
2026-02-23 00:55:11 +01:00
|
|
|
def requirements(self):
|
2026-02-24 11:51:18 +01:00
|
|
|
os = str(self.settings.os)
|
|
|
|
|
|
2026-03-16 13:24:02 +01:00
|
|
|
has_ne = os == "iOS" or (os == "Macos" and self.options.macos_ne)
|
|
|
|
|
has_service = os == "Windows" or os == "Linux" or (os == "Macos" and not has_ne)
|
2026-03-03 01:29:03 +01:00
|
|
|
|
|
|
|
|
if has_service:
|
|
|
|
|
if os == "Windows":
|
|
|
|
|
self.requires("awg-windows/1.0.0")
|
|
|
|
|
else:
|
|
|
|
|
self.requires("awg-go/0.2.16")
|
|
|
|
|
|
2026-02-24 11:51:18 +01:00
|
|
|
self.requires("amnezia-xray-bindings/1.1.0")
|
2026-03-03 01:29:03 +01:00
|
|
|
self.requires("tun2socks/2.6.0")
|
|
|
|
|
self.requires("openvpn/2.7.0")
|
2026-03-17 15:22:22 +01:00
|
|
|
self.requires("v2ray-rules-dat/[*]")
|
2026-02-24 11:51:18 +01:00
|
|
|
|
2026-03-16 13:24:02 +01:00
|
|
|
if has_ne:
|
2026-02-24 11:51:18 +01:00
|
|
|
self.requires("awg-apple/2.0.1")
|
2026-03-16 13:24:02 +01:00
|
|
|
self.requires("hev-socks5-tunnel/2.14.4", options={"as_framework": True})
|
|
|
|
|
self.requires("openvpnadapter/1.0.0")
|
2026-03-03 01:29:03 +01:00
|
|
|
|
|
|
|
|
if os == "Android":
|
|
|
|
|
self.requires("amnezia-libxray/1.0.0")
|
|
|
|
|
self.requires("awg-android/1.1.7")
|
2026-03-09 22:55:05 +03:00
|
|
|
self.requires("openvpn-pt-android/1.0.0")
|
2026-03-03 01:29:03 +01:00
|
|
|
|
2026-03-16 13:24:02 +01:00
|
|
|
self.requires("libssh/0.11.3@amnezia")
|
2026-03-03 01:29:03 +01:00
|
|
|
self.requires("openssl/3.5.5")
|