scripte/client_install_programme.sh

169 lines
5.2 KiB
Bash

#!/bin/bash
# Farben für die Ausgabe definieren
GREEN='\033[0;32m'
RED='\033[0;31m'
NC='\033[0m' # Keine Farbe
# Datei und neuer Inhalt definieren
SOURCES_FILE="/etc/apt/sources.list"
NEW_CONTENT="deb http://deb.debian.org/debian bookworm main contrib non-free
deb-src http://deb.debian.org/debian bookworm main contrib non-free
deb http://deb.debian.org/debian-security/ bookworm-security main contrib non-free
deb-src http://deb.debian.org/debian-security/ bookworm ecurity main contrib non-free
deb http://deb.debian.org/debian bookworm-updates main contrib non-free
deb-src http://deb.debian.org/debian bookworm-updates main contrib non-free
deb http://www.ecodms.de/ecodms_240264/bookworm /
deb http://deb.debian.org/debian bookworm-backports main"
# Datei leeren und neuen Inhalt hinzufügen
echo -e "${GREEN}Leere die Datei ${SOURCES_FILE} und füge neuen Inhalt hinzu...${NC}"
echo "$NEW_CONTENT" > "$SOURCES_FILE"
# Bestätigung der Änderung
if [[ $? -eq 0 ]]; then
echo -e "${GREEN}Die Datei ${SOURCES_FILE} wurde erfolgreich aktualisiert.${NC}"
else
echo -e "${RED}Fehler beim Aktualisieren der Datei ${SOURCES_FILE}.${NC}"
exit 1
fi
# GPG-Schlüssel hinzufügen
wget -qO /etc/apt/trusted.gpg.d/ecodms.asc http://www.ecodms.de/gpg/ecodms.key || { echo "Download des GPG-Schlüssels fehlgeschlagen"; exit 1; }
# Paketlisten aktualisieren
echo -e "${GREEN}Aktualisiere die Paketliste...${NC}"
apt update
# Abschlussmeldung
echo -e "${GREEN}Die Konfiguration der Repositories wurde abgeschlossen!${NC}"
# APT-Pakete
APT_PACKAGES=(
"vlc"
"thunderbird"
"remmina"
"okular"
"libreoffice"
"gimp"
"nextcloud-desktop"
"gnucash"
"chromium"
"curl"
"ttf-mscorefonts-installer"
"ecodmsclient"
"ecodmsprinter"
"wine64"
"terminator"
"xpipe"
)
# Flatpak-Pakete
FLATPAK_PACKAGES=(
"com.spotify.Client"
"com.bitwarden.desktop"
"com.github.philip_scott.notes-up"
"com.rustdesk.RustDesk"
)
# Alternativen für nicht verfügbare Pakete
ALTERNATIVES=(
"whatsapp-linux-app: Alternative: WhatsApp Web im Browser verwenden."
"chatgpt-desktop: Alternative: ChatGPT über die Weboberfläche nutzen."
)
# System aktualisieren
echo -e "${GREEN}System wird aktualisiert...${NC}"
sudo apt update && sudo apt upgrade -y
# APT-Pakete installieren
echo -e "${GREEN}APT-Pakete werden installiert...${NC}"
for PACKAGE in "${APT_PACKAGES[@]}"; do
if sudo apt install -y "$PACKAGE"; then
echo -e "${GREEN}$PACKAGE erfolgreich installiert.${NC}"
else
echo -e "${RED}Fehler bei der Installation von $PACKAGE.${NC}"
fi
done
# Flatpak installieren, falls nicht vorhanden
if ! command -v flatpak &> /dev/null; then
echo -e "${GREEN}Flatpak wird installiert...${NC}"
sudo apt install -y flatpak
# Flathub-Repository hinzufügen
sudo flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
fi
# Flatpak-Pakete installieren
echo -e "${GREEN}Flatpak-Pakete werden installiert...${NC}"
for PACKAGE in "${FLATPAK_PACKAGES[@]}"; do
if flatpak install -y flathub "$PACKAGE"; then
echo -e "${GREEN}$PACKAGE erfolgreich installiert.${NC}"
else
echo -e "${RED}Fehler bei der Installation von $PACKAGE.${NC}"
fi
done
# Alternativen anzeigen
echo -e "${GREEN}Alternativen für nicht verfügbare Pakete:${NC}"
for ALT in "${ALTERNATIVES[@]}"; do
echo -e "${GREEN}$ALT${NC}"
done
echo -e "${GREEN}Installation abgeschlossen.${NC}"
# Unnötige Pakete entfernen
apt-get autoremove -y
# Verzeichnis erstellen für Downloads und entpackte Pakete
mkdir -p ~/deb_packages
# Zip-Datei von Nextcloud herunterladen
wget -O folder.zip "https://next.zell-cloud.de/nextcloud/s/6BHNNj9WpoAFpoW/download"
wget -O ~/deb_packages/shadow-amd64.deb https://update.shadow.tech/launcher/prod/linux/x86_64/shadow-amd64.deb
wget -O ~/deb_packages/Installer_Fakturama_linux_x64_2.1.3c.deb https://files.fakturama.info/release/v2.1.3/Installer_Fakturama_linux_x64_2.1.3c.deb
wget -O ~/deb_packages/nomachine_8.14.2_1_amd64.deb https://download.nomachine.com/download/8.14/Linux/nomachine_8.14.2_1_amd64.deb
wget -O ~/deb_packages/xpipe-installer-linux-x86_64.deb https://objects.githubusercontent.com/github-production-release-asset-2e65be/593867048/e0514e81-15c5-481c-a489-9b366079eaeb?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=releaseassetproduction%2F20241228%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20241228T214932Z&X-Amz-Expires=300&X-Amz-Signature=962f44460657a7026f5746ae6595b273424e90d8b8e3bf55475280e55880dd22&X-Amz-SignedHeaders=host&response-content-disposition=attachment%3B%20filename%3Dxpipe-installer-linux-x86_64.deb&response-content-type=application%2Foctet-stream
# Nur die .deb-Dateien aus dem Zip-Archiv entpacken
unzip -j folder.zip "*.deb" -d ~/deb_packages
# Zip-Datei löschen, um Speicherplatz zu sparen
rm -f folder.zip
# Auflisten der entpackten .deb-Pakete
ls ~/deb_packages/*.deb
# Einzelne Installation der .deb-Pakete mit Fehlerprüfung
for DEB_FILE in ~/deb_packages/*.deb; do
echo "Installiere $DEB_FILE..."
sudo apt install -y "$DEB_FILE" || echo "Fehler bei der Installation von $DEB_FILE"
done
# Optional: Entfernen der .deb-Dateien nach erfolgreicher Installation
rm -f ~/deb_packages/*.deb