#!/bin/bash function goto { label=$1 cmd=$(sed -n "/^:[[:blank:]][[:blank:]]*${label}/{:a;n;p;ba};" $0 | grep -v ':$') eval "$cmd" exit } function upgrade2ultimate { ## Graphical sudo pacman -S --needed pamac-all ## APPIMAGE Support sudo pacman -S --noconfirm --needed appimagelauncher fwupd apparmor snapd snapd-glib flatpak sudo pacman -S --noconfirm --needed garuda-alsa garuda-pulse garuda-pipewire pulseaudio-ctl playerctl sudo pacman -S --noconfirm --needed qomui-git sudo pacman -S --noconfirm --needed garuda-settings-samba system-config-samba garuda-printer garuda-scanner sudo pacman -S --noconfirm --needed evdev-right-click-emulation ## Desktop Utils sudo pacman -S --noconfirm --needed libdvdcss libva-utils vdpauinfo vulkan-tools mesa-demos lib32-mesa-demos sudo pacman -S --noconfirm --needed garuda-asian noto-fonts-extra ttf-opensans ## office sudo pacman -S --noconfirm --needed libreoffice-fresh sudo pacman -S --noconfirm --needed libmythes ## Internet applications sudo pacman -S --noconfirm --needed telegram-desktop joplin murmur mumble discord streamlink-twitch-gui syncthing-gtk nextcloud-client firefox-extension-bitwarden fractal firefox-extension-xdm-browser-monitor sudo pacman -S --noconfirm --needed garuda-virt-manager sudo pacman -S --noconfirm --needed garuda-wine sudo pacman -S --noconfirm --needed ialauncher-git steam steam-native-runtime lutris gamehub itch minigalaxy legendary sudo pacman -S --noconfirm --needed openrgb-git piper fancontrol-gui-git corectrl gwe goverlay-git mangohud lib32-mangohud gamemode lib32-gamemode dxvk-mingw-git vkbasalt proton-tkg-git sudo pacman -S --noconfirm --needed antimicrox linuxconsole xboxdrv xpadneo-dkms-git steamos-xpad-dkms xow-git xbox-generic-controller game-devices-udev retroarch-autoconfig-udev-git sudo pacman -S --noconfirm --needed libretro sync } systemctl --user enable gamemoded >/dev/null 2>&1 & systemctl --user start gamemoded >/dev/null 2>&1 & systemctl --user enable pulseaudio-bluetooth-autoconnect >/dev/null 2>&1 & systemctl --user start pulseaudio-bluetooth-autoconnect >/dev/null 2>&1 & systemctl --user enable android-session-manager >/dev/null 2>&1 & systemctl --user start android-session-manager >/dev/null 2>&1 & systemctl --user enable psd >/dev/null 2>&1 & systemctl --user start psd >/dev/null 2>&1 & libinput-gestures-setup autostart >/dev/null 2>&1 & libinput-gestures-setup start >/dev/null 2>&1 & setup_dxvk install 2>&1 & clear echo "Welcome to the initial setup assistant!" : start echo "What do you want to do?" echo "" echo "1) Get initial mirrorlist & download list of packages" echo "2) Update the system" echo "3) Debloat the system" echo "4) Enable systemwide adblocking / HiDPI mode / guest user" echo " also disable Samba / printing / scanner support" echo "5) Disable CPU migitations / enable sysrq / set boot options" echo "6) Fix missing characters by installing asian fonts packages" echo "7) Enable Snap, Appimage & Flatpak support" echo "8) Install gaming dependencies, Lutris & Steam" echo "9) Upgrade to Ultimate edition" echo "" echo "10) Exit" echo "" read selection if [ $selection = "1" ]; then echo "" echo "Select options in Reflector Simple!" echo "If no mirrors were found select german servers." reflector-simple >/dev/null 2>&1 sudo pacman -Syy echo "" goto "start" elif [ $selection = "2" ]; then echo "" sudo pacman -Syu echo "" echo "System upgraded." echo "" goto "start" elif [ $selection = "3" ]; then echo "" echo "Follow the short tutorial." echo "Make sure to inspect the removed packages first! 🛑" firefox --new-window https://wiki.garudalinux.org/en/removing-bloat >/dev/null 2>&1 & pamac-manager >/dev/null 2>&1 goto "start" elif [ $selection = "4" ]; then echo "" echo "Find it in the settings tab. 🖥" garuda-welcome >/dev/null 2>&1 echo "" goto "start" elif [ $selection = "5" ]; then echo "" echo "Disabling CPU mitiations increases performance but can possibly lead to" echo "security issues." echo "Use it with caution! 🛑" sudo garuda-boot-options >/dev/null 2>&1 echo "" goto "start" elif [ $selection = "6" ]; then echo "" sudo pacman -Syu --noconfirm garuda-asian echo "" echo "Extra fonts should be installed now." goto "start" elif [ $selection = "7" ]; then echo "" sudo pacman -R pamac-aur pamac-tray-appindicator sudo pacman -Syu --noconfirm snapd snapd-glib apparmor flatpak pamac-all appimagelauncher echo "" echo "Snap & Flatpak support should now be enabled." goto "start" elif [ $selection = "8" ]; then echo "" sudo pacman -Syu --noconfirm gamemode lib32-gamemode lutris garuda-wine steam steam-native-runtime mangohud lib32-mangohud proton-tkg-git dxvk-mingw-git systemctl --user enable --now gamemoded echo "" echo "All gaming apps should now be installed. 🕹" goto "start" elif [ $selection = "9" ]; then echo "" upgrade2ultimate echo "" goto "start" elif [ $selection = "10" ]; then exit else echo "Thats not a valid choice! ❌" goto "start" fi