1
0
Fork 0
mirror of synced 2024-06-21 15:31:09 -04:00
garuda-common-settings/usr/bin/setup-assistant
2020-10-27 13:02:51 +01:00

256 lines
9.6 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
}
function upgrade2ultimate
{
echo "###############################################################################"
echo "#### WELCOME TO THE GARUDA LINUX ULTIMATE UPDATE SCRIPT V1.0 ####"
echo "###############################################################################"
## Graphical
sudo pacman -S --needed pamac-all
## APPIMAGE Support
sudo pacman -S --noconfirm --needed appimagelauncher fwupd apparmor snapd snapd-glib flatpak
echo "###############################################################################"
echo "#### INSTALLED PACKAGE MANAGEMENT ####"
echo "###############################################################################"
sudo pacman -S --noconfirm --needed garuda-alsa garuda-pulse garuda-pipewire pulseaudio-ctl playerctl
echo "###############################################################################"
echo " INSTALLED AUDIO ####"
echo "###############################################################################"
sudo pacman -S --noconfirm --needed qomui-git
echo "###############################################################################"
echo "#### INSTALLED NETWORK ####"
echo "###############################################################################"
sudo pacman -S --noconfirm --needed garuda-settings-samba system-config-samba garuda-printer garuda-scanner
echo "###############################################################################"
echo "#### INSTALLED PRINTER ####"
echo "###############################################################################"
sudo pacman -S --noconfirm --needed evdev-right-click-emulation
echo "###############################################################################"
echo "#### INSTALLED INPUT ####"
echo "###############################################################################"
## Desktop Utils
sudo pacman -S --noconfirm --needed libdvdcss libva-utils vdpauinfo vulkan-tools mesa-demos lib32-mesa-demos
echo "###############################################################################"
echo "#### INSTALLED UTILITIES ####"
echo "###############################################################################"
sudo pacman -S --noconfirm --needed garuda-asian noto-fonts-extra ttf-opensans
echo "###############################################################################"
echo "#### INSTALLED FONTS ####"
echo "###############################################################################"
## office
sudo pacman -S --noconfirm --needed libreoffice-fresh
sudo pacman -S --noconfirm --needed libmythes
echo "###############################################################################"
echo "#### INSTALLED OFFICE ####"
echo "###############################################################################"
## 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
echo "###############################################################################"
echo "#### INSTALLED OTHER APPS ####"
echo "###############################################################################"
sudo pacman -S --noconfirm --needed garuda-virt-manager
echo "###############################################################################"
echo "#### INSTALLED VIRTUALIZATION ####"
echo "###############################################################################"
sudo pacman -S --noconfirm --needed garuda-wine
echo "###############################################################################"
echo "#### INSTALLED WINE ####"
echo "###############################################################################"
sudo pacman -S --noconfirm --needed ialauncher-git steam steam-native-runtime lutris gamehub itch minigalaxy legendary
echo "###############################################################################"
echo "#### INSTALLED GAME LAUNCHERS ####"
echo "###############################################################################"
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
echo "###############################################################################"
echo "#### INSTALLED GAMING TOOLS ####"
echo "###############################################################################"
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
echo "###############################################################################"
echo "#### INSTALLED GAME CONTROLLER ####"
echo "###############################################################################"
sudo pacman -S --noconfirm --needed libretro
echo "###############################################################################"
echo "#### INSTALLED EMULATORS ####"
echo "###############################################################################"
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 &
clear
echo "Welcome to the initial setup assistant!"
: start
echo "What do you want to do?"
echo ""
echo "Lite & Ultimate:"
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 ""
echo "Lite only:"
echo "6) Fix missing characters by installing asian fonts packages"
echo "7) Enable Snap & Flatpak support"
echo "8) Install gaming dependencies, Lutris & Steam"
echo "9) Upgrade to Ultimate (excluding desktop-specific apps)"
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