راهنمای نصب
این مخزن در حال حاضر روی این سناریوها تمرکز دارد:
- ShadowNet Inside: لینوکس (x86_64 یا arm64) و اندروید (Termux برای توسعه)
- ShadowNet Outside: هر سیستمعامل با اینترنت پایدار (Linux/macOS/Windows)
برچسبهای build
- Inside:
-tags inside - Outside:
-tags outside
مسیر پیشنهادی برای لینوکس (MVP)
برای مسیر کامل MVP روی لینوکس (وارد کردن bundle، انتخاب پروفایل، ساخت کانفیگ، اعتبارسنجی/اجرای sing-box):
پیشنیازهای توسعه
- Go 1.25+
این مخزن نسخه ابزار Go را در go.mod از طریق toolchain پین میکند. اگر Go شما از toolchain پشتیبانی کند، go نسخه پینشده را خودکار دانلود میکند.
ابزارهای اختیاری:
sing-box(برای اجرای واقعی اتصال)- یک runtime محلی LLM (مثل llama.cpp) برای مسیر advisor محدود
ساخت (Build)
bash
mkdir -p bin
go build -tags inside -ldflags="-s -w" -o bin/shadownet-inside ./cmd/inside/
go build -tags outside -ldflags="-s -w" -o bin/shadownet-outside ./cmd/outside/اجرای تستها
- ویندوز:
``powershell .\scripts\run_tests.ps1 ``
- لینوکس/مک:
``bash ./scripts/run_tests.sh ``
بوتاسترپ اولیه seed برای Inside
Inside از یک API مرکزی دانلود نمیکند. seed اولیه از مسیرهای زیر میآید:
- Signal از یک کمککننده مورد اعتماد که Outside را اجرا میکند (
snb://v2:bundle) - QR code (حضوری)
- Bluetooth mesh (از دستگاههای Inside نزدیک در زمان blackout)
نکات اندروید
این مخزن فعلاً APK تولیدی اندروید منتشر نمیکند. برای توسعه، Inside را بهصورت CLI در Termux اجرا کنید و wrapper (VPN/foreground-service) را یک پروژه جداگانه اندروید در نظر بگیرید.