chore: Änderungen commited

This commit is contained in:
2025-06-16 09:14:15 +02:00
parent 0e5b66f4fe
commit 84f5ecc29d
5 changed files with 1304 additions and 19 deletions

View File

@ -56,10 +56,14 @@ create_directory_structure() {
mkdir -p "/etc/myp"
mkdir -p "/usr/local/bin/myp"
# Desktop-Konfiguration Verzeichnisse
mkdir -p "/home/$PROJECT_USER/.config"
mkdir -p "/home/$PROJECT_USER/.local/share/applications"
mkdir -p "/home/$PROJECT_USER/Desktop"
# Desktop-Konfiguration Verzeichnisse (nur wenn Benutzer existiert)
if id "$PROJECT_USER" &>/dev/null; then
mkdir -p "/home/$PROJECT_USER/.config"
mkdir -p "/home/$PROJECT_USER/.local/share/applications"
mkdir -p "/home/$PROJECT_USER/Desktop"
else
log "WARN" "Benutzer $PROJECT_USER existiert noch nicht - überspringe Benutzer-Verzeichnisse"
fi
log "INFO" "Verzeichnisstruktur erstellt"
}
@ -100,8 +104,14 @@ copy_project_files() {
set_file_permissions() {
log "INFO" "Setze Dateiberechtigungen..."
# Besitzer für Installationsverzeichnis
chown -R "$PROJECT_USER:$PROJECT_GROUP" "$INSTALL_PATH"
# Besitzer für Installationsverzeichnis (nur wenn Benutzer existiert)
if id "$PROJECT_USER" &>/dev/null; then
chown -R "$PROJECT_USER:$PROJECT_GROUP" "$INSTALL_PATH"
else
log "WARN" "Benutzer $PROJECT_USER existiert noch nicht - überspringe Besitzer-Änderung"
# Temporär root als Besitzer setzen
chown -R root:root "$INSTALL_PATH"
fi
# Grundlegende Verzeichnisberechtigungen
find "$INSTALL_PATH" -type d -exec chmod 755 {} \;
@ -118,12 +128,16 @@ set_file_permissions() {
chmod 755 "$INSTALL_PATH/uploads"
chmod 755 "$INSTALL_PATH/static"
# Log-Verzeichnis Berechtigungen
chown -R "$PROJECT_USER:$PROJECT_GROUP" "/var/log/myp"
# Log-Verzeichnis Berechtigungen (nur wenn Benutzer existiert)
if id "$PROJECT_USER" &>/dev/null; then
chown -R "$PROJECT_USER:$PROJECT_GROUP" "/var/log/myp"
chown -R "$PROJECT_USER:$PROJECT_GROUP" "/etc/myp"
else
log "WARN" "Benutzer $PROJECT_USER existiert noch nicht - überspringe Log/Config-Verzeichnis-Besitzer"
chown -R root:root "/var/log/myp"
chown -R root:root "/etc/myp"
fi
chmod 755 "/var/log/myp"
# Konfigurationsverzeichnis
chown -R "$PROJECT_USER:$PROJECT_GROUP" "/etc/myp"
chmod 755 "/etc/myp"
log "INFO" "Dateiberechtigungen gesetzt"
@ -443,10 +457,12 @@ export PYTHONHTTPSVERIFY=1
export CURL_CA_BUNDLE=/etc/ssl/certs/ca-certificates.crt
EOF
# Python-Konfiguration in Benutzer-Profile einbinden
if [[ -f "/home/$PROJECT_USER/.bashrc" ]]; then
# Python-Konfiguration in Benutzer-Profile einbinden (nur wenn Benutzer existiert)
if id "$PROJECT_USER" &>/dev/null && [[ -f "/home/$PROJECT_USER/.bashrc" ]]; then
echo "# Mercedes-Benz Python Certificate Configuration" >> "/home/$PROJECT_USER/.bashrc"
echo "source /etc/myp/python-certs.conf" >> "/home/$PROJECT_USER/.bashrc"
else
log "WARN" "Benutzer $PROJECT_USER/.bashrc nicht verfügbar - überspringe Benutzer-spezifische Python-Konfiguration"
fi
# Für systemweite Anwendung
@ -470,10 +486,12 @@ export NODE_EXTRA_CA_CERTS=/etc/ssl/certs/ca-certificates.crt
# export NODE_TLS_REJECT_UNAUTHORIZED=0
EOF
# Node.js-Konfiguration in Profile einbinden
if [[ -f "/home/$PROJECT_USER/.bashrc" ]]; then
# Node.js-Konfiguration in Profile einbinden (nur wenn Benutzer existiert)
if id "$PROJECT_USER" &>/dev/null && [[ -f "/home/$PROJECT_USER/.bashrc" ]]; then
echo "# Mercedes-Benz Node.js Certificate Configuration" >> "/home/$PROJECT_USER/.bashrc"
echo "source /etc/myp/nodejs-certs.conf" >> "/home/$PROJECT_USER/.bashrc"
else
log "WARN" "Benutzer $PROJECT_USER/.bashrc nicht verfügbar - überspringe Benutzer-spezifische Node.js-Konfiguration"
fi
log "INFO" "Node.js-Zertifikat-Konfiguration abgeschlossen"
@ -503,8 +521,8 @@ configure_chromium_certificates() {
}
EOF
# Chromium NSS-Datenbank für Benutzer konfigurieren
if command -v certutil >/dev/null 2>&1; then
# Chromium NSS-Datenbank für Benutzer konfigurieren (nur wenn Benutzer existiert)
if command -v certutil >/dev/null 2>&1 && id "$PROJECT_USER" &>/dev/null; then
local nss_dir="/home/$PROJECT_USER/.pki/nssdb"
mkdir -p "$nss_dir"
chown -R "$PROJECT_USER:$PROJECT_GROUP" "/home/$PROJECT_USER/.pki"
@ -523,6 +541,8 @@ EOF
done
log "INFO" "Mercedes-Zertifikate zu Chromium NSS-Datenbank hinzugefügt"
elif ! id "$PROJECT_USER" &>/dev/null; then
log "WARN" "Benutzer $PROJECT_USER existiert noch nicht - überspringe Chromium-NSS-Konfiguration"
else
log "WARN" "certutil nicht verfügbar, installiere NSS-Tools..."
DEBIAN_FRONTEND=noninteractive apt-get install -y libnss3-tools