feat(gui): add GUI (Test) implementation with documentation and admin support
- 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
This commit is contained in:
197
Markdown/README_BUILD.md
Normal file
197
Markdown/README_BUILD.md
Normal file
@@ -0,0 +1,197 @@
|
||||
# Инструкция по сборке
|
||||
|
||||
## ✅ 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 для демонстрации
|
||||
|
||||
---
|
||||
|
||||
**Успешного использования! 🎉**
|
||||
Reference in New Issue
Block a user