1
0
Fork 0
mirror of synced 2024-11-22 18:15:37 -05:00
garuda-common-settings/usr/bin/setup-assistant
2020-11-10 20:04:01 +01:00

183 lines
6.2 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 the right mirrors 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 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 ""
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) I dont care, just install everything! 🤪"
echo ""
echo "6) Go back"
read game
if [ $game = "1" ]; then
sudo pacman -S garuda-wine
goto "game-selection"
elif [ $game = "2" ]; then
sudo pacman -S ialauncher-git steam steam-native-runtime lutris gamehub itch minigalaxy legendary
goto "game-selection"
elif [ $game = "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 [ $game = "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 [ $game = "5" ]; then
sudo pacman -S garuda-gamer
elif [ $game = "6" ]; 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 "Libreoffice is the recommended choice if you dont know any of these 🖨"
echo ""
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 ""
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