From 7192d8687f000a267dab81dc922533f33ac07310 Mon Sep 17 00:00:00 2001 From: DragonSlayer_14 Date: Wed, 26 Mar 2025 10:50:10 +0100 Subject: [PATCH] =?UTF-8?q?Feat:=20Passt=20Skript=20f=C3=BCr=20Arch=20an.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- 0_Setup.sh | 62 ++++++++++++++++++++++++++++++++++++++++++++---------- 1 file changed, 51 insertions(+), 11 deletions(-) diff --git a/0_Setup.sh b/0_Setup.sh index d4be5c6..06dde4a 100755 --- a/0_Setup.sh +++ b/0_Setup.sh @@ -6,13 +6,53 @@ if [ "$(id -u)" -ne 0 ]; then exit 1 fi -apt update && apt upgrade -y -apt install -y git sudo 7zip unrar unzip network-manager software-properties-common tree bluetooth wget curl +# System aktualisieren und benötigte Pakete installieren +pacman -Syu --noconfirm git sudo p7zip unrar unzip networkmanager tree bluez bluez-utils wget curl less ineturils -# sbin in Path +# Aktivieren und Starten von NetworkManager und Bluetooth-Diensten +systemctl enable --now NetworkManager +systemctl enable --now bluetooth + +# 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 +answer=${answer,,} +answer=${answer:-n} + +if [[ "$answer" == "j" ]] || [[ "$answer" == "y" ]]; then + # Gruppe "sudo" erstellen, falls sie nicht existiert + if ! grep -q "^sudo:" /etc/group; then + groupadd sudo + echo "ℹ️ Gruppe 'sudo' wurde erstellt." + else + echo "ℹ️ Gruppe 'sudo' existiert bereits." + fi + + # Sudoers-Regel für die Gruppe "sudo" erstellen + SUDOERS_FILE="/etc/sudoers.d/00-sudo-group" + if [ ! -f "$SUDOERS_FILE" ]; then + echo "%sudo ALL=(ALL:ALL) ALL" > "$SUDOERS_FILE" + chmod 440 "$SUDOERS_FILE" + echo "ℹ️ Sudo-Regel für die Gruppe 'sudo' wurde erstellt." + else + echo "ℹ️ Sudo-Regel für die Gruppe 'sudo' existiert bereits." + fi + + # Abfrage, ob ein Benutzer der Gruppe hinzugefügt werden soll + read -p "❓ Welcher Benutzer soll zur Gruppe 'sudo' hinzugefügt werden? (Leer lassen für keinen): " username + if [[ -n "$username" ]]; then + if id "$username" &>/dev/null; then + usermod -aG sudo "$username" + echo "ℹ️ Benutzer '$username' wurde zur Gruppe 'sudo' hinzugefügt." + else + echo "❌ Benutzer '$username' existiert nicht!" + fi + fi +fi + +# sbin in PATH aufnehmen 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 +answer=${answer,,} +answer=${answer:-n} if [[ "$answer" == "j" ]] || [[ "$answer" == "y" ]]; then cat << 'EOF' > /etc/profile.d/sbin_in_path.sh @@ -33,13 +73,13 @@ fi # 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 +answer=${answer,,} +answer=${answer:-n} 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\ *) + case " $(groups) " in *\ sudo\ *) if [ -x /usr/bin/sudo ]; then echo 'To run a command as administrator (user "root"), use "sudo ".' echo 'See "man sudo_root" for details.' @@ -51,10 +91,10 @@ EOF echo "ℹ️ sudo-Hinweis wurde hinzugefügt!" fi -# sudo-Hinweis +# XDG-Data-Dirs setzen 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 +answer=${answer,,} +answer=${answer:-n} if [[ "$answer" == "j" ]] || [[ "$answer" == "y" ]]; then cat << 'EOF' > /etc/profile.d/xdg_dirs_desktop_session.sh