Портирование программы на линукс (debian) (vibe-kanban 5dca5182)

Теперь, когда я убедился что программа хорошо работает на windows, мы будем ее портировать на debian.

как я это вижу:
Ты создашь папку внутри проекта и будешь писать его там (чтобы не поломать текущий)

1. **Удалить Windows-специфичные зависимости** (`golang.org/x/sys/windows/registry` и всё, что связано с реестром).
2. **Заменить `sing-box.exe` → `sing-box`** (бинарник для Linux: https://github.com/SagerNet/sing-box/releases/download/v1.12.16/sing-box-1.12.16-linux-amd64.tar.gz) и реализовать автозагрузку с latest с источника.
3. **Убрать скрытие окна процесса** (`HideWindow` — это Windows-only).
4. **Реализовать управление системным прокси в Linux** (или отказаться от него, если не критично).
5. **Собрать проект под Linux** (cross-compilation или нативно).
6. **Подготовить структуру папок и права**.
7. **(Опционально) Упаковать в `.deb`**

И главное - не редактируй текущий windows проект - он не требует вмешательств!
This commit is contained in:
Vibe Kanban
2026-01-16 23:53:16 +03:00
parent 9fbc7066cd
commit fbc595f568
11 changed files with 1638 additions and 0 deletions

51
linux-port/README.md Normal file
View File

@@ -0,0 +1,51 @@
# HamyVPNClient for Linux
This is the Linux port of the HamyVPNClient, a GUI application for managing VLESS connections using sing-box.
## Features
- Cross-platform VLESS client using sing-box
- System proxy management for Linux (GNOME/KDE)
- Configuration management with import/export capabilities
- Auto-downloading of sing-box binaries
## Prerequisites
- Go 1.21 or higher
- For GUI: X11, Wayland, or other supported display servers
- For proxy management: gsettings (GNOME) or kwriteconfig5 (KDE)
## Building
```bash
# Navigate to the project directory
cd linux-port
# Install dependencies
go mod tidy
# Build the application
go build -o hamy-vpn-client .
# Or run directly
go run main.go
```
## Usage
1. Run the application: `./hamy-vpn-client`
2. Click "Конфигурации" to add VLESS URLs
3. Select a configuration and click "Подключить" to establish a connection
## Auto-download
The application will automatically download the appropriate sing-box binary for your system if not already present in the `bin/` directory.
## Known Issues
- May require elevated privileges to set system proxy in some environments
- Works best with GNOME and KDE desktop environments
## License
MIT