Compare commits
10 Commits
1a0a22569f
...
af2426aad0
| Author | SHA1 | Date | |
|---|---|---|---|
| af2426aad0 | |||
| 2ef89e705f | |||
| 6a00d99cf1 | |||
| 25c97c6b14 | |||
| 869fac02d8 | |||
| dfe04920a9 | |||
| 21ec71fcb9 | |||
| b9279dd49d | |||
| a8bf67f3b3 | |||
| 9bce359357 |
54
0_Setup.sh
54
0_Setup.sh
@ -28,20 +28,68 @@ if [[ "$answer" == "j" ]] || [[ "$answer" == "y" ]]; then
|
|||||||
CURRENT_DIR=$(pwd)
|
CURRENT_DIR=$(pwd)
|
||||||
USER_NAME="$SUDO_USER"
|
USER_NAME="$SUDO_USER"
|
||||||
|
|
||||||
|
# Sicherstellen, dass benötigte Pakete installiert sind
|
||||||
|
pacman -Syu --noconfirm glib2 git base-devel --needed
|
||||||
|
|
||||||
# AUR-Verzeichnis erstellen
|
# AUR-Verzeichnis erstellen
|
||||||
mkdir -p $AUR_CODE_DIR
|
mkdir -p $AUR_CODE_DIR
|
||||||
sudo chmod -R 777 $AUR_CODE_DIR
|
sudo chmod -R 777 $AUR_CODE_DIR
|
||||||
|
|
||||||
# Installiere yay
|
# Installiere yay
|
||||||
cd $AUR_CODE_DIR
|
cd $AUR_CODE_DIR
|
||||||
git clone https://aur.archlinux.org/yay.git
|
sudo -u USER_NAME git clone https://aur.archlinux.org/yay.git
|
||||||
cd yay
|
cd yay
|
||||||
makepkg -sic --noconfirm || { echo "❌ Fehler beim Erstellen von adcli"; exit 1; }
|
sudo -u USER_NAME makepkg -sic --noconfirm || { echo "❌ Fehler beim Erstellen von adcli"; exit 1; }
|
||||||
git clean -dfx
|
sudo -u USER_NAME git clean -dfx
|
||||||
|
|
||||||
cd $CURRENT_DIR
|
cd $CURRENT_DIR
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# multilib Repo
|
||||||
|
read -p "❓ Soll das multilib-Repository aktiviert werden? (j/n) [n]: " answer
|
||||||
|
answer=${answer,,}
|
||||||
|
answer=${answer:-n}
|
||||||
|
|
||||||
|
if [[ "$answer" == "j" ]] || [[ "$answer" == "y" ]]; then
|
||||||
|
# Multilib-Repository aktivieren
|
||||||
|
echo "🔄 Aktiviere Multilib-Repository..."
|
||||||
|
sed -i '/\[multilib\]/,/\[\/multilib\]/s/^#//g' /etc/pacman.conf
|
||||||
|
|
||||||
|
# Paketdatenbank aktualisieren
|
||||||
|
echo "🔄 Aktualisiere die Paketdatenbank..."
|
||||||
|
pacman -Sy --noconfirm
|
||||||
|
fi
|
||||||
|
|
||||||
|
# systemd-boot Config
|
||||||
|
read -p "❓ Soll systemd-boot so angepasst werden, dass es nur im Fehlerfall angezeigt wird? (j/n) [n]: " answer
|
||||||
|
answer=${answer,,}
|
||||||
|
answer=${answer:-n}
|
||||||
|
|
||||||
|
if [[ "$answer" == "j" ]] || [[ "$answer" == "y" ]]; then
|
||||||
|
LOADER_CONF="/boot/loader/loader.conf"
|
||||||
|
|
||||||
|
# Überprüfen, ob die Datei exists
|
||||||
|
if [[ ! -f "$LOADER_CONF" ]]; then
|
||||||
|
echo "❌ Datei $LOADER_CONF nicht gefunden!"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Überprüfen, ob die "timeout"-Option bereits auf 0 gesetzt ist
|
||||||
|
if grep -q "^timeout 0" "$LOADER_CONF"; then
|
||||||
|
echo "ℹ️ 'timeout 0' ist bereits gesetzt."
|
||||||
|
else
|
||||||
|
# Timeout auf 0 setzen
|
||||||
|
echo "🔄 Setze 'timeout 0' in der loader.conf..."
|
||||||
|
# Falls bereits eine timeout-Zeile existiert, diese ersetzen
|
||||||
|
sed -i 's/^timeout .*/timeout 0/' "$LOADER_CONF"
|
||||||
|
# Falls keine timeout-Zeile existiert, diese hinzufügen
|
||||||
|
if ! grep -q "^timeout" "$LOADER_CONF"; then
|
||||||
|
echo "timeout 0" >>"$LOADER_CONF"
|
||||||
|
fi
|
||||||
|
echo "✅ 'timeout 0' wurde erfolgreich gesetzt."
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
# Gruppe "sudo" und Sudoers-Regel hinzufügen
|
# Gruppe "sudo" und Sudoers-Regel hinzufügen
|
||||||
read -p "❓ Soll die Gruppe 'sudo' erstellt und ihr Sudo-Zugriff gewährt werden? (j/n) [n]: " answer
|
read -p "❓ Soll die Gruppe 'sudo' erstellt und ihr Sudo-Zugriff gewährt werden? (j/n) [n]: " answer
|
||||||
answer=${answer,,}
|
answer=${answer,,}
|
||||||
|
|||||||
28
1_AdJoin.sh
28
1_AdJoin.sh
@ -6,31 +6,13 @@ if [ "$(id -u)" -eq 0 ]; then
|
|||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
CURRENT_DIR=$(pwd)
|
sudo yay -Syu
|
||||||
AUR_CODE_DIR="/var/lib/user_aur_code"
|
|
||||||
|
|
||||||
# Sicherstellen, dass benötigte Pakete installiert sind
|
# Installiere adcli mit yay
|
||||||
sudo pacman -Syu --noconfirm glib2 git base-devel --needed
|
sudo yay -S --noconfirm adcli || { echo "❌ Fehler beim Installieren von adcli"; exit 1; }
|
||||||
|
|
||||||
# AUR-Verzeichnis erstellen
|
# Installiere realmd mit yay
|
||||||
mkdir -p $AUR_CODE_DIR
|
sudo yay -S --noconfirm realmd || { echo "❌ Fehler beim Installieren von realmd"; exit 1; }
|
||||||
sudo chmod -R 777 $AUR_CODE_DIR
|
|
||||||
|
|
||||||
# Installiere adcli
|
|
||||||
cd $AUR_CODE_DIR
|
|
||||||
git clone https://aur.archlinux.org/adcli.git
|
|
||||||
cd adcli
|
|
||||||
makepkg -sic --noconfirm || { echo "❌ Fehler beim Erstellen von adcli"; exit 1; }
|
|
||||||
git clean -dfx
|
|
||||||
|
|
||||||
# Installiere realmd
|
|
||||||
cd $AUR_CODE_DIR
|
|
||||||
git clone https://aur.archlinux.org/realmd.git
|
|
||||||
cd realmd
|
|
||||||
makepkg -sic --noconfirm || { echo "❌ Fehler beim Erstellen von realmd"; exit 1; }
|
|
||||||
git clean -dfx
|
|
||||||
|
|
||||||
cd $CURRENT_DIR
|
|
||||||
|
|
||||||
# Samba-Verzeichnis erstellen
|
# Samba-Verzeichnis erstellen
|
||||||
sudo mkdir -p /var/lib/samba/private/
|
sudo mkdir -p /var/lib/samba/private/
|
||||||
|
|||||||
@ -10,21 +10,22 @@ fi
|
|||||||
|
|
||||||
# System aktualisieren und benötigte Pakete installieren
|
# System aktualisieren und benötigte Pakete installieren
|
||||||
echo "🔄 System wird aktualisiert..."
|
echo "🔄 System wird aktualisiert..."
|
||||||
sudo apt update && sudo apt upgrade -y
|
sudo pacman -Syu --noconfirm
|
||||||
|
|
||||||
echo "ℹ️ Firewall (ufw) wird installiert..."
|
echo "ℹ️ Firewall (ufw) wird installiert..."
|
||||||
sudo apt install -y ufw
|
sudo pacman -S --noconfirm ufw
|
||||||
sudo ufw enable
|
sudo ufw enable
|
||||||
|
|
||||||
echo "ℹ️ Virenschutz (clamav) wird installiert..."
|
echo "ℹ️ Virenschutz (clamav) wird installiert..."
|
||||||
sudo apt install -y clamav clamav-freshclam clamav-docs libclamunrar9 clamav-daemon
|
sudo pacman -S --noconfirm clamav
|
||||||
|
sudo systemctl enable --now clamav-freshclam
|
||||||
|
|
||||||
echo "ℹ️ Installiere Flatpak..."
|
echo "ℹ️ Installiere Flatpak..."
|
||||||
sudo apt install -y flatpak
|
sudo pacman -S --noconfirm flatpak
|
||||||
sudo flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo
|
sudo flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo
|
||||||
|
|
||||||
echo "ℹ️ Installiere nützliche Pakete..."
|
echo "ℹ️ Installiere nützliche Pakete..."
|
||||||
sudo apt install -y neovim rfkill xdg-user-dirs rsync bleachbit network-manager-gnome
|
sudo pacman -S --noconfirm neovim rfkill xdg-user-dirs rsync bleachbit networkmanager
|
||||||
|
|
||||||
# Portmaster installieren
|
# Portmaster installieren
|
||||||
read -p "❓ Soll Portmaster installiert werden? (j/n) [n]: " answer
|
read -p "❓ Soll Portmaster installiert werden? (j/n) [n]: " answer
|
||||||
@ -46,12 +47,9 @@ answer=${answer:-n} # Standardwert 'n', falls leer
|
|||||||
|
|
||||||
if [[ "$answer" == "j" ]] || [[ "$answer" == "y" ]]; then
|
if [[ "$answer" == "j" ]] || [[ "$answer" == "y" ]]; then
|
||||||
echo "🌍 Waterfox wird installiert..."
|
echo "🌍 Waterfox wird installiert..."
|
||||||
sudo apt remove -y firefox
|
sudo pacman -Rns --noconfirm firefox
|
||||||
sudo install -d -m 0755 /etc/apt/keyrings
|
sudo yay -S --noconfirm waterfox
|
||||||
curl -fsSL https://download.opensuse.org/repositories/home:hawkeye116477:waterfox/Debian_12/Release.key | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/home_hawkeye116477_waterfox.gpg > /dev/null
|
|
||||||
echo 'deb https://download.opensuse.org/repositories/home:/hawkeye116477:/waterfox/Debian_12/ /' | sudo tee /etc/apt/sources.list.d/home:hawkeye116477:waterfox.list
|
|
||||||
|
|
||||||
sudo apt update && sudo apt install -y waterfox
|
|
||||||
echo "✅ Waterfox wurde installiert!"
|
echo "✅ Waterfox wurde installiert!"
|
||||||
|
|
||||||
# Waterfox als Standardbrowser setzen
|
# Waterfox als Standardbrowser setzen
|
||||||
54
6_Plymouth.sh
Executable file
54
6_Plymouth.sh
Executable file
@ -0,0 +1,54 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
set -e # Skript bricht bei Fehlern ab
|
||||||
|
|
||||||
|
# Sicherstellen, dass das Skript mit Root-Rechten ausgeführt wird
|
||||||
|
if [[ $EUID -ne 0 ]]; then
|
||||||
|
echo "❌ Dieses Skript muss als root ausgeführt werden."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "🔄 Plymouth und benötigte Pakete installieren..."
|
||||||
|
if ! pacman -Q plymouth &>/dev/null; then
|
||||||
|
pacman -Syu --noconfirm plymouth plymouth-theme-arch
|
||||||
|
else
|
||||||
|
echo "✅ Plymouth ist bereits installiert."
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Plymouth in initramfs aktivieren
|
||||||
|
MKINIT_CONF="/etc/mkinitcpio.conf"
|
||||||
|
if [[ -f "$MKINIT_CONF" ]]; then
|
||||||
|
if grep -q "^HOOKS=" "$MKINIT_CONF"; then
|
||||||
|
sed -i 's/^HOOKS=.*/HOOKS=(base udev plymouth autodetect modconf block encrypt lvm2 filesystems keyboard fsck)/' "$MKINIT_CONF"
|
||||||
|
else
|
||||||
|
echo 'HOOKS=(base udev plymouth autodetect modconf block encrypt lvm2 filesystems keyboard fsck)' >>"$MKINIT_CONF"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Initramfs neu erstellen
|
||||||
|
echo "🔄 Initramfs wird aktualisiert..."
|
||||||
|
mkinitcpio -P
|
||||||
|
|
||||||
|
# Arch Plymouth-Theme setzen
|
||||||
|
echo "🎨 Setze Plymouth-Theme auf 'arch'..."
|
||||||
|
plymouth-set-default-theme -R arch
|
||||||
|
|
||||||
|
# Kernel-Boot-Parameter in systemd-boot anpassen
|
||||||
|
BOOT_LOADER_CONF="/boot/loader/entries/arch.conf"
|
||||||
|
|
||||||
|
if [[ -f "$BOOT_LOADER_CONF" ]]; then
|
||||||
|
echo "🔍 Überprüfe systemd-boot-Konfiguration..."
|
||||||
|
NEW_CMDLINE="quiet splash vt.global_cursor_default=0 loglevel=3 rd.luks.options=discard plymouth.ignore-serial-consoles"
|
||||||
|
|
||||||
|
# Kernel-Parameter anpassen
|
||||||
|
if grep -q "options=" "$BOOT_LOADER_CONF"; then
|
||||||
|
sed -i "s|^options=.*|options=\"$NEW_CMDLINE\"|" "$BOOT_LOADER_CONF"
|
||||||
|
else
|
||||||
|
echo "options=\"$NEW_CMDLINE\"" >>"$BOOT_LOADER_CONF"
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
echo "❌ systemd-boot Konfigurationsdatei nicht gefunden!"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "✅ Einrichtung abgeschlossen. Bitte starte das System neu, um die Änderungen zu übernehmen."
|
||||||
@ -7,7 +7,8 @@ if [[ $EUID -ne 0 ]]; then
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
# System aktualisieren
|
# System aktualisieren
|
||||||
apt update && apt upgrade -y
|
echo "🔄 System wird aktualisiert..."
|
||||||
|
pacman -Syu --noconfirm || { echo "❌ Fehler beim Aktualisieren des Systems."; exit 1; }
|
||||||
|
|
||||||
# Steam-Installation
|
# Steam-Installation
|
||||||
read -p "❓ Soll Steam installiert werden? (j/n) [n]: " answer
|
read -p "❓ Soll Steam installiert werden? (j/n) [n]: " answer
|
||||||
@ -15,13 +16,11 @@ answer=${answer,,} # In Kleinbuchstaben umwandeln
|
|||||||
answer=${answer:-n} # Standardwert 'n', falls leer
|
answer=${answer:-n} # Standardwert 'n', falls leer
|
||||||
|
|
||||||
if [[ "$answer" == "j" ]] || [[ "$answer" == "y" ]]; then
|
if [[ "$answer" == "j" ]] || [[ "$answer" == "y" ]]; then
|
||||||
dpkg --add-architecture i386
|
echo "🔄 Steam wird installiert..."
|
||||||
apt update
|
|
||||||
apt install -y wget curl
|
|
||||||
|
|
||||||
wget -O /tmp/steam.deb https://cdn.akamai.steamstatic.com/client/installer/steam.deb
|
# Steam aus dem offiziellen Repository installieren
|
||||||
apt install -y /tmp/steam.deb
|
pacman -S --noconfirm steam || { echo "❌ Fehler beim Installieren von Steam."; exit 1; }
|
||||||
rm /tmp/steam.deb
|
echo "✅ Steam wurde erfolgreich installiert."
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Lutris-Installation
|
# Lutris-Installation
|
||||||
@ -30,18 +29,11 @@ answer=${answer,,} # In Kleinbuchstaben umwandeln
|
|||||||
answer=${answer:-n} # Standardwert 'n', falls leer
|
answer=${answer:-n} # Standardwert 'n', falls leer
|
||||||
|
|
||||||
if [[ "$answer" == "j" ]] || [[ "$answer" == "y" ]]; then
|
if [[ "$answer" == "j" ]] || [[ "$answer" == "y" ]]; then
|
||||||
LUTRIS_KEYRING="/etc/apt/keyrings/lutris.gpg"
|
echo "🔄 Lutris wird installiert..."
|
||||||
LUTRIS_REPO="https://download.opensuse.org/repositories/home:/strycore/Debian_12/"
|
|
||||||
|
|
||||||
mkdir -p /etc/apt/keyrings
|
# Lutris aus dem offiziellen Repository installieren
|
||||||
wget -qO /tmp/lutris-key.gpg "${LUTRIS_REPO}Release.key"
|
pacman -S --noconfirm lutris || { echo "❌ Fehler beim Installieren von Lutris."; exit 1; }
|
||||||
gpg --dearmor </tmp/lutris-key.gpg >"$LUTRIS_KEYRING"
|
echo "✅ Lutris wurde erfolgreich installiert."
|
||||||
rm /tmp/lutris-key.gpg
|
|
||||||
|
|
||||||
echo "deb [signed-by=$LUTRIS_KEYRING] $LUTRIS_REPO ./" >/etc/apt/sources.list.d/lutris.list
|
|
||||||
|
|
||||||
apt update
|
|
||||||
apt install -y lutris
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo "✅ Skript abgeschlossen!"
|
echo "✅ Skript abgeschlossen!"
|
||||||
@ -1,36 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
|
|
||||||
set -e # Skript bricht bei Fehlern ab
|
|
||||||
|
|
||||||
# Theme-Name
|
|
||||||
THEME_NAME="vimix"
|
|
||||||
|
|
||||||
# Prüfen, ob GRUB bereits das Theme verwendet
|
|
||||||
if grep -q "GRUB_THEME=" /etc/default/grub && grep -q "$THEME_NAME" /etc/default/grub; then
|
|
||||||
echo "✅ Das Theme '$THEME_NAME' ist bereits installiert und aktiv."
|
|
||||||
exit 0
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "🔄 Installiere das GRUB-Theme '$THEME_NAME'..."
|
|
||||||
|
|
||||||
# Falls der Ordner existiert, vorher löschen
|
|
||||||
THEME_DIR="$HOME/grub-themes"
|
|
||||||
if [[ -d "$THEME_DIR" ]]; then
|
|
||||||
rm -rf "$THEME_DIR"
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Repository klonen
|
|
||||||
git clone https://github.com/vinceliuice/grub2-themes.git "$THEME_DIR"
|
|
||||||
cd "$THEME_DIR"
|
|
||||||
|
|
||||||
# Theme installieren
|
|
||||||
sudo ./install.sh -b -t "$THEME_NAME"
|
|
||||||
|
|
||||||
# GRUB-Konfiguration aktualisieren
|
|
||||||
echo "🔄 Aktualisiere die GRUB-Konfiguration..."
|
|
||||||
sudo update-grub
|
|
||||||
|
|
||||||
# Aufräumen
|
|
||||||
rm -rf "$THEME_DIR"
|
|
||||||
|
|
||||||
echo "✅ GRUB-Theme '$THEME_NAME' erfolgreich installiert und aktiviert!"
|
|
||||||
@ -1,59 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
|
|
||||||
set -e # Skript bricht bei Fehlern ab
|
|
||||||
|
|
||||||
# Sicherstellen, dass das Skript mit Root-Rechten ausgeführt wird
|
|
||||||
if [[ $EUID -ne 0 ]]; then
|
|
||||||
echo "❌ Dieses Skript muss als root ausgeführt werden."
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "🔄 Plymouth und benötigte Pakete installieren..."
|
|
||||||
if ! dpkg -l | grep -qw plymouth; then
|
|
||||||
apt update && apt install -y plymouth plymouth-themes
|
|
||||||
else
|
|
||||||
echo "✅ Plymouth ist bereits installiert."
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Plymouth in initramfs aktivieren
|
|
||||||
MKINIT_CONF="/etc/mkinitcpio.conf"
|
|
||||||
if [[ -f "$MKINIT_CONF" ]]; then
|
|
||||||
if grep -q "^HOOKS=" "$MKINIT_CONF"; then
|
|
||||||
sed -i 's/^HOOKS=.*/HOOKS=(base udev plymouth autodetect modconf block encrypt lvm2 filesystems keyboard fsck)/' "$MKINIT_CONF"
|
|
||||||
else
|
|
||||||
echo 'HOOKS=(base udev plymouth autodetect modconf block encrypt lvm2 filesystems keyboard fsck)' >>"$MKINIT_CONF"
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Falls Dracut genutzt wird, initramfs neu erstellen
|
|
||||||
if command -v dracut &>/dev/null; then
|
|
||||||
echo "🔄 Dracut erkannt, erstelle neues initramfs..."
|
|
||||||
dracut -f
|
|
||||||
else
|
|
||||||
echo "🔄 Initramfs wird aktualisiert..."
|
|
||||||
update-initramfs -u
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Plymouth-Theme setzen
|
|
||||||
PLYMOUTH_THEME="spinner"
|
|
||||||
echo "🎨 Setze Plymouth-Theme auf '$PLYMOUTH_THEME'..."
|
|
||||||
plymouth-set-default-theme -R "$PLYMOUTH_THEME"
|
|
||||||
|
|
||||||
# Kernel-Boot-Parameter in GRUB anpassen
|
|
||||||
GRUB_CFG="/etc/default/grub"
|
|
||||||
GRUB_BACKUP="/etc/default/grub.bak"
|
|
||||||
|
|
||||||
echo "🔍 Überprüfe GRUB-Einstellungen..."
|
|
||||||
NEW_CMDLINE="quiet splash vt.global_cursor_default=0 loglevel=3 rd.luks.options=discard plymouth.ignore-serial-consoles"
|
|
||||||
|
|
||||||
if grep -q "^GRUB_CMDLINE_LINUX_DEFAULT=.*" "$GRUB_CFG"; then
|
|
||||||
sed -i "s|^GRUB_CMDLINE_LINUX_DEFAULT=.*|GRUB_CMDLINE_LINUX_DEFAULT=\"$NEW_CMDLINE\"|" "$GRUB_CFG"
|
|
||||||
echo "🔄 GRUB wird aktualisiert..."
|
|
||||||
update-grub
|
|
||||||
else
|
|
||||||
echo "GRUB_CMDLINE_LINUX_DEFAULT=\"$NEW_CMDLINE\"" >>"$GRUB_CFG"
|
|
||||||
echo "🔄 GRUB wird aktualisiert..."
|
|
||||||
update-grub
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "✅ Einrichtung abgeschlossen. Bitte starte das System neu, um die Änderungen zu übernehmen."
|
|
||||||
@ -22,8 +22,8 @@ declare -A FLATPAK_APPS=(
|
|||||||
)
|
)
|
||||||
|
|
||||||
for APP in "${!FLATPAK_APPS[@]}"; do
|
for APP in "${!FLATPAK_APPS[@]}"; do
|
||||||
if dpkg -l | grep -iq "${FLATPAK_APPS[$APP]}"; then
|
if pacman -Qs "${FLATPAK_APPS[$APP]}" &>/dev/null; then
|
||||||
echo "✅ ${FLATPAK_APPS[$APP]} ist bereits als DEB-Paket installiert."
|
echo "✅ ${FLATPAK_APPS[$APP]} ist bereits als Paket installiert."
|
||||||
elif flatpak list | grep -q "$APP"; then
|
elif flatpak list | grep -q "$APP"; then
|
||||||
echo "✅ ${FLATPAK_APPS[$APP]} ist bereits als Flatpak installiert."
|
echo "✅ ${FLATPAK_APPS[$APP]} ist bereits als Flatpak installiert."
|
||||||
else
|
else
|
||||||
@ -42,7 +42,7 @@ if flatpak list | grep -q "org.libreoffice.LibreOffice"; then
|
|||||||
elif command -v libreoffice &>/dev/null; then
|
elif command -v libreoffice &>/dev/null; then
|
||||||
LO_CMD="libreoffice"
|
LO_CMD="libreoffice"
|
||||||
else
|
else
|
||||||
echo "❌ Fehler: LibreOffice ist weder als Flatpak noch als DEB-Paket installiert."
|
echo "❌ Fehler: LibreOffice ist weder als Flatpak noch als Paket installiert."
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@ -63,27 +63,13 @@ fi
|
|||||||
|
|
||||||
# Spotify-Installation
|
# Spotify-Installation
|
||||||
echo "🎵 Überprüfe Spotify-Installation..."
|
echo "🎵 Überprüfe Spotify-Installation..."
|
||||||
SPOTIFY_KEY="/etc/apt/trusted.gpg.d/spotify.gpg"
|
|
||||||
SPOTIFY_REPO="/etc/apt/sources.list.d/spotify.list"
|
|
||||||
|
|
||||||
if dpkg -l | grep -q "spotify-client"; then
|
if pacman -Qs spotify &>/dev/null; then
|
||||||
echo "✅ Spotify ist bereits installiert."
|
echo "✅ Spotify ist bereits installiert."
|
||||||
else
|
else
|
||||||
echo "🔄 Installiere Spotify..."
|
echo "🔄 Installiere Spotify..."
|
||||||
|
|
||||||
if [[ ! -f "$SPOTIFY_KEY" ]]; then
|
sudo pacman -S --noconfirm spotify
|
||||||
curl -sS https://download.spotify.com/debian/pubkey_C85668DF69375001.gpg | sudo gpg --dearmor -o "$SPOTIFY_KEY"
|
|
||||||
else
|
|
||||||
echo "✅ Spotify GPG-Key ist bereits vorhanden."
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [[ ! -f "$SPOTIFY_REPO" ]]; then
|
|
||||||
echo "deb http://repository.spotify.com stable non-free" | sudo tee "$SPOTIFY_REPO"
|
|
||||||
else
|
|
||||||
echo "✅ Spotify-Repository ist bereits konfiguriert."
|
|
||||||
fi
|
|
||||||
|
|
||||||
sudo apt update && sudo apt install -y spotify-client
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Spotify .desktop-Datei erstellen
|
# Spotify .desktop-Datei erstellen
|
||||||
@ -110,7 +96,7 @@ dependencies=(man fzf ripgrep awk w3m coreutils parallel)
|
|||||||
for dep in "${dependencies[@]}"; do
|
for dep in "${dependencies[@]}"; do
|
||||||
if ! command -v "$dep" &>/dev/null; then
|
if ! command -v "$dep" &>/dev/null; then
|
||||||
echo "🔄 Installiere $dep..."
|
echo "🔄 Installiere $dep..."
|
||||||
sudo apt install -y "$dep"
|
sudo pacman -S --noconfirm "$dep"
|
||||||
else
|
else
|
||||||
echo "✅ $dep ist bereits installiert."
|
echo "✅ $dep ist bereits installiert."
|
||||||
fi
|
fi
|
||||||
@ -120,7 +106,7 @@ done
|
|||||||
# Tealdeer (tldr-Client) installieren
|
# Tealdeer (tldr-Client) installieren
|
||||||
if ! command -v tldr &>/dev/null; then
|
if ! command -v tldr &>/dev/null; then
|
||||||
echo "🔄 Installiere tealdeer..."
|
echo "🔄 Installiere tealdeer..."
|
||||||
sudo apt install -y tealdeer
|
sudo pacman -S --noconfirm tealdeer
|
||||||
else
|
else
|
||||||
echo "✅ Tealdeer ist bereits installiert."
|
echo "✅ Tealdeer ist bereits installiert."
|
||||||
fi
|
fi
|
||||||
@ -144,7 +130,7 @@ if ! command -v wikiman &>/dev/null; then
|
|||||||
# Prüfen, ob `make` installiert ist
|
# Prüfen, ob `make` installiert ist
|
||||||
if ! command -v make &>/dev/null; then
|
if ! command -v make &>/dev/null; then
|
||||||
echo "🔄 Installiere make..."
|
echo "🔄 Installiere make..."
|
||||||
sudo apt install -y make
|
sudo pacman -S --noconfirm make
|
||||||
fi
|
fi
|
||||||
|
|
||||||
git clone 'https://github.com/filiparag/wikiman' ~/wikiman
|
git clone 'https://github.com/filiparag/wikiman' ~/wikiman
|
||||||
@ -245,23 +231,31 @@ read -p "❓ Soll VeraCrypt installiert werden? (j/n) [n]: " answer
|
|||||||
answer=${answer,,} # In Kleinbuchstaben umwandeln
|
answer=${answer,,} # In Kleinbuchstaben umwandeln
|
||||||
answer=${answer:-n} # Standardwert 'n', falls leer
|
answer=${answer:-n} # Standardwert 'n', falls leer
|
||||||
|
|
||||||
if [[ "$answer" == "j" ]] || [[ "$anwser" == "y" ]]; then
|
if [[ "$answer" == "j" ]] || [[ "$answer" == "y" ]]; then
|
||||||
echo "🔄 Installiere VeraCrypt..."
|
echo "🔄 Installiere VeraCrypt..."
|
||||||
echo 'deb http://download.opensuse.org/repositories/home:/unit193:/veracrypt/Debian_12/ /' | sudo tee /etc/apt/sources.list.d/home:unit193:veracrypt.list
|
|
||||||
curl -fsSL https://download.opensuse.org/repositories/home:unit193:veracrypt/Debian_12/Release.key | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/home_unit193_veracrypt.gpg > /dev/null
|
# VeraCrypt aus den Arch-Repositories installieren
|
||||||
sudo apt update
|
if ! command -v veracrypt &>/dev/null; then
|
||||||
sudo apt install veracrypt
|
sudo pacman -S --noconfirm veracrypt
|
||||||
|
else
|
||||||
|
echo "✅ VeraCrypt ist bereits installiert."
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Webmin installieren
|
# Webmin installieren
|
||||||
read -p "❓ Soll webmin installiert werden? (j/n) [n]: " answer
|
read -p "❓ Soll Webmin installiert werden? (j/n) [n]: " answer
|
||||||
answer=${answer,,} # In Kleinbuchstaben umwandeln
|
answer=${answer,,} # In Kleinbuchstaben umwandeln
|
||||||
answer=${answer:-n} # Standardwert 'n', falls leer
|
answer=${answer:-n} # Standardwert 'n', falls leer
|
||||||
|
|
||||||
if [[ "$answer" == "j" ]] || [[ "$anwser" == "y" ]]; then
|
if [[ "$answer" == "j" ]] || [[ "$answer" == "y" ]]; then
|
||||||
curl -o /tmp/webmin-setup-repo.sh https://raw.githubusercontent.com/webmin/webmin/master/webmin-setup-repo.sh
|
echo "🔄 Installiere Webmin..."
|
||||||
sudo sh /tmp/webmin-setup-repo.sh
|
|
||||||
sudo apt install webmin -y
|
# Webmin aus dem AUR installieren (falls yay vorhanden ist)
|
||||||
|
if command -v yay &>/dev/null; then
|
||||||
|
yay -S --noconfirm webmin
|
||||||
|
else
|
||||||
|
echo "❌ Bitte installiere yay oder einen anderen AUR-Helper, um Webmin zu installieren."
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Waydroid installieren
|
# Waydroid installieren
|
||||||
@ -269,17 +263,31 @@ read -p "❓ Soll Waydroid installiert werden? (j/n) [n]: " answer
|
|||||||
answer=${answer,,} # In Kleinbuchstaben umwandeln
|
answer=${answer,,} # In Kleinbuchstaben umwandeln
|
||||||
answer=${answer:-n} # Standardwert 'n', falls leer
|
answer=${answer:-n} # Standardwert 'n', falls leer
|
||||||
|
|
||||||
if [[ "$answer" == "j" ]] || [[ "$anwser" == "y" ]]; then
|
if [[ "$answer" == "j" ]] || [[ "$answer" == "y" ]]; then
|
||||||
sudo apt install curl ca-certificates -y
|
echo "🔄 Installiere Waydroid über AUR..."
|
||||||
curl -s https://repo.waydro.id | sudo bash
|
|
||||||
sudo apt install waydroid -y
|
|
||||||
|
|
||||||
|
# Überprüfen, ob yay installiert ist
|
||||||
|
if ! command -v yay &>/dev/null; then
|
||||||
|
echo "❌ Yay ist nicht installiert. Bitte installiere yay und versuche es erneut."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Waydroid über AUR installieren
|
||||||
|
yay -S --noconfirm waydroid
|
||||||
|
|
||||||
|
# UFW konfigurieren (falls installiert)
|
||||||
|
if command -v ufw &>/dev/null; then
|
||||||
sudo ufw allow 53
|
sudo ufw allow 53
|
||||||
sudo ufw allow 67
|
sudo ufw allow 67
|
||||||
sudo ufw default allow FORWARD
|
sudo ufw default allow FORWARD
|
||||||
|
else
|
||||||
|
echo "❌ UFW ist nicht installiert. Bitte installiere es manuell, falls benötigt."
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Waydroid-Container aktivieren
|
||||||
sudo systemctl enable --now waydroid-container
|
sudo systemctl enable --now waydroid-container
|
||||||
|
|
||||||
|
# Skript zum Verstecken der Waydroid-Apps erstellen
|
||||||
sudo cat << 'EOF' | sudo tee /etc/profile.d/hide_waydroid_apps.sh > /dev/null
|
sudo cat << 'EOF' | sudo tee /etc/profile.d/hide_waydroid_apps.sh > /dev/null
|
||||||
for app in ~/.local/share/applications/waydroid.*.desktop; do
|
for app in ~/.local/share/applications/waydroid.*.desktop; do
|
||||||
grep -q NoDisplay $app || sed '/^Icon=/a NoDisplay=true' -i $app
|
grep -q NoDisplay $app || sed '/^Icon=/a NoDisplay=true' -i $app
|
||||||
Loading…
x
Reference in New Issue
Block a user