Skip to content

Commit 1749937

Browse files
author
Stefan
committed
Fix: start-windowsbridge.sh now launches GUI instead of installer
1 parent 610e29e commit 1749937

1 file changed

Lines changed: 51 additions & 125 deletions

File tree

start-windowsbridge.sh

Lines changed: 51 additions & 125 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,10 @@
44
# See LICENSE file for full license details.
55
#
66
# WindowsBridge Starter-Datei
7-
# Ermöglicht Ein-Klick-Installation durch Doppelklick im Dateimanager
7+
# Startet die grafische Benutzeroberfläche (GUI) für die Installation
88

9-
set -euo pipefail
9+
# Setze error handling aber erlaube fehler in einzelnen commands
10+
set +e
1011

1112
# ═══════════════════════════════════════════════════════════════════════════
1213
# WindowsBridge One-Click Starter
@@ -21,6 +22,7 @@ readonly NC='\033[0m' # No Color
2122

2223
# Projektverzeichnis automatisch ermitteln
2324
readonly SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
25+
readonly GUI_LAUNCHER="${SCRIPT_DIR}/modules/gui_launcher.py"
2426
readonly INSTALLER_SCRIPT="${SCRIPT_DIR}/installer.sh"
2527
readonly LOG_DIR="${HOME}/.config/windowsbridge"
2628
readonly LOG_FILE="${LOG_DIR}/starter.log"
@@ -70,146 +72,63 @@ handle_error() {
7072
trap 'handle_error ${LINENO}' ERR
7173

7274
# ═══════════════════════════════════════════════════════════════════════════
73-
# Vorbedingungen prüfen
75+
# Graphische Benutzeroberfläche starten
7476
# ═══════════════════════════════════════════════════════════════════════════
7577

76-
check_requirements() {
77-
print_info "Überprüfe Vorbedingungen..."
78-
79-
# Überprüfe ob Bash verfügbar ist
80-
if ! command -v bash &>/dev/null; then
81-
print_error "Bash nicht gefunden. Bitte installieren Sie Bash 4.0+"
82-
exit 1
83-
fi
84-
85-
# Überprüfe Bash-Version
86-
local bash_version="${BASH_VERSINFO[0]}.${BASH_VERSINFO[1]}"
87-
if [[ "${BASH_VERSINFO[0]}" -lt 4 ]]; then
88-
print_error "Bash ${bash_version} gefunden. Mindestens Bash 4.0 erforderlich."
89-
exit 1
90-
fi
91-
92-
print_success "Bash ${bash_version} verfügbar"
93-
94-
# Überprüfe ob installer.sh vorhanden ist
95-
if [[ ! -f "${INSTALLER_SCRIPT}" ]]; then
96-
print_error "installer.sh nicht gefunden in: ${SCRIPT_DIR}"
97-
log "ERROR" "installer.sh nicht found at ${INSTALLER_SCRIPT}"
98-
exit 1
99-
fi
100-
101-
print_success "installer.sh gefunden"
78+
start_gui() {
79+
print_header
10280

103-
# Log-Verzeichnis erstellen
81+
# Log-Verzeichnis erstellen falls nicht vorhanden
10482
if [[ ! -d "${LOG_DIR}" ]]; then
10583
mkdir -p "${LOG_DIR}"
10684
print_info "Log-Verzeichnis erstellt: ${LOG_DIR}"
10785
fi
10886

109-
log "INFO" "Vorbedingungen erfolgreich überprüft"
110-
}
111-
112-
# ═══════════════════════════════════════════════════════════════════════════
113-
# Installer-Menü anzeigen
114-
# ═══════════════════════════════════════════════════════════════════════════
115-
116-
show_menu() {
117-
echo ""
118-
echo -e "${BLUE}Wähle ein Installationsprofil:${NC}"
119-
echo ""
120-
echo " 1) Minimal - Grundlegende Funktionalität"
121-
echo " 2) Standard - Häufige Anwendungsfälle"
122-
echo " 3) Gaming - Vollständiger Gaming-Support (empfohlen)"
123-
echo " 4) Full - Alle verfügbaren Features"
124-
echo " 5) Custom - Benutzerdefinierte Installation"
125-
echo " q) Abbrechen"
126-
echo ""
127-
read -p "Deine Wahl [1-5, q]: " choice
128-
129-
case "${choice}" in
130-
1) return 0 ;; # minimal
131-
2) return 0 ;; # standard
132-
3) return 0 ;; # gaming
133-
4) return 0 ;; # full
134-
5) return 0 ;; # custom
135-
q)
136-
print_info "Installation abgebrochen"
137-
log "INFO" "User cancelled installation"
138-
exit 0
139-
;;
140-
*)
141-
print_error "Ungültige Wahl. Bitte erneut versuchen."
142-
show_menu
143-
;;
144-
esac
145-
}
146-
147-
# ═══════════════════════════════════════════════════════════════════════════
148-
# Installer ausführen
149-
# ═══════════════════════════════════════════════════════════════════════════
150-
151-
run_installer() {
152-
print_header
153-
154-
check_requirements
155-
156-
echo ""
157-
print_info "Installation wird vorbereitet..."
158-
log "INFO" "Starting WindowsBridge installer from ${INSTALLER_SCRIPT}"
87+
log "INFO" "Starte WindowsBridge GUI"
15988

160-
# Bestätige Installation
161-
echo ""
162-
read -p "Installation fortfahren? (j/n): " confirm
89+
# Überprüfe ob Python verfügbar ist
90+
if ! command -v python3 &>/dev/null; then
91+
print_error "Python3 nicht gefunden. Bitte installieren Sie Python 3.6+"
92+
log "ERROR" "Python3 not found"
93+
exit 1
94+
fi
16395

164-
if [[ "${confirm,,}" != "j" ]]; then
165-
print_info "Installation abgebrochen"
166-
log "INFO" "Installation cancelled by user"
167-
exit 0
96+
# Überprüfe ob GUI-Launcher vorhanden ist
97+
if [[ ! -f "${GUI_LAUNCHER}" ]]; then
98+
print_error "gui_launcher.py nicht gefunden in: ${GUI_LAUNCHER}"
99+
log "ERROR" "GUI launcher not found at ${GUI_LAUNCHER}"
100+
exit 1
168101
fi
169102

170-
echo ""
171-
print_info "Starte installer.sh..."
103+
print_info "Starte grafische Benutzeroberfläche..."
104+
print_info "GUI-Launcher: ${GUI_LAUNCHER}"
172105

173-
# Führe installer.sh aus und zeige Ausgabe
174-
if bash "${INSTALLER_SCRIPT}"; then
175-
echo ""
176-
print_success "Installation erfolgreich abgeschlossen!"
177-
log "INFO" "Installation completed successfully"
178-
179-
echo ""
180-
echo -e "${BLUE}════════════════════════════════════════════════════════════════════════════════${NC}"
181-
echo -e "${GREEN}🎉 Willkommen bei WindowsBridge v1.0.0! 🎉${NC}"
182-
echo -e "${BLUE}════════════════════════════════════════════════════════════════════════════════${NC}"
183-
184-
echo ""
185-
echo "Nächste Schritte:"
186-
echo ""
187-
echo "1. Verifiziere die Installation:"
188-
echo " $ make test"
189-
echo ""
190-
echo "2. Starte die Spiel-Konfiguration:"
191-
echo " $ make gui"
192-
echo ""
193-
echo "3. Lies die Dokumentation:"
194-
echo " $ cat QUICKSTART.md"
195-
echo ""
196-
echo "Dokumentation: ${SCRIPT_DIR}/README.md"
197-
echo "Log-Dateien: ${LOG_DIR}/"
106+
# Starte GUI
107+
cd "${SCRIPT_DIR}"
108+
109+
if python3 "${GUI_LAUNCHER}"; then
198110
echo ""
199-
200-
return 0
111+
print_success "WindowsBridge GUI beendet"
112+
log "INFO" "GUI launcher completed successfully"
113+
exit 0
201114
else
202-
print_error "Installation fehlgeschlagen!"
203-
log "ERROR" "Installation failed with exit code $?"
115+
local exit_code=$?
116+
print_error "GUI-Launcher fehlgeschlagen mit Exit-Code: ${exit_code}"
117+
log "ERROR" "GUI launcher failed with exit code ${exit_code}"
204118

119+
# Fallback zu Terminal-Installer wenn GUI fehlschlägt
205120
echo ""
206-
echo -e "${YELLOW}Fehlerbehebung:${NC}"
207-
echo "1. Überprüfe die Log-Datei: ${LOG_FILE}"
208-
echo "2. Konsultiere die Dokumentation: ${SCRIPT_DIR}/docs/troubleshooting.md"
209-
echo "3. Eröffne ein Issue: https://github.com/windowsbridge/windowsbridge/issues"
210-
echo ""
121+
print_info "Fallback: Starte Terminal-basierter Installer..."
211122

212-
return 1
123+
if bash "${INSTALLER_SCRIPT}"; then
124+
print_success "Installation erfolgreich abgeschlossen!"
125+
log "INFO" "Fallback installer completed successfully"
126+
exit 0
127+
else
128+
print_error "Installation fehlgeschlagen!"
129+
log "ERROR" "Fallback installer failed"
130+
exit 1
131+
fi
213132
fi
214133
}
215134

@@ -218,7 +137,14 @@ run_installer() {
218137
# ═══════════════════════════════════════════════════════════════════════════
219138

220139
main() {
221-
run_installer
140+
# Überprüfe ob GUI-Launcher existiert
141+
if [[ ! -f "${GUI_LAUNCHER}" ]]; then
142+
print_error "Kritischer Fehler: gui_launcher.py nicht gefunden"
143+
print_error "Erwartet: ${GUI_LAUNCHER}"
144+
exit 1
145+
fi
146+
147+
start_gui
222148
}
223149

224150
# Script ausführen

0 commit comments

Comments
 (0)