- Add GUI (Test) module with Fyne-based interface (internal/gui/gui.go, internal/gui/server.go) - Add CLI monitoring capability (internal/cli/monitor.go) - Add main_cli.go entry point for CLI-only builds - Add comprehensive documentation suite covering setup, build, quick start, and changelog - Add admin manifest (admin.manifest) for Windows UAC elevation support - Add rsrc.syso.json configuration for resource embedding - Update .gitignore to exclude build scripts (*.bat, *.sh) - Update main.go and cli.go to support dual GUI (Test)/CLI modes - Update README.md with new project information - Enables users to build and run both GUI (Test)and CLI versions with proper admin privileges on Windows
198 lines
5.1 KiB
Markdown
198 lines
5.1 KiB
Markdown
# Инструкция по сборке
|
||
|
||
## ✅ CLI версия (Работает сейчас)
|
||
|
||
CLI версия собрана и готова к использованию!
|
||
|
||
### Запуск CLI
|
||
|
||
```bash
|
||
# Windows
|
||
vpn-client-cli.exe
|
||
|
||
# Или используйте старую версию
|
||
vpn-client.exe
|
||
```
|
||
|
||
### Сборка CLI (если нужно пересобрать)
|
||
|
||
```bash
|
||
build_cli_only.bat
|
||
```
|
||
|
||
**Преимущества CLI:**
|
||
- ✅ Не требует GCC
|
||
- ✅ Меньший размер (~10 MB)
|
||
- ✅ Быстрая сборка
|
||
- ✅ Весь функционал VPN клиента
|
||
- ✅ Работает на серверах без GUI
|
||
|
||
---
|
||
|
||
## 🎨 GUI версия (Требует GCC)
|
||
|
||
GUI версия требует установки GCC компилятора.
|
||
|
||
### Шаг 1: Установите GCC
|
||
|
||
**Вариант A: TDM-GCC (Рекомендуется)**
|
||
1. Скачайте: https://jmeubank.github.io/tdm-gcc/download/
|
||
2. Установите `tdm64-gcc-10.3.0-2.exe`
|
||
3. Отметьте "Add to PATH"
|
||
4. Перезапустите терминал
|
||
|
||
**Вариант B: MSYS2**
|
||
1. Установите MSYS2: https://www.msys2.org/
|
||
2. Выполните: `pacman -S mingw-w64-x86_64-gcc`
|
||
3. Добавьте в PATH: `C:\msys64\mingw64\bin`
|
||
|
||
**Проверка:**
|
||
```bash
|
||
gcc --version
|
||
```
|
||
|
||
### Шаг 2: Соберите GUI
|
||
|
||
```bash
|
||
# Инициализация (первый раз)
|
||
init_gui.bat
|
||
|
||
# Сборка
|
||
build_gui.bat
|
||
|
||
# Результат: vpn-client-gui.exe
|
||
```
|
||
|
||
### Запуск GUI
|
||
|
||
```bash
|
||
# GUI режим (по умолчанию)
|
||
vpn-client-gui.exe
|
||
|
||
# CLI режим
|
||
vpn-client-gui.exe --cli
|
||
```
|
||
|
||
**Преимущества GUI:**
|
||
- 🎨 Современный интерфейс
|
||
- 📊 Визуальный статус
|
||
- 🧪 Графическое тестирование
|
||
- 📈 Статистика в реальном времени
|
||
- 🔄 Автообновление статуса
|
||
|
||
---
|
||
|
||
## 📦 Что уже работает
|
||
|
||
### ✅ Собрано и готово:
|
||
- `vpn-client-cli.exe` - CLI версия (работает!)
|
||
- `vpn-client.exe` - старая CLI версия (работает!)
|
||
|
||
### 📋 Доступный функционал:
|
||
1. **WireGuard**
|
||
- Добавление конфигов
|
||
- Подключение/отключение
|
||
- Статистика трафика
|
||
|
||
2. **VLESS**
|
||
- Добавление конфигов
|
||
- Подключение через Xray
|
||
- Тестирование серверов (ping)
|
||
- SOCKS5 прокси: 127.0.0.1:10808
|
||
|
||
3. **Подписки**
|
||
- Добавление подписок
|
||
- Автообновление конфигов
|
||
- Массовое тестирование серверов
|
||
|
||
4. **Логирование**
|
||
- Детальные логи в папке `logs/`
|
||
- Логи трафика
|
||
- Логи ошибок
|
||
|
||
---
|
||
|
||
## 🚀 Быстрый старт (CLI)
|
||
|
||
```bash
|
||
# 1. Запустите CLI
|
||
vpn-client-cli.exe
|
||
|
||
# 2. Выберите протокол
|
||
# - WireGuard (1)
|
||
# - VLESS (2)
|
||
# - Подписки (3)
|
||
|
||
# 3. Добавьте конфиг или подписку
|
||
|
||
# 4. Подключитесь
|
||
|
||
# 5. Готово!
|
||
```
|
||
|
||
---
|
||
|
||
## 📊 Сравнение версий
|
||
|
||
| Функция | CLI | GUI |
|
||
|---------|-----|-----|
|
||
| Размер | ~10 MB | ~28 MB |
|
||
| Требует GCC | ❌ | ✅ |
|
||
| WireGuard | ✅ | ✅ |
|
||
| VLESS | ✅ | ✅ |
|
||
| Подписки | ✅ | ✅ |
|
||
| Тестирование | ✅ | ✅ |
|
||
| Визуальный статус | ❌ | ✅ |
|
||
| Графики | ❌ | ✅ |
|
||
| Работает на сервере | ✅ | ❌ |
|
||
| Работает без X11 | ✅ | ❌ |
|
||
|
||
---
|
||
|
||
## 🔧 Устранение проблем
|
||
|
||
### "gcc not found"
|
||
- Установите GCC (см. выше)
|
||
- Или используйте CLI версию
|
||
|
||
### "cannot open display"
|
||
- Используйте CLI версию
|
||
- Или запустите с `--cli` флагом
|
||
|
||
### Проблемы с подключением
|
||
1. Проверьте конфигурацию
|
||
2. Используйте тестирование (ping)
|
||
3. Проверьте логи в `logs/`
|
||
4. Убедитесь что Xray в папке `xray/`
|
||
|
||
---
|
||
|
||
## 📚 Документация
|
||
|
||
- `README.md` - Основная документация
|
||
- `GUI_GUIDE.md` - Руководство по GUI
|
||
- `QUICK_START_GUI.md` - Быстрый старт GUI
|
||
- `INSTALL_GCC_WINDOWS.md` - Установка GCC
|
||
- `BUILD_INSTRUCTIONS.md` - Детальные инструкции
|
||
- `EXAMPLES.md` - Примеры использования
|
||
|
||
---
|
||
|
||
## 💡 Рекомендации
|
||
|
||
**Для обычного использования:**
|
||
- Установите GCC и соберите GUI версию
|
||
- Удобный интерфейс и визуальный контроль
|
||
|
||
**Для серверов/автоматизации:**
|
||
- Используйте CLI версию
|
||
- Меньше зависимостей, работает везде
|
||
|
||
**Для разработки:**
|
||
- Используйте обе версии
|
||
- CLI для тестов, GUI для демонстрации
|
||
|
||
---
|
||
|
||
**Успешного использования! 🎉**
|