Pepe44DEV dcafc1e7c1 Project Initialisation
added Project files
2026-05-03 21:26:10 +02:00
2026-05-03 21:26:10 +02:00
2026-05-03 21:26:10 +02:00
2026-05-03 21:26:10 +02:00
2026-05-03 21:26:10 +02:00
2026-05-03 21:26:10 +02:00
2026-05-03 21:26:10 +02:00
2026-05-03 21:26:10 +02:00
2026-05-03 21:26:10 +02:00

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:

cd /home/pascal/Projekte/PulseGate-GUI
./pulsegate-desktop

Optional kann ein eigener Config-Pfad übergeben werden:

./pulsegate-desktop /pfad/zur/config.yaml

Konfiguration

Standardmäßig liest und schreibt PulseGate Desktop diese Datei:

~/.config/pulsegate/config.yaml

Beispiel:

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:

go run ./cmd/pulsegate-gui

Danach öffnen:

http://127.0.0.1:8090

Projektstruktur

.
├── 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:

python3 -m py_compile desktop/pulsegate_desktop.py

Go-Code prüfen:

go test ./...

Hinweis

Die Desktop-App startet SSH in einem separaten lokalen Terminal-Fenster. Passwortabfragen und interaktive SSH-Sessions laufen dort direkt im Terminal.

Description
No description provided
Readme 66 KiB
Languages
Python 50.8%
JavaScript 17.2%
Go 16.6%
CSS 8.4%
HTML 6.8%
Other 0.2%