Files
PulseGate-GUI/README.md
Pepe44DEV dcafc1e7c1 Project Initialisation
added Project files
2026-05-03 21:26:10 +02:00

125 lines
2.4 KiB
Markdown

# PulseGate Desktop
PulseGate Desktop ist eine grafische Desktop-Variante des PulseGate SSH Managers. Die App verwaltet SSH-Server, nutzt dieselbe YAML-Konfiguration wie die bestehende TUI und startet Verbindungen in einem lokalen Terminal-Emulator.
## Features
- Desktop-UI ohne Browser
- Serverliste mit Suche
- Server hinzufügen, bearbeiten und löschen
- SSH-Verbindung per Button starten
- SSH-Befehl pro Server anzeigen
- Terminal-Settings verwalten
- Quick Commands anzeigen
- Gemeinsame Konfiguration mit PulseGate TUI
## Voraussetzungen
- Linux Desktop-Umgebung
- Python 3 mit `tkinter`
- Python-Paket `PyYAML`
- `ssh`
- ein unterstützter Terminal-Emulator:
- `kitty`
- `alacritty`
- `konsole`
- `gnome-terminal`
- `xfce4-terminal`
- `xterm`
Für die optionale Web-Variante wird zusätzlich Go benötigt.
## Start
Desktop-App starten:
```bash
cd /home/pascal/Projekte/PulseGate-GUI
./pulsegate-desktop
```
Optional kann ein eigener Config-Pfad übergeben werden:
```bash
./pulsegate-desktop /pfad/zur/config.yaml
```
## Konfiguration
Standardmäßig liest und schreibt PulseGate Desktop diese Datei:
```text
~/.config/pulsegate/config.yaml
```
Beispiel:
```yaml
settings:
theme: neon-green
terminal:
term: xterm-256color
enable_kitty_fix: true
servers:
- name: Unraid
host: 10.0.0.15
user: root
port: 22
group: Homelab
auth: password
key: ""
password_id: unraid-root
kitty_fix: true
quick_commands:
- name: Disk Usage
command: df -h
```
## Web-Variante
Im Projekt liegt zusätzlich noch eine einfache lokale Web-Variante:
```bash
go run ./cmd/pulsegate-gui
```
Danach öffnen:
```text
http://127.0.0.1:8090
```
## Projektstruktur
```text
.
├── cmd/pulsegate-gui/ # optionaler Go-Webserver
├── desktop/ # Python/Tk Desktop-App
├── internal/config/ # Go-Konfigurationslogik
├── internal/models/ # Go-Datenmodelle
├── web/ # optionale Web-Oberfläche
├── go.mod
├── pulsegate-desktop # Launcher für die Desktop-App
└── README.md
```
## Entwicklung
Python-Syntax prüfen:
```bash
python3 -m py_compile desktop/pulsegate_desktop.py
```
Go-Code prüfen:
```bash
go test ./...
```
## Hinweis
Die Desktop-App startet SSH in einem separaten lokalen Terminal-Fenster. Passwortabfragen und interaktive SSH-Sessions laufen dort direkt im Terminal.