176 lines
5.9 KiB
Bash
Executable file
176 lines
5.9 KiB
Bash
Executable file
#!/bin/bash
|
|
function goto
|
|
{
|
|
label=$1
|
|
cmd=$(sed -n "/^:[[:blank:]][[:blank:]]*${label}/{:a;n;p;ba};" $0 |
|
|
grep -v ':$')
|
|
eval "$cmd"
|
|
exit
|
|
}
|
|
|
|
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 &
|
|
|
|
clear
|
|
echo "Welcome to the initial setup assistant!"
|
|
|
|
: start
|
|
clear
|
|
|
|
echo "What do you want to do?"
|
|
echo ""
|
|
echo "1) Get initial mirrorlist & download list of packages"
|
|
echo "2) Update the system"
|
|
echo "3) Enable systemwide adblocking / HiDPI mode"
|
|
echo "4) Disable CPU migitations / change boot options"
|
|
echo ""
|
|
echo "Install additional (Ultimate) packages:"
|
|
echo "5) Asian fonts packages"
|
|
echo "6) Snap, Appimage & Flatpak support"
|
|
echo "7) Gaming dependencies, Lutris & Steam"
|
|
echo "8) PulseAudio, Alsa & Pipewire support"
|
|
echo "9) Scanner, Printer & Samba support"
|
|
echo "10) Office packages (Libreoffice, Onlyoffice, ...)"
|
|
echo "11) Recommended desktop utilities (Telegram, Nextcloud, XDM, ...)"
|
|
echo "12) Virtualisation software"
|
|
echo ""
|
|
echo "13) Exit"
|
|
|
|
read selection
|
|
|
|
if [ $selection = "1" ]; then
|
|
clear
|
|
echo "Select options in Reflector Simple!"
|
|
echo "If no mirrors were found select german servers."
|
|
reflector-simple >/dev/null 2>&1
|
|
sudo pacman -Syy
|
|
goto "start"
|
|
elif [ $selection = "2" ]; then
|
|
clear
|
|
sudo pacman -Syu
|
|
goto "start"
|
|
elif [ $selection = "3" ]; then
|
|
clear
|
|
echo "Find it in the settings tab. 🖥"
|
|
garuda-welcome >/dev/null 2>&1
|
|
goto "start"
|
|
elif [ $selection = "4" ]; then
|
|
clear
|
|
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
|
|
goto "start"
|
|
elif [ $selection = "5" ]; then
|
|
clear
|
|
sudo pacman -Syu --noconfirm garuda-asian noto-fonts-extra
|
|
goto "start"
|
|
elif [ $selection = "6" ]; then
|
|
clear
|
|
sudo pacman -R pamac-aur pamac-tray-appindicator
|
|
sudo pacman -Syu --noconfirm pamac-all appimagelauncher fwupd apparmor snapd snapd-glib flatpak
|
|
sudo systemctl enable --now snapd
|
|
goto "start"
|
|
elif [ $selection = "7" ]; then
|
|
: game-selection
|
|
clear
|
|
echo "Which of these do you need?"
|
|
echo "1) WINE! (running Windoze apps)"
|
|
echo "2) Game launchers (Lutris, Steam, etc..)"
|
|
echo "3) Utilities (Fancontrol, Mangohud, Gamemode, ..)"
|
|
echo "4) Controller support"
|
|
echo "5) Go back"
|
|
read game
|
|
if [ $virt = "1" ]; then
|
|
sudo pacman -S garuda-wine
|
|
goto "game-selection"
|
|
elif [ $virt = "2" ]; then
|
|
sudo pacman -S ialauncher-git steam steam-native-runtime lutris gamehub itch minigalaxy legendary
|
|
goto "game-selection"
|
|
elif [ $virt = "3" ]; then
|
|
sudo pacman -S openrgb-git piper fancontrol-gui-git corectrl gwe goverlay-git mangohud lib32-mangohud gamemode lib32-gamemode dxvk-mingw-git vkbasalt proton-tkg-git libretro vulkan-tools mesa-demos lib32-mesa-demos libdvdcss libva-utils vdpauinfo
|
|
systemctl --user enable --now gamemoded 2>&1 &
|
|
setup_dxvk install 2>&1 &
|
|
goto "game-selection"
|
|
elif [ $virt = "4" ]; then
|
|
sudo pacman -S antimicrox linuxconsole xboxdrv xpadneo-dkms-git steamos-xpad-dkms xow-git xbox-generic-controller game-devices-udev retroarch-autoconfig-udev-git
|
|
goto "game-selection"
|
|
elif [ $virt = "5" ]; then
|
|
goto "start"
|
|
else echo "Thats not a valid choice! ❌"
|
|
goto "game-selection"
|
|
fi
|
|
goto "start"
|
|
elif [ $selection = "8" ]; then
|
|
clear
|
|
sudo pacman -S --noconfirm --needed garuda-alsa garuda-pulse garuda-pipewire pulseaudio-ctl playerctl
|
|
goto "start"
|
|
elif [ $selection = "9" ]; then
|
|
clear
|
|
sudo pacman -S --noconfirm --needed garuda-settings-samba system-config-samba garuda-printer garuda-scanner
|
|
goto "start"
|
|
elif [ $selection = "10" ]; then
|
|
: office-selection
|
|
clear
|
|
echo "Which of these do you need?"
|
|
echo "1) Libreoffice"
|
|
echo "2) Onlyoffice"
|
|
echo "3) WPS Office"
|
|
echo "4) Free Office"
|
|
echo "5) Yozo Office"
|
|
read office
|
|
if [ $office = "1" ]; then
|
|
sudo pacman -S libreoffice-fresh libmythes
|
|
goto "start"
|
|
elif [ $office = "2" ]; then
|
|
sudo pacman -S onlyoffice-bin
|
|
goto "start"
|
|
elif [ $office = "3" ]; then
|
|
sudo pacman -S wps-office wps-office-mime ttf-wps-fonts
|
|
goto "start"
|
|
elif [ $office = "4" ]; then
|
|
sudo pacman -S freeoffice
|
|
goto "start"
|
|
elif [ $office = "5" ]; then
|
|
sudo pacman -S yozo-office yozo-office-fonts
|
|
goto "start"
|
|
else echo "Thats not a valid choice! ❌"
|
|
goto "office-selection"
|
|
fi
|
|
elif [ $selection = "11" ]; then
|
|
clear
|
|
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
|
|
goto "start"
|
|
elif [ $selection = "12" ]; then
|
|
: virt-selection
|
|
clear
|
|
echo "Are you rather a fan of virtualbox or virt-manager?"
|
|
echo "1) Virtualbox all the way!"
|
|
echo "2) Id rather choose Virt-manager."
|
|
read virt
|
|
if [ $virt = "1" ]; then
|
|
sudo pacman -S garuda-virtualbox
|
|
goto "start"
|
|
elif [ $virt = "2" ]; then
|
|
sudo pacman -S garuda-virt-manager
|
|
goto "start"
|
|
else echo "Thats not a valid choice! ❌"
|
|
goto "virt-selection"
|
|
fi
|
|
elif [ $selection = "13" ]; then
|
|
exit
|
|
else echo "Thats not a valid choice! ❌"
|
|
goto "start"
|
|
fi
|