- gui.py: Grafische Benutzeroberfläche - start_gui.sh/cmd: Startskripte für GUI - GUI_README.md: Installationsanleitung für Tkinter - Features: PDF-Verwaltung, Fortschrittsanzeige, Live-Log
67 lines
1.8 KiB
Bash
Executable File
67 lines
1.8 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
# PDF zu ICS Konverter - GUI Startskript
|
|
|
|
SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
|
|
cd "$SCRIPT_DIR"
|
|
|
|
# Finde Python-Executable
|
|
PYTHON_CMD=""
|
|
if command -v python3 &> /dev/null; then
|
|
PYTHON_CMD="python3"
|
|
elif command -v python &> /dev/null; then
|
|
PYTHON_CMD="python"
|
|
else
|
|
echo "❌ Fehler: Python nicht gefunden!"
|
|
echo "Bitte installieren Sie Python 3.6 oder höher."
|
|
exit 1
|
|
fi
|
|
|
|
echo "🐍 Nutze: $PYTHON_CMD"
|
|
|
|
# Erstelle venv wenn nicht vorhanden
|
|
if [ ! -d ".venv" ]; then
|
|
echo "📦 Python-Umgebung wird eingerichtet..."
|
|
$PYTHON_CMD -m venv .venv --upgrade-deps || {
|
|
echo "❌ venv konnte nicht erstellt werden"
|
|
exit 1
|
|
}
|
|
fi
|
|
|
|
# Nutze Python aus venv
|
|
PYTHON_VENV=".venv/bin/python"
|
|
|
|
# Überprüfe, ob Abhängigkeiten installiert sind
|
|
if ! $PYTHON_VENV -c "import pdfplumber" 2>/dev/null; then
|
|
echo "📚 Installiere Abhängigkeiten..."
|
|
|
|
if $PYTHON_VENV -m pip install -q pdfplumber icalendar pypdf2 pytz 2>/dev/null; then
|
|
echo "✓ Abhängigkeiten installiert"
|
|
else
|
|
echo "❌ Installation fehlgeschlagen"
|
|
echo "🔧 Versuche venv neu aufzubauen..."
|
|
rm -rf .venv
|
|
$PYTHON_CMD -m venv .venv --upgrade-deps || {
|
|
echo "❌ venv konnte nicht neu erstellt werden"
|
|
exit 1
|
|
}
|
|
$PYTHON_VENV -m pip install -q pdfplumber icalendar pypdf2 pytz || {
|
|
echo "❌ Abhängigkeiten konnten nicht installiert werden"
|
|
exit 1
|
|
}
|
|
echo "✓ venv neu erstellt"
|
|
fi
|
|
fi
|
|
|
|
# Starte die GUI
|
|
echo "🎨 Starte GUI..."
|
|
if [ -f "$PYTHON_VENV" ]; then
|
|
$PYTHON_VENV gui.py
|
|
else
|
|
echo "❌ Fehler: Python-Umgebung ist beschädigt"
|
|
echo "📁 Bitte löschen Sie das .venv Verzeichnis und versuchen Sie erneut:"
|
|
echo " rm -rf .venv"
|
|
echo " ./start_gui.sh"
|
|
exit 1
|
|
fi
|