#!/bin/bash # Hiba esetén azonnal leáll a script set -e # Jogosultság ellenőrzés if [ "$EUID" -ne 0 ]; then echo "Please, run script with sudo" exit 1 fi # GPU választás ismétléssel while true; do echo "Válaszd ki melyik GPU-val rendelkezel:" echo "1 - AMD" echo "2 - NVIDIA - Csak ez műkszik xD" read -p "Add meg a választásod (1-2): " gpu_choice # Ha a bemenet érvényes (1 vagy 2), kilépünk a ciklusból if [[ "$gpu_choice" == "1" || "$gpu_choice" == "2" ]]; then break else echo "Érvénytelen választás, próbáld újra." fi done # Kezelőfelület választás ismétléssel while true; do echo "Válassz ki egy kezelőfelületet:" echo "1 - GNOME telepítés - Csak ez műkszik xD" echo "2 - KDE telepítés" echo "3 - XFCE telepítés" echo "4 - Cinnamon telepítés" read -p "Add meg a választásod (1-4): " de_choice # Ha a bemenet érvényes (1-4), kilépünk a ciklusból if [[ "$de_choice" =~ ^[1-4]$ ]]; then break else echo "Érvénytelen választás, próbáld újra." fi done # Frissítsük a csomaglistát echo "Csomaglista frissítése..." sudo pacman -Syu --noconfirm # Nano és Bash-completion telepítése echo "Csomagok telepítése..." sudo pacman -S --noconfirm nano bash-completion # pacman.conf helyének meghatározása PACMAN_CONF="/etc/pacman.conf" # Ellenőrizzük, hogy a fájl létezik-e if [[ ! -f $PACMAN_CONF ]]; then echo "Az $PACMAN_CONF fájl nem található." exit 1 fi # Távolítsuk el a '#' jelet a szükséges sorok elejéről sed -i 's/^#ParallelDownloads = 5/ParallelDownloads = 5/' "$PACMAN_CONF" sed -i 's/^#Color/Color/' "$PACMAN_CONF" # Ellenőrizzük, hogy a ParallelDownloads sor sikeresen frissült-e if ! grep -q "^ParallelDownloads = 5" "$PACMAN_CONF"; then echo "Nem sikerült frissíteni a #ParallelDownloads = 5 sort. A script leáll." exit 1 fi # Adjunk hozzá egy ILoveCandy sort a ParallelDownloads sor alá sed -i '/^ParallelDownloads = 5/a ILoveCandy' "$PACMAN_CONF" # Ellenőrizzük, hogy a ILoveCandy sor sikeresen bekerült-e if ! grep -q "^ILoveCandy" "$PACMAN_CONF"; then echo "Nem sikerült hozzáadni az ILoveCandy sort. A script leáll." exit 1 fi # Ellenőrizzük, hogy a Color sor sikeresen frissült-e if ! grep -q "^Color" "$PACMAN_CONF"; then echo "Nem sikerült frissíteni a #Color sort. A script leáll." exit 1 fi echo "A módosítások sikeresen megtörténtek: #ParallelDownloads = 5 frissítve, ILoveCandy hozzáadva, #Color frissítve." # Grub fájl helye GRUB_DEFAULT="/etc/default/grub" # Ellenőrizzük, hogy a fájl létezik-e if [[ ! -f $GRUB_DEFAULT ]]; then echo "Az $GRUB_DEFAULT fájl nem található." exit 1 fi # Ellenőrizzük, hogy a GRUB_TIMEOUT_STYLE sor már létezik-e if grep -q "^GRUB_TIMEOUT_STYLE=hidden" "$GRUB_DEFAULT"; then echo "A GRUB_TIMEOUT_STYLE=hidden már szerepel az $GRUB_DEFAULT fájlban." else # Adjuk hozzá a sort a fájl végéhez echo "GRUB_TIMEOUT_STYLE=hidden" >> "$GRUB_DEFAULT" echo "A GRUB_TIMEOUT_STYLE=hidden hozzáadva az $GRUB_DEFAULT fájlhoz." fi # Futtassuk a grub-mkconfig parancsot if grub-mkconfig -o /boot/grub/grub.cfg; then echo "A GRUB konfiguráció sikeresen frissítve." else echo "Nem sikerült frissíteni a GRUB konfigurációt." exit 1 fi # Választott GPU kódok futtatása if [ "$gpu_choice" == "1" ]; then echo "AMD driverek telepítése..." # Itt add meg az AMD driverek telepítéséhez szükséges parancsokat elif [ "$gpu_choice" == "2" ]; then echo "NVIDIA driverek telepítése..." sudo pacman-key --recv-keys F3B607488DB35A47 --keyserver keyserver.ubuntu.com sudo pacman-key --lsign-key F3B607488DB35A47 sudo pacman -U --noconfirm 'https://mirror.cachyos.org/repo/x86_64/cachyos/cachyos-keyring-20240331-1-any.pkg.tar.zst' \ 'https://mirror.cachyos.org/repo/x86_64/cachyos/cachyos-mirrorlist-18-1-any.pkg.tar.zst' if ! grep -q "\[cachyos\]" /etc/pacman.conf; then echo -e "\n[cachyos]\nInclude = /etc/pacman.d/cachyos-mirrorlist" | sudo tee -a /etc/pacman.conf > /dev/null echo "A [cachyos] szekció sikeresen hozzáadva az /etc/pacman.conf fájlhoz." fi sudo pacman -Syu --noconfirm sudo pacman -S --noconfirm linux-cachyos sudo grub-mkconfig -o /boot/grub/grub.cfg sudo pacman -S --noconfirm linux-cachyos-nvidia fi # Választott DE kódok futtatása if [ "$de_choice" == "1" ]; then echo "GNOME telepítése..." sudo pacman -S --noconfirm gnome-shell gdm gnome-control-center gnome-settings-daemon gnome-session sudo pacman -S --noconfirm nautilus gnome-terminal sudo pacman -S --noconfirm gnome-tweaks gnome-shell-extensions gnome-disk-utility gnome-system-monitor gedit gnome-calculator gnome-browser-connector systemctl enable gdm.service elif [ "$de_choice" == "2" ]; then echo "KDE telepítése..." # Itt add meg a KDE telepítéséhez szükséges parancsokat elif [ "$de_choice" == "3" ]; then echo "XFCE telepítése..." # Itt add meg az XFCE telepítéséhez szükséges parancsokat elif [ "$de_choice" == "4" ]; then echo "Cinnamon telepítése..." # Itt add meg a Cinnamon telepítéséhez szükséges parancsokat fi # Minimális csomagok telepítése echo "Csomagok telepítése..." sudo pacman -S --noconfirm eog flatpak base-devel firefox baobab ffmpeg git xdg-desktop-portal-wlr # Restart echo "Újraindítás..." for ((i=5; i>0; i--)); do echo "$i" sleep 1 done reboot