Pepe44DEV 743b8d7a5e
Build Windows / build (push) Has been cancelled
Features: Quick Commands ausfuehrbar, Gruppenfilter, Duplizieren, Erreichbarkeits-Check, Themes, Kontextmenue
- Quick Commands lokal oder via SSH auf dem ausgewaehlten Server starten
- Server duplizieren, SSH-Befehl in die Zwischenablage kopieren
- Erreichbarkeits-Check pro Server (TCP, Thread-basiert) mit Statuspunkt
- Gruppenfilter-Chips in der Sidebar
- Themes: neon-green, ocean-blue, sunset-orange, cyber-purple
- Doppelklick verbindet, Rechtsklick-Kontextmenue, Shortcuts F5/Ctrl+N/Ctrl+S
- Quick-Commands-Seite mit Buttons, About-Dialog, Config-Ordner oeffnen
- Version 1.1.0
2026-09-06 22:57:39 +00: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-App zur Verwaltung von SSH-Servern. Die App nutzt eine YAML-Konfiguration, listet und verwaltet Server, zeigt SSH-Befehle an und startet Verbindungen im lokalen Terminal-Emulator.

Läuft nativ auf Linux und Windows. Für Windows liegt ein fertiger Installer-Build (PyInstaller + Inno Setup) bei.

Features

  • Desktop-UI ohne Browser
  • Serverliste mit Suche
  • Server hinzufügen, bearbeiten, duplizieren und löschen
  • Gruppenfilter in der Sidebar
  • SSH-Verbindung per Button, per Doppelklick oder über das Kontextmenü starten
  • Erreichbarkeits-Check pro Server (TCP-Ping)
  • SSH-Befehl pro Server anzeigen und in die Zwischenablage kopieren
  • Quick Commands ausführbar – lokal oder via SSH auf dem ausgewählten Server
  • Konfigurierbare Themes (neon-green, ocean-blue, sunset-orange, cyber-purple)
  • Tastenkürzel: F5 neu laden, Ctrl+N neuer Server, Ctrl+S speichern
  • Terminal-Settings verwalten, Config-Ordner direkt öffnen
  • Gemeinsame Konfiguration mit PulseGate TUI

Voraussetzungen

Linux

  • Python 3 mit tkinter
  • Python-Paket PyYAML
  • ssh
  • ein unterstützter Terminal-Emulator:
    • kitty, alacritty, konsole, gnome-terminal, xfce4-terminal oder xterm

Windows

  • Windows 10/11 (OpenSSH-Client ist standardmäßig integriert)
  • Optionale Terminal-Emulatoren (werden in dieser Reihenfolge erkannt):
    • wt (Windows Terminal)
    • cmd (Fallback, immer verfügbar)
    • powershell
  • Für den Installer-Build zusätzlich: Python 3 + Inno Setup 6

Start

Desktop-App starten:

./pulsegate-desktop

Direkt mit Python:

python3 desktop/pulsegate_desktop.py

Optional kann ein eigener Config-Pfad übergeben werden:

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

Konfiguration

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

  • Linux: ~/.config/pulsegate/config.yaml
  • Windows: %APPDATA%\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

Windows-Build und Installer

Auf einem Windows-Rechner:

  1. Build der EXE (erzeugt dist\PulseGate.exe):

    build_windows.bat
    
  2. Installer kompilieren – Inno Setup 6 öffnen mit:

    installer\installer.iss
    

    oder per Kommandozeile:

    iscc installer\installer.iss
    

    Ergebnis: installer\output\PulseGate-Setup-1.0.0.exe

Alternativ wird bei einem Tag v* (z. B. git tag v1.0.0 && git push --tags) automatisch per Gitea Actions ein Windows-Build inklusive Installer erstellt.

Web-Variante

Im Projekt liegt zusätzlich eine optionale lokale Web-Variante:

go run ./cmd/pulsegate-gui

Danach öffnen: http://127.0.0.1:8090

Projektstruktur

.
├── cmd/pulsegate-gui/       # optionale Go-Webvariante
├── desktop/                 # Python/Tk Desktop-App (Linux + Windows)
├── installer/               # Inno Setup Installer-Skript
├── assets/                  # App-Icon
├── scripts/                 # Icon-Generierung
├── web/                     # optionale Web-Oberfläche
├── build_windows.bat        # Windows-EXE-Build (PyInstaller)
├── requirements.txt         # Laufzeit-Abhängigkeiten
├── requirements-build.txt   # Build-Abhängigkeiten
├── pulsegate-desktop        # Linux-Launcher
└── 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.

S
Description
No description provided
Readme
122 KiB
2026-09-07 01:15:02 +02:00
Languages
Python 61.5%
JavaScript 12.2%
Go 11.8%
CSS 6%
HTML 4.8%
Other 3.7%