#!/bin/bash function upgrade2ultimate { rm -rf /tmp/setup-assistant mkdir -p /tmp/setup-assistant clear if ! yad \ --image='font-manager' \ --title="Upgrade to ULTIMATE 👾" \ --window-icon='update' \ --geometry=700x100 \ --button=No:0 \ --button=Yes:1 \ --text-align=center \ --center \ --text "Do you need asian font support?"; then echo "garuda-asian" >> /tmp/setup-assistant/pkgs.txt fi if ! yad \ --image='AppImageLauncher' \ --title="Upgrade to ULTIMATE 👾" \ --window-icon='update' \ --geometry=700x100 \ --button=No:0 \ --button=Yes:1 \ --text-align=center \ --center \ --text "What about Snaps, Flatpak, Appimage and firmware update support?"; then echo "sudo pacman -R pamac-aur pamac-tray-appindicator" >> /tmp/setup-assistant/prepare.sh echo "pamac-all appimagelauncher fwupd apparmor snapd snapd-glib flatpak" >> /tmp/setup-assistant/pkgs.txt echo "sudo systemctl enable --now snapd.socket" >> /tmp/setup-assistant/setup.sh echo "sudo systemctl enable --now apparmor.service" >> /tmp/setup-assistant/setup.sh echo "sudo systemctl enable --now snapd.apparmor.service" >> /tmp/setup-assistant/setup.sh fi if ! yad \ --image='pattern-games' \ --title="Upgrade to ULTIMATE 👾" \ --window-icon='update' \ --geometry=700x100 \ --button=No:0 \ --button=Yes:1 \ --text-align=center \ --center \ --text "Are you a gamer? The Garuda Gamer app will be installed for further configuration."; then echo "garuda-gamer" >> /tmp/setup-assistant/pkgs.txt echo "systemctl --user enable --now gamemoded >/dev/null 2>&1 &" >> /tmp/setup-assistant/setup.sh echo "sudo setup_dxvk install 2>&1 &" >> /tmp/setup-assistant/setup.sh fi yad \ --image='org.pulseaudio.pavucontrol' \ --title="Upgrade to ULTIMATE 👾" \ --window-icon='update' \ --text "We have metapkgs for these audio systems:" \ --geometry=600x400 \ --list \ --checklist \ --column=Install \ --column=Software \ --center < /usr/lib/setup-assistant/audio.txt > /tmp/setup-assistant/audio.txt if grep -R "PulseAudio" /tmp/setup-assistant/audio.txt; then echo "garuda-pulse pulseaudio-ctl playerctl" >> /tmp/setup-assistant/pkgs.txt echo "sudo systemctl enable --now bluetooth-autoconnect" >> /tmp/setup-assistant/setup.sh echo "systemctl enable pulseaudio-bluetooth-autoconnect --user" >> /tmp/setup-assistant/setup.sh fi if grep -R "Alsa" /tmp/setup-assistant/audio.txt; then echo "garuda-alsa" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Pipewire" /tmp/setup-assistant/audio.txt; then echo "garuda-pipewire" >> /tmp/setup-assistant/pkgs.txt fi yad \ --image='cupsprinter' \ --title="Upgrade to ULTIMATE 👾" \ --window-icon='update' \ --text "We have metapkgs for these:" \ --geometry=600x400 \ --list \ --checklist \ --column=Install \ --column=Software \ --center < /usr/lib/setup-assistant/printing.txt > /tmp/setup-assistant/printing.txt if grep -R "Printing" /tmp/setup-assistant/printing.txt; then echo "garuda-printer" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Scanning" /tmp/setup-assistant/printing.txt; then echo "garuda-scanner" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Samba" /tmp/setup-assistant/printing.txt; then echo "garuda-settings-samba system-config-samba" >> /tmp/setup-assistant/pkgs.txt fi yad \ --image='libreoffice-main' \ --title="Upgrade to ULTIMATE 👾" \ --window-icon='update' \ --text "There are a lot of office suites to choose from!" \ --geometry=600x400 \ --list \ --checklist \ --column=Install \ --column=Office \ --center < /usr/lib/setup-assistant/office.txt > /tmp/setup-assistant/office.txt if grep -R "LibreOffice Fresh" /tmp/setup-assistant/office.txt; then echo "libreoffice-fresh libmythes" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "LibreOffice Still" /tmp/setup-assistant/office.txt; then echo "libreoffice-still libmythes" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "OnlyOffice" /tmp/setup-assistant/office.txt; then echo "onlyoffice-bin" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "WPS Office" /tmp/setup-assistant/office.txt; then echo "wps-office wps-office-mime ttf-wps-fonts" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Free Office" /tmp/setup-assistant/office.txt; then echo "freeoffice" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Yozo Office" /tmp/setup-assistant/office.txt; then echo "yozo-office yozo-office-fonts" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Calligra Office" /tmp/setup-assistant/office.txt; then echo "calligra" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Abiword" /tmp/setup-assistant/office.txt; then echo "abiword" >> /tmp/setup-assistant/pkgs.txt fi yad \ --image='telegram-desktop' \ --title="Upgrade to ULTIMATE 👾" \ --window-icon='update' \ --text "Here are some desktop apps that might be useful to you:" \ --geometry=600x400 \ --list \ --checklist \ --column=Install \ --column=Applications \ --center < /usr/lib/setup-assistant/desktop-apps.txt > /tmp/setup-assistant/desktop-apps.txt if grep -R "Telegram" /tmp/setup-assistant/desktop-apps.txt; then echo "telegram-desktop" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Joplin" /tmp/setup-assistant/desktop-apps.txt; then echo "joplin" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Murmur" /tmp/setup-assistant/desktop-apps.txt; then echo "murmur" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Discord" /tmp/setup-assistant/desktop-apps.txt; then echo "discord" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Twitch GUI" /tmp/setup-assistant/desktop-apps.txt; then echo "streamlink-twitch-gui" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Syncthing-GTK" /tmp/setup-assistant/desktop-apps.txt; then echo "syncthing-gtk" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Nextcloud-client" /tmp/setup-assistant/desktop-apps.txt; then echo "nextcloud-client" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Firefox Bitwarden" /tmp/setup-assistant/desktop-apps.txt; then echo "firefox-extension-bitwarden" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Firefox XDM" /tmp/setup-assistant/desktop-apps.txt; then echo "firefox-extension-xdm-browser-monitor" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Fractal" /tmp/setup-assistant/desktop-apps.txt; then echo "fractal" >> /tmp/setup-assistant/pkgs.txt fi yad \ --image='gimp' \ --title="Upgrade to ULTIMATE 👾" \ --window-icon='update' \ --text "What about multimedia software?" \ --geometry=600x400 \ --list \ --checklist \ --column=Install \ --column=Applications \ --center < /usr/lib/setup-assistant/multimedia.txt >> /tmp/setup-assistant/multimedia.txt if grep -R "Converseen" /tmp/setup-assistant/multimedia.txt; then echo "converseen" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Transmageddon" /tmp/setup-assistant/multimedia.txt; then echo "transmageddon" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Soundconverter" /tmp/setup-assistant/multimedia.txt; then echo "soundconverter" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Piviti" /tmp/setup-assistant/multimedia.txt; then echo "piviti" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Kdenlive" /tmp/setup-assistant/multimedia.txt; then echo "kdenlive" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Audacity" /tmp/setup-assistant/multimedia.txt; then echo "audacity" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Easytag" /tmp/setup-assistant/multimedia.txt; then echo "easytag" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "GIMP" /tmp/setup-assistant/multimedia.txt; then echo "gimp" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Inkscape" /tmp/setup-assistant/multimedia.txt; then echo "inkscape" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Blender" /tmp/setup-assistant/multimedia.txt; then echo "blender" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Gcolor3" /tmp/setup-assistant/multimedia.txt; then echo "gcolor3" >> /tmp/setup-assistant/pkgs.txt fi yad \ --image='virtualbox' \ --title="Upgrade to ULTIMATE 👾" \ --window-icon='update' \ --text "Are you rather a fan of Virtualbox or virt-manager?" \ --geometry=600x400 \ --list \ --checklist \ --column=Install \ --column=Applications \ --center < /usr/lib/setup-assistant/virtualisation.txt >> /tmp/setup-assistant/virtualisation.txt if grep -R "Virtalbox" /tmp/setup-assistant/virtualisation.txt; then echo "garuda-virtualbox" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Virt-manager" /tmp/setup-assistant/virtualisation.txt; then echo "garuda-virt-manager" >> /tmp/setup-assistant/pkgs.txt fi sh /tmp/setup-assistant/prepare.sh cat /tmp/setup-assistant/pkgs.txt | sed '/^$/d;s/[[:blank:]]//g' > /tmp/setup-assistant/pkgs-install.txt alacritty -e sudo pacman "--needed -S - < /tmp/setup-assistant/pkgs-install.txt" sh /tmp/setup-assistant/setup.sh read -p "Press enter finish the setup!" rm -rf /tmp/setup-assistant } 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 & if ! yad \ --image='update' \ --title="Setup Assistant" \ --window-icon='update' \ --geometry=700x100 \ --button=No:0 \ --button=Yes:1 \ --text-align=center \ --center \ --text "Do you want to get a recent mirrorlist and refresh mirrors?"; then reflector-simple >/dev/null 2>&1 alacritty -e sudo pacman "-Syy" fi if ! yad \ --image='update' \ --title="Setup Assistant" \ --window-icon='update' \ --geometry=700x100 \ --button=No:0 \ --button=Yes:1 \ --text-align=center \ --center \ --text "Update the system? (recommended!)"; then alacritty -e sudo pacman "-Syu" fi if ! yad \ --image='pamac' \ --title="Setup Assistant" \ --window-icon='update' \ --geometry=700x100 \ --button=No:0 \ --button=Yes:1 \ --text-align=center \ --center \ --text "Upgrade to Ultimate? (You can select which apps you want!)"; then upgrade2ultimate fi