Feat: Logging mit Abfrage.
This commit is contained in:
parent
86da8cf610
commit
c6b18177f8
63
0_Setup.sh
63
0_Setup.sh
@ -2,15 +2,21 @@
|
||||
|
||||
# Root-Rechte prüfen
|
||||
if [ "$(id -u)" -ne 0 ]; then
|
||||
echo "Bitte mit sudo ausführen!"
|
||||
echo "❌ Bitte als root ausführen!"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
apt update && apt upgrade -y
|
||||
apt install -y git sudo 7zip unrar unzip network-manager software-properties-common tree bluetooth
|
||||
apt install -y git sudo 7zip unrar unzip network-manager software-properties-common tree bluetooth wget curl
|
||||
|
||||
# Der Code, der eingefügt werden soll
|
||||
CONFIG_BLOCK='if groups | grep -q "\bsudo\b"; then
|
||||
# sbin in Path
|
||||
read -p "❓ Soll sbin für sudo-Nutzer in den PATH aufgenommen werden? (j/n) [n]: " answer
|
||||
answer=${answer,,} # In Kleinbuchstaben umwandeln
|
||||
answer=${answer:-n} # Standardwert 'n', falls leer
|
||||
|
||||
if [[ "$answer" == "j" ]] || [[ "$answer" == "y" ]]; then
|
||||
cat << 'EOF' > /etc/profile.d/sbin_in_path.sh
|
||||
if groups | grep -q "\bsudo\b"; then
|
||||
case ":$PATH:" in
|
||||
*":/sbin:"*) ;;
|
||||
*) export PATH="$PATH:/sbin" ;;
|
||||
@ -19,33 +25,40 @@ case ":$PATH:" in
|
||||
*":/usr/sbin:"*) ;;
|
||||
*) export PATH="$PATH:/usr/sbin" ;;
|
||||
esac
|
||||
fi'
|
||||
fi
|
||||
EOF
|
||||
|
||||
# Saubere Lösung über /etc/profile.d/
|
||||
echo "$CONFIG_BLOCK" >/etc/profile.d/custom_path.sh
|
||||
echo "ℹ️ sbin wurde zum PATH für sudo-Nutzer hinzugefügt."
|
||||
fi
|
||||
|
||||
# Sudo-Hinweis für bash.bashrc
|
||||
SUDO_HINT_BLOCK='# sudo hint
|
||||
# sudo-Hinweis
|
||||
read -p "❓ Soll ein sudo-Hinweis hinzugefügt werden? (j/n) [n]: " answer
|
||||
answer=${answer,,} # In Kleinbuchstaben umwandeln
|
||||
answer=${answer:-n} # Standardwert 'n', falls leer
|
||||
|
||||
if [[ "$answer" == "j" ]] || [[ "$answer" == "y" ]]; then
|
||||
cat << 'EOF' > /etc/profile.d/sudo_hint.sh
|
||||
if [ ! -e "$HOME/.sudo_as_admin_successful" ] && [ ! -e "$HOME/.hushlogin" ] ; then
|
||||
case " $(groups) " in *\ admin\ *|*\ sudo\ *)
|
||||
if [ -x /usr/bin/sudo ]; then
|
||||
cat <<-EOF
|
||||
To run a command as administrator (user "root"), use "sudo <command>".
|
||||
See "man sudo_root" for details.
|
||||
EOF
|
||||
echo 'To run a command as administrator (user "root"), use "sudo <command>".'
|
||||
echo 'See "man sudo_root" for details.'
|
||||
fi
|
||||
esac
|
||||
fi'
|
||||
fi
|
||||
EOF
|
||||
|
||||
# Prüfen, ob der sudo-Hinweis bereits existiert
|
||||
if ! grep -Fxq "# sudo hint" /etc/bash.bashrc; then
|
||||
echo -e "\n$SUDO_HINT_BLOCK" | tee -a /etc/bash.bashrc >/dev/null
|
||||
echo "Sudo-Hinweis zur bash.bashrc hinzugefügt."
|
||||
else
|
||||
echo "Sudo-Hinweis ist bereits in bash.bashrc vorhanden."
|
||||
echo "ℹ️ sudo-Hinweis wurde hinzugefügt!"
|
||||
fi
|
||||
|
||||
XDG_BLOCK='# /etc/profile.d/desktop_session_xdg_dirs.sh - Prepend a $DESKTOP_SESSION-named directory to $XDG_CONFIG_DIRS and $XDG_DATA_DIRS
|
||||
# sudo-Hinweis
|
||||
read -p "❓ Sollen die XDG-Data-Dirs gesetzt werden? (j/n) [n]: " answer
|
||||
answer=${answer,,} # In Kleinbuchstaben umwandeln
|
||||
answer=${answer:-n} # Standardwert 'n', falls leer
|
||||
|
||||
if [[ "$answer" == "j" ]] || [[ "$answer" == "y" ]]; then
|
||||
cat << 'EOF' > /etc/profile.d/xdg_dirs_desktop_session.sh
|
||||
# /etc/profile.d/desktop_session_xdg_dirs.sh - Prepend a $DESKTOP_SESSION-named directory to $XDG_CONFIG_DIRS and $XDG_DATA_DIRS
|
||||
|
||||
DEFAULT_XDG_CONFIG_DIRS="/etc/xdg"
|
||||
DEFAULT_XDG_DATA_DIRS="/usr/local/share/:/usr/share/"
|
||||
@ -70,9 +83,11 @@ if [ -n "$DESKTOP_SESSION" ]; then
|
||||
export XDG_DATA_DIRS
|
||||
fi
|
||||
fi
|
||||
'
|
||||
EOF
|
||||
|
||||
echo "$XDG_BLOCK" >/etc/profile.d/xdg_dirs_desktop_session.sh
|
||||
echo "ℹ️ XDG-Data-Dirs wurden gesetzt!"
|
||||
fi
|
||||
|
||||
echo "Fertig! Bitte neu einloggen."
|
||||
chmod +x /etc/profile.d/*
|
||||
|
||||
echo "✅ Abgeschlossen. Zum Anwenden der Änderungen bitte neu einloggen!"
|
||||
|
||||
@ -4,7 +4,7 @@ set -e # Skript bricht bei Fehlern ab
|
||||
|
||||
# Sicherstellen, dass das Skript **nicht** als root ausgeführt wird
|
||||
if [[ $EUID -eq 0 ]]; then
|
||||
echo "Bitte **nicht** als root oder mit sudo ausführen! Das Skript fordert sudo nur dort an, wo es benötigt wird."
|
||||
echo "❌ Bitte **nicht** als root oder mit sudo ausführen! Das Skript fordert sudo nur dort an, wo es benötigt wird."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
|
||||
@ -2,33 +2,39 @@
|
||||
|
||||
# Root-Rechte prüfen
|
||||
if [ "$(id -u)" -ne 0 ]; then
|
||||
echo "Bitte mit sudo ausführen!"
|
||||
echo "❌ Bitte als root ausführen!"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Sicherheitsabfrage
|
||||
read -p "Achtung! Du führst ein Release-Upgrade auf Debian Trixie durch. Fortfahren? (ja/nein): " choice
|
||||
if [[ "$choice" != "ja" ]]; then
|
||||
echo "Upgrade abgebrochen."
|
||||
read -p "⚠️ Achtung! Du führst ein Release-Upgrade auf Debian Trixie durch. Fortfahren? (ja/nein): " answer
|
||||
answer=${answer,,} # In Kleinbuchstaben umwandeln
|
||||
answer=${answer:-n} # Standardwert 'n', falls leer
|
||||
|
||||
if [[ "$answer" != "j" ]] || [[ "$answer" != "y" ]]; then
|
||||
echo "❌ Upgrade abgebrochen."
|
||||
exit 0
|
||||
fi
|
||||
|
||||
echo "Aktualisiere Paketlisten..."
|
||||
echo "ℹ️ Aktualisiere Paketlisten..."
|
||||
sudo apt-get update
|
||||
|
||||
echo "Starte System-Upgrade..."
|
||||
echo "ℹ️ Starte System-Upgrade..."
|
||||
sudo apt-get full-upgrade -y
|
||||
|
||||
echo "Ändere die Paketquellen auf Debian Trixie..."
|
||||
echo "ℹ️ Ändere die Paketquellen auf Debian Trixie..."
|
||||
sudo sed -i 's/bookworm/trixie/g' /etc/apt/sources.list
|
||||
sudo find /etc/apt/sources.list.d -type f -exec sed -i 's/bookworm/trixie/g' {} \;
|
||||
|
||||
echo "Aktualisiere Paketlisten erneut..."
|
||||
echo "ℹ️ Aktualisiere Paketlisten erneut..."
|
||||
sudo apt-get update
|
||||
|
||||
echo "Starte vollständiges Release-Upgrade..."
|
||||
echo "ℹ️ Starte vollständiges Release-Upgrade..."
|
||||
sudo apt-get full-upgrade -y
|
||||
|
||||
echo "System wird jetzt neu gestartet..."
|
||||
|
||||
read -p "❓ Drücke [ENTER], um das System jetzt neuzustarten."
|
||||
|
||||
echo "ℹ️ System wird jetzt neu gestartet..."
|
||||
sudo reboot
|
||||
|
||||
|
||||
21
2_AdJoin.sh
21
2_AdJoin.sh
@ -2,25 +2,30 @@
|
||||
|
||||
# Root-Rechte prüfen
|
||||
if [ "$(id -u)" -eq 0 ]; then
|
||||
echo "Bitte nicht als Root ausführen! Das Skript nutzt sudo, falls nötig."
|
||||
echo "❌ Bitte nicht als root ausführen! Das Skript nutzt sudo, falls nötig."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Verzeichnis setzen
|
||||
REPO_DIR="$HOME/Linux-Active-Directory-join-script"
|
||||
REPO_DIR="/tmp/Linux-Active-Directory-join-script"
|
||||
|
||||
# Repository klonen, falls es noch nicht existiert
|
||||
if [ -d "$REPO_DIR" ]; then
|
||||
echo "Repository existiert bereits. Überspringe das Klonen."
|
||||
echo "ℹ️ Repository existiert bereits. Überspringe das Klonen."
|
||||
else
|
||||
echo "Klonen des Repositories..."
|
||||
echo "ℹ️ Klonen des Repositories..."
|
||||
git clone https://gitea.creative-dragonslayer.de/DragonSlayer_14/Linux-Active-Directory-join-script.git "$REPO_DIR"
|
||||
fi
|
||||
|
||||
# In das Verzeichnis wechseln
|
||||
cd "$REPO_DIR" || { echo "Fehler: Konnte nicht in das Verzeichnis wechseln!"; exit 1; }
|
||||
cd "$REPO_DIR" || { echo "❌ Fehler: Konnte nicht in das Verzeichnis wechseln!"; exit 1; }
|
||||
|
||||
# AD-Skript ausführen
|
||||
echo "Starte Active Directory Verbindung..."
|
||||
sudo bash ADconnection.sh
|
||||
|
||||
if [ -f "ADconnection.sh" ]; then
|
||||
chmod +x ADconnection.sh
|
||||
echo "ℹ️ Starte Active Directory setup..."
|
||||
./ADconnection.sh
|
||||
else
|
||||
echo "❌ Fehler: ADconnection.sh nicht gefunden!"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
@ -1,26 +1,31 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Root-Rechte prüfen
|
||||
if [ "$(id -u)" -eq 0 ]; then
|
||||
echo "❌ Bitte nicht als root ausführen! Das Skript nutzt sudo, falls nötig."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Repository-Pfad definieren
|
||||
REPO_DIR="$HOME/Debian-Hyprland"
|
||||
REPO_DIR="/tmp/Debian-Hyprland"
|
||||
|
||||
# Falls das Repository bereits existiert, überspringen
|
||||
if [ -d "$REPO_DIR" ]; then
|
||||
echo "Repository existiert bereits. Aktualisiere stattdessen..."
|
||||
cd "$REPO_DIR" || { echo "Fehler: Konnte nicht in das Verzeichnis wechseln!"; exit 1; }
|
||||
git pull
|
||||
echo "ℹ️ Repository existiert bereits. Überspringe das klonen..."
|
||||
else
|
||||
echo "Klonen des Repositories..."
|
||||
echo "ℹ️ Klonen des Repositories..."
|
||||
git clone --depth=1 https://github.com/JaKooLit/Debian-Hyprland.git "$REPO_DIR" || { echo "Fehler beim Klonen!"; exit 1; }
|
||||
cd "$REPO_DIR" || { echo "Fehler: Konnte nicht in das Verzeichnis wechseln!"; exit 1; }
|
||||
fi
|
||||
|
||||
# In das Verzeichnis wechseln
|
||||
cd "$REPO_DIR" || { echo "❌ Fehler: Konnte nicht in das Verzeichnis wechseln!"; exit 1; }
|
||||
|
||||
# Sicherstellen, dass das Installationsskript existiert und ausführbar ist
|
||||
if [ -f "install.sh" ]; then
|
||||
chmod +x install.sh
|
||||
echo "Starte Installation..."
|
||||
echo "ℹ️ Starte Installation..."
|
||||
./install.sh
|
||||
else
|
||||
echo "Fehler: install.sh nicht gefunden!"
|
||||
echo "❌ Fehler: install.sh nicht gefunden!"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
|
||||
@ -2,19 +2,24 @@
|
||||
|
||||
# Sicherstellen, dass das Skript mit Root-Rechten ausgeführt wird
|
||||
if [[ $EUID -ne 0 ]]; then
|
||||
echo "Dieses Skript muss als root ausgeführt werden."
|
||||
echo "❌ Bitte als root ausführen!"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Tatsächlichen Benutzer ermitteln (nicht root)
|
||||
if [[ -z "$SUDO_USER" || "$SUDO_USER" == "root" ]]; then
|
||||
echo "Fehler: Das Skript muss mit 'sudo' von einem normalen Benutzer ausgeführt werden."
|
||||
echo "❌ Fehler: Das Skript muss mit 'sudo' von einem normalen Benutzer ausgeführt werden."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
USER_NAME="$SUDO_USER"
|
||||
USER_HOME=$(eval echo ~$USER_NAME)
|
||||
|
||||
read -p "❓ Soll die shell für $USER_NAME auf ZSH gesetzt werden? (j/n) [n]: " answer
|
||||
answer=${answer,,} # In Kleinbuchstaben umwandeln
|
||||
answer=${answer:-n} # Standardwert 'n', falls leer
|
||||
|
||||
if [[ "$answer" == "j" ]] || [[ "$answer" == "y" ]]; then
|
||||
# Eintrag aus getent passwd holen
|
||||
USER_ENTRY=$(getent passwd "$USER_NAME")
|
||||
|
||||
@ -24,12 +29,12 @@ cp /etc/passwd /etc/passwd.bak
|
||||
if grep -q "^$USER_NAME:" /etc/passwd; then
|
||||
# Existierenden Eintrag aktualisieren
|
||||
sed -i "/^$USER_NAME:/s|[^:]*$|/bin/zsh|" /etc/passwd
|
||||
echo "Shell für $USER_NAME wurde auf zsh aktualisiert."
|
||||
echo "ℹ️ Shell für $USER_NAME wurde auf zsh aktualisiert."
|
||||
else
|
||||
# Neuen Eintrag hinzufügen
|
||||
UPDATED_ENTRY=$(echo "$USER_ENTRY" | awk -F: -v OFS=: '{ $NF="/bin/zsh"; print }')
|
||||
echo "$UPDATED_ENTRY" >>/etc/passwd
|
||||
echo "Eintrag für $USER_NAME wurde in /etc/passwd geschrieben mit zsh als Shell."
|
||||
echo "ℹ️ Eintrag für $USER_NAME wurde in /etc/passwd geschrieben mit zsh als Shell."
|
||||
fi
|
||||
|
||||
# Repository klonen
|
||||
@ -58,5 +63,6 @@ if ! grep -q "source /etc/profile" /etc/zsh/zprofile; then
|
||||
else
|
||||
echo "ℹ️ 'source /etc/profile' ist bereits in /etc/zsh/zprofile vorhanden."
|
||||
fi
|
||||
fi
|
||||
|
||||
echo "✅ Installation abgeschlossen!"
|
||||
echo "✅ Shell wurde erfolgreich auf ZSH gesetzt! Zum Anwenden, neue Terminal-Sitzung öffnen."
|
||||
|
||||
@ -2,13 +2,18 @@
|
||||
|
||||
# Sicherstellen, dass das Skript mit Root-Rechten ausgeführt wird
|
||||
if [[ $EUID -ne 0 ]]; then
|
||||
echo "Dieses Skript muss als root ausgeführt werden."
|
||||
echo "❌ Dieses Skript muss als root ausgeführt werden."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
read -p "❓ Soll SDDM so konfiguriert werden, dass Domänenbenutzer angezeigt werden? (j/n) [n]: " answer
|
||||
answer=${answer,,} # In Kleinbuchstaben umwandeln
|
||||
answer=${answer:-n} # Standardwert 'n', falls leer
|
||||
|
||||
if [[ "$answer" == "j" ]] || [[ "$answer" == "y" ]]; then
|
||||
# SDDM-Konfigurationsdatei in sddm.conf.d erstellen
|
||||
SDDM_CONF_DIR="/etc/sddm.conf.d"
|
||||
SDDM_CUSTOM_CONF="$SDDM_CONF_DIR/custom.conf"
|
||||
SDDM_CUSTOM_CONF="$SDDM_CONF_DIR/ad_login.conf"
|
||||
mkdir -p "$SDDM_CONF_DIR"
|
||||
|
||||
# Bestehende Konfiguration sichern und anpassen
|
||||
@ -16,13 +21,13 @@ if [[ -f "$SDDM_CUSTOM_CONF" ]]; then
|
||||
sed -i '/MaximumUid/d' "$SDDM_CUSTOM_CONF"
|
||||
sed -i '/MinimumUid/d' "$SDDM_CUSTOM_CONF"
|
||||
sed -i '/HideShells/d' "$SDDM_CUSTOM_CONF"
|
||||
echo "MaximumUid=9999999999" >>"$SDDM_CUSTOM_CONF"
|
||||
echo "MaximumUid=99999999999999999999" >>"$SDDM_CUSTOM_CONF"
|
||||
echo "MinimumUid=1000" >>"$SDDM_CUSTOM_CONF"
|
||||
echo "HideShells=/sbin/nologin,/bin/false,/usr/sbin/nologin" >>"$SDDM_CUSTOM_CONF"
|
||||
else
|
||||
cat <<EOF >"$SDDM_CUSTOM_CONF"
|
||||
[Users]
|
||||
MaximumUid=9999999999
|
||||
MaximumUid=999999999999999999
|
||||
MinimumUid=1000
|
||||
HideShells=/sbin/nologin,/bin/false,/usr/sbin/nologin
|
||||
EOF
|
||||
@ -43,5 +48,6 @@ fi
|
||||
# SSSD und SDDM neu starten
|
||||
systemctl restart sssd
|
||||
systemctl restart sddm
|
||||
fi
|
||||
|
||||
echo "SDDM wurde so konfiguriert, dass lokale und bereits angemeldete Domänenbenutzer angezeigt werden."
|
||||
echo "✅ Konfiguration von SDDM und sssd abgeschlossen!"
|
||||
|
||||
48
6_Polish.sh
48
6_Polish.sh
@ -2,32 +2,57 @@
|
||||
|
||||
set -e # Skript bricht bei Fehlern ab
|
||||
|
||||
# Sicherstellen, dass das Skript **nicht** als root ausgeführt wird
|
||||
if [[ $EUID -eq 0 ]]; then
|
||||
echo "Bitte **nicht** als root oder mit sudo ausführen! Das Skript fordert sudo nur dort an, wo es benötigt wird."
|
||||
# Root-Rechte prüfen
|
||||
if [ "$(id -u)" -eq 0 ]; then
|
||||
echo "❌ Bitte nicht als root ausführen! Das Skript nutzt sudo, falls nötig."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# System aktualisieren und benötigte Pakete installieren
|
||||
echo "🔄 System wird aktualisiert..."
|
||||
sudo apt update && sudo apt install -y flatpak neovim ufw rfkill xdg-user-dirs rsync clamav clamav-freshclam clamav-docs libclamunrar9 clamav-daemon bleachbit network-manager-gnome
|
||||
sudo apt update && sudo apt upgrade -y
|
||||
|
||||
echo "ℹ️ Firewall (ufw) wird installiert..."
|
||||
sudo apt install -y ufw
|
||||
sudo ufw enable
|
||||
|
||||
# Flatpak Flathub-Repo hinzufügen
|
||||
echo "ℹ️ Virenschutz (clamav) wird installiert..."
|
||||
sudo apt install -y clamav clamav-freshclam clamav-docs libclamunrar9 clamav-daemon
|
||||
|
||||
echo "ℹ️ Installiere Flatpak..."
|
||||
sudo apt install -y flatpak
|
||||
sudo flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo
|
||||
|
||||
echo "ℹ️ Installiere nützliche Pakete..."
|
||||
sudo apt install -y neovim rfkill xdg-user-dirs rsync bleachbit network-manager-gnome
|
||||
|
||||
# Portmaster installieren
|
||||
read -p "❓ Soll Portmaster installiert werden? (j/n) [n]: " answer
|
||||
answer=${answer,,} # In Kleinbuchstaben umwandeln
|
||||
answer=${answer:-n} # Standardwert 'n', falls leer
|
||||
|
||||
if [[ "$answer" == "j" ]] || [[ "$answer" == "y" ]]; then
|
||||
wget -O /tmp/portmaster-installer.deb https://updates.safing.io/latest/linux_amd64/packages/portmaster-installer.deb
|
||||
sudo apt install -y /tmp/portmaster-installer.deb
|
||||
rm /tmp/portmaster-installer.deb
|
||||
|
||||
echo "✅ Portmaster wurde installiert!"
|
||||
fi
|
||||
|
||||
# Waterfox-Installation
|
||||
read -p "❓ Soll Firefox durch Waterfox ersetzt werden? (j/n) [n]: " answer
|
||||
answer=${answer,,} # In Kleinbuchstaben umwandeln
|
||||
answer=${answer:-n} # Standardwert 'n', falls leer
|
||||
|
||||
if [[ "$answer" == "j" ]] || [[ "$answer" == "y" ]]; then
|
||||
echo "🌍 Waterfox wird installiert..."
|
||||
sudo apt remove -y firefox
|
||||
sudo install -d -m 0755 /etc/apt/keyrings
|
||||
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!"
|
||||
|
||||
# Waterfox als Standardbrowser setzen
|
||||
echo "🌍 Setze Waterfox als Standardbrowser..."
|
||||
@ -43,8 +68,14 @@ if command -v xdg-settings >/dev/null 2>&1; then
|
||||
else
|
||||
echo "❌ 'xdg-settings' ist nicht verfügbar. Bitte manuell den Standardbrowser setzen."
|
||||
fi
|
||||
fi
|
||||
|
||||
# Hyprland User Bindings
|
||||
read -p "❓ Sollen Anpassungen an den Hyprland-Keybinds vorgenomen werden? (j/n) [n]: " answer
|
||||
answer=${answer,,} # In Kleinbuchstaben umwandeln
|
||||
answer=${answer:-n} # Standardwert 'n', falls leer
|
||||
|
||||
if [[ "$answer" == "j" ]] || [[ "$answer" == "y" ]]; then
|
||||
HYPR_CONFIG_DIR="$HOME/.config/hypr/UserConfigs"
|
||||
mkdir -p "$HYPR_CONFIG_DIR"
|
||||
|
||||
@ -64,6 +95,7 @@ for BIND in "${!KEYBINDS[@]}"; do
|
||||
echo "ℹ️ Keybind existiert bereits: ${KEYBINDS[$BIND]}"
|
||||
fi
|
||||
done
|
||||
fi
|
||||
|
||||
# Standardvorlagen ablegen
|
||||
echo "📂 Standardvorlagen werden im Vorlagen-Ordner erstellt..."
|
||||
@ -95,6 +127,11 @@ TARGET_DIR="$HOME/.config/hypr/UserScripts"
|
||||
CONFIG_DIR="$HOME/.config/hypr/UserConfigs"
|
||||
USER_KEYBINDS_FILE="$CONFIG_DIR/UserKeybinds.conf" # Definition an der richtigen Stelle
|
||||
|
||||
read -p "❓ Sollen Anpassungen an den Users-Dirs in den Hyprland-Skripten vorgenommen werden? (j/n) [n]: " answer
|
||||
answer=${answer,,} # In Kleinbuchstaben umwandeln
|
||||
answer=${answer:-n} # Standardwert 'n', falls leer
|
||||
|
||||
if [[ "$answer" == "j" ]] || [[ "$answer" == "y" ]]; then
|
||||
# Bereinige fälschlicherweise kopierte Dateien
|
||||
echo "📂 Überprüfe und bereinige Dateien im Verzeichnis $TARGET_DIR..."
|
||||
if [[ -d "$TARGET_DIR" ]]; then
|
||||
@ -194,5 +231,6 @@ fi
|
||||
echo "📂 Verschiebe $(xdg-user-dir)/Pictures nach $(xdg-user-dir PICTURES)..."
|
||||
rsync -av --ignore-existing "$(xdg-user-dir)/Pictures/" "$(xdg-user-dir PICTURES)/"
|
||||
rm -r "$(xdg-user-dir)/Pictures/"
|
||||
fi
|
||||
|
||||
echo "✅ Skript erfolgreich ausgeführt!"
|
||||
|
||||
@ -4,7 +4,7 @@ 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."
|
||||
echo "❌ Dieses Skript muss als root ausgeführt werden."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
|
||||
# Sicherstellen, dass das Skript mit Root-Rechten ausgeführt wird
|
||||
if [[ $EUID -ne 0 ]]; then
|
||||
echo "Dieses Skript muss als root ausgeführt werden."
|
||||
echo "❌ Dieses Skript muss als root ausgeführt werden."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
@ -10,6 +10,11 @@ fi
|
||||
apt update && apt upgrade -y
|
||||
|
||||
# Steam-Installation
|
||||
read -p "❓ Soll Steam installiert werden? (j/n) [n]: " answer
|
||||
answer=${answer,,} # In Kleinbuchstaben umwandeln
|
||||
answer=${answer:-n} # Standardwert 'n', falls leer
|
||||
|
||||
if [[ "$answer" == "j" ]] || [[ "$answer" == "y" ]]; then
|
||||
dpkg --add-architecture i386
|
||||
apt update
|
||||
apt install -y wget curl
|
||||
@ -17,8 +22,14 @@ apt install -y wget curl
|
||||
wget -O /tmp/steam.deb https://cdn.akamai.steamstatic.com/client/installer/steam.deb
|
||||
apt install -y /tmp/steam.deb
|
||||
rm /tmp/steam.deb
|
||||
fi
|
||||
|
||||
# Lutris-Installation
|
||||
read -p "❓ Soll Lutris installiert werden? (j/n) [n]: " answer
|
||||
answer=${answer,,} # In Kleinbuchstaben umwandeln
|
||||
answer=${answer:-n} # Standardwert 'n', falls leer
|
||||
|
||||
if [[ "$answer" == "j" ]] || [[ "$answer" == "y" ]]; then
|
||||
LUTRIS_KEYRING="/etc/apt/keyrings/lutris.gpg"
|
||||
LUTRIS_REPO="https://download.opensuse.org/repositories/home:/strycore/Debian_12/"
|
||||
|
||||
@ -31,5 +42,6 @@ echo "deb [signed-by=$LUTRIS_KEYRING] $LUTRIS_REPO ./" >/etc/apt/sources.list.d/
|
||||
|
||||
apt update
|
||||
apt install -y lutris
|
||||
fi
|
||||
|
||||
echo "✅ Installation von Steam und Lutris abgeschlossen!"
|
||||
echo "✅ Skript abgeschlossen!"
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user