2020-10-27 07:27:01 -04:00
|
|
|
#!/bin/bash
|
2020-10-03 11:50:23 -04:00
|
|
|
function goto
|
|
|
|
{
|
|
|
|
label=$1
|
|
|
|
cmd=$(sed -n "/^:[[:blank:]][[:blank:]]*${label}/{:a;n;p;ba};" $0 |
|
|
|
|
grep -v ':$')
|
|
|
|
eval "$cmd"
|
|
|
|
exit
|
|
|
|
}
|
|
|
|
|
2020-10-27 08:02:51 -04:00
|
|
|
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 &
|
|
|
|
|
2020-10-03 11:50:23 -04:00
|
|
|
clear
|
|
|
|
echo "Welcome to the initial setup assistant!"
|
2020-10-06 09:42:47 -04:00
|
|
|
|
2020-10-03 11:50:23 -04:00
|
|
|
: start
|
2020-11-10 13:53:33 -05:00
|
|
|
clear
|
|
|
|
|
2020-10-03 11:50:23 -04:00
|
|
|
echo "What do you want to do?"
|
|
|
|
echo ""
|
|
|
|
echo "1) Get initial mirrorlist & download list of packages"
|
|
|
|
echo "2) Update the system"
|
2020-11-10 13:53:33 -05:00
|
|
|
echo "3) Enable systemwide adblocking / HiDPI mode"
|
|
|
|
echo "4) Disable CPU migitations / change boot options"
|
2020-10-03 11:50:23 -04:00
|
|
|
echo ""
|
2020-11-10 13:53:33 -05:00
|
|
|
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"
|
2020-10-03 11:50:23 -04:00
|
|
|
echo ""
|
2020-11-10 13:53:33 -05:00
|
|
|
echo "13) Exit"
|
2020-10-03 11:50:23 -04:00
|
|
|
|
|
|
|
read selection
|
|
|
|
|
|
|
|
if [ $selection = "1" ]; then
|
2020-11-10 13:53:33 -05:00
|
|
|
clear
|
2020-11-10 14:04:01 -05:00
|
|
|
echo "Select the right mirrors in Reflector Simple!"
|
|
|
|
echo "If no mirrors were found select german servers. ☝🏻"
|
2020-10-03 11:50:23 -04:00
|
|
|
reflector-simple >/dev/null 2>&1
|
|
|
|
sudo pacman -Syy
|
|
|
|
goto "start"
|
|
|
|
elif [ $selection = "2" ]; then
|
2020-11-10 13:53:33 -05:00
|
|
|
clear
|
2020-10-03 11:50:23 -04:00
|
|
|
sudo pacman -Syu
|
|
|
|
goto "start"
|
2020-11-10 13:53:33 -05:00
|
|
|
elif [ $selection = "3" ]; then
|
|
|
|
clear
|
2020-10-06 09:42:47 -04:00
|
|
|
echo "Find it in the settings tab. 🖥"
|
2020-10-03 11:50:23 -04:00
|
|
|
garuda-welcome >/dev/null 2>&1
|
|
|
|
goto "start"
|
2020-11-10 13:53:33 -05:00
|
|
|
elif [ $selection = "4" ]; then
|
|
|
|
clear
|
2020-11-10 14:04:01 -05:00
|
|
|
echo "Disabling CPU mitiations increases performance but can possibly lead to security issues."
|
2020-10-06 09:42:47 -04:00
|
|
|
echo "Use it with caution! 🛑"
|
|
|
|
sudo garuda-boot-options >/dev/null 2>&1
|
2020-10-03 11:50:23 -04:00
|
|
|
goto "start"
|
2020-11-10 13:53:33 -05:00
|
|
|
elif [ $selection = "5" ]; then
|
|
|
|
clear
|
|
|
|
sudo pacman -Syu --noconfirm garuda-asian noto-fonts-extra
|
2020-10-03 11:50:23 -04:00
|
|
|
goto "start"
|
2020-11-10 13:53:33 -05:00
|
|
|
elif [ $selection = "6" ]; then
|
|
|
|
clear
|
2020-10-14 10:05:27 -04:00
|
|
|
sudo pacman -R pamac-aur pamac-tray-appindicator
|
2020-10-29 12:08:59 -04:00
|
|
|
sudo pacman -Syu --noconfirm pamac-all appimagelauncher fwupd apparmor snapd snapd-glib flatpak
|
2020-11-10 13:53:33 -05:00
|
|
|
sudo systemctl enable --now snapd
|
|
|
|
goto "start"
|
|
|
|
elif [ $selection = "7" ]; then
|
2020-11-10 14:23:07 -05:00
|
|
|
: gaming
|
|
|
|
if pacman -Qs garuda-gamer > /dev/null ; then
|
|
|
|
echo "Now you can choose which components you need using the Garuda Gamer app. 🎮"
|
|
|
|
garuda-gamer >/dev/null 2>&1
|
2020-11-10 13:53:33 -05:00
|
|
|
goto "start"
|
2020-11-10 14:23:07 -05:00
|
|
|
else sudo pacman -Syu garuda-gamer
|
|
|
|
goto "gaming"
|
2020-11-10 13:53:33 -05:00
|
|
|
fi
|
2020-10-03 11:50:23 -04:00
|
|
|
elif [ $selection = "8" ]; then
|
2020-11-10 13:53:33 -05:00
|
|
|
clear
|
2020-11-10 14:23:07 -05:00
|
|
|
sudo pacman -Syu --noconfirm --needed garuda-alsa garuda-pulse garuda-pipewire pulseaudio-ctl playerctl
|
2020-10-03 11:50:23 -04:00
|
|
|
goto "start"
|
|
|
|
elif [ $selection = "9" ]; then
|
2020-11-10 13:53:33 -05:00
|
|
|
clear
|
2020-11-10 14:23:07 -05:00
|
|
|
sudo pacman -Syu --noconfirm --needed garuda-settings-samba system-config-samba garuda-printer garuda-scanner
|
2020-10-03 11:50:23 -04:00
|
|
|
goto "start"
|
|
|
|
elif [ $selection = "10" ]; then
|
2020-11-10 13:53:33 -05:00
|
|
|
: office-selection
|
|
|
|
clear
|
|
|
|
echo "Which of these do you need?"
|
2020-11-10 16:39:36 -05:00
|
|
|
echo "LibreOffice is the recommended choice if you dont know any of these and need a full office suite. 🖨"
|
|
|
|
echo "If you prefer a simple word processor Abiword is also a good choice to begin with."
|
2020-11-10 14:04:01 -05:00
|
|
|
echo ""
|
2020-11-10 16:39:36 -05:00
|
|
|
echo "1) LibreOffice "
|
2020-11-10 13:53:33 -05:00
|
|
|
echo "2) Onlyoffice"
|
|
|
|
echo "3) WPS Office"
|
|
|
|
echo "4) Free Office"
|
|
|
|
echo "5) Yozo Office"
|
2020-11-10 16:39:36 -05:00
|
|
|
echo "6) Abiword"
|
2020-11-10 13:53:33 -05:00
|
|
|
read office
|
|
|
|
if [ $office = "1" ]; then
|
2020-11-10 14:23:07 -05:00
|
|
|
sudo pacman -Syu libreoffice-fresh libmythes
|
2020-11-10 13:53:33 -05:00
|
|
|
goto "start"
|
|
|
|
elif [ $office = "2" ]; then
|
2020-11-10 14:23:07 -05:00
|
|
|
sudo pacman -Syu onlyoffice-bin
|
2020-11-10 13:53:33 -05:00
|
|
|
goto "start"
|
|
|
|
elif [ $office = "3" ]; then
|
2020-11-10 14:23:07 -05:00
|
|
|
sudo pacman -Syu wps-office wps-office-mime ttf-wps-fonts
|
2020-11-10 13:53:33 -05:00
|
|
|
goto "start"
|
|
|
|
elif [ $office = "4" ]; then
|
2020-11-10 14:23:07 -05:00
|
|
|
sudo pacman -Syu freeoffice
|
2020-11-10 13:53:33 -05:00
|
|
|
goto "start"
|
|
|
|
elif [ $office = "5" ]; then
|
2020-11-10 14:23:07 -05:00
|
|
|
sudo pacman -Syu yozo-office yozo-office-fonts
|
2020-11-10 13:53:33 -05:00
|
|
|
goto "start"
|
2020-11-10 16:39:36 -05:00
|
|
|
elif [ $office = "6" ]; then
|
|
|
|
sudo pacman -Syu abiword
|
|
|
|
goto "start"
|
2020-11-10 13:53:33 -05:00
|
|
|
else echo "Thats not a valid choice! ❌"
|
|
|
|
goto "office-selection"
|
|
|
|
fi
|
|
|
|
elif [ $selection = "11" ]; then
|
|
|
|
clear
|
2020-11-10 14:23:07 -05:00
|
|
|
sudo pacman -Syu --noconfirm --needed telegram-desktop joplin murmur mumble discord streamlink-twitch-gui syncthing-gtk nextcloud-client firefox-extension-bitwarden fractal firefox-extension-xdm-browser-monitor
|
2020-11-10 13:53:33 -05:00
|
|
|
goto "start"
|
|
|
|
elif [ $selection = "12" ]; then
|
|
|
|
: virt-selection
|
|
|
|
clear
|
|
|
|
echo "Are you rather a fan of virtualbox or virt-manager?"
|
2020-11-10 14:04:01 -05:00
|
|
|
echo ""
|
2020-11-10 13:53:33 -05:00
|
|
|
echo "1) Virtualbox all the way!"
|
|
|
|
echo "2) Id rather choose Virt-manager."
|
|
|
|
read virt
|
|
|
|
if [ $virt = "1" ]; then
|
2020-11-10 14:23:07 -05:00
|
|
|
sudo pacman -Syu garuda-virtualbox
|
2020-11-10 13:53:33 -05:00
|
|
|
goto "start"
|
|
|
|
elif [ $virt = "2" ]; then
|
2020-11-10 14:23:07 -05:00
|
|
|
sudo pacman -Syu garuda-virt-manager
|
2020-11-10 13:53:33 -05:00
|
|
|
goto "start"
|
|
|
|
else echo "Thats not a valid choice! ❌"
|
|
|
|
goto "virt-selection"
|
|
|
|
fi
|
|
|
|
elif [ $selection = "13" ]; then
|
2020-10-03 11:50:23 -04:00
|
|
|
exit
|
2020-10-06 09:42:47 -04:00
|
|
|
else echo "Thats not a valid choice! ❌"
|
2020-10-03 11:50:23 -04:00
|
|
|
goto "start"
|
|
|
|
fi
|