#!/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 --noconfirm -R pamac-aur pamac-tray-appindicator" >> /tmp/setup-assistant/prepare.sh echo "pamac-all appimagelauncher fwupd gnome-firmware apparmor snapd snapd-glib flatpak" >> /tmp/setup-assistant/pkgs.txt echo "sudo systemctl enable --now snapd.socket" >> /tmp/setup-assistant/setup_root.sh echo "sudo systemctl enable --now apparmor.service" >> /tmp/setup-assistant/setup_root.sh echo "sudo systemctl enable --now snapd.apparmor.service" >> /tmp/setup-assistant/setup_root.sh fi if pacman -Qs plasma-desktop > /dev/null ; then if ! yad \ --image='plasmashell' \ --title="Upgrade to ULTIMATE" \ --window-icon='update' \ --geometry=700x100 \ --button=No:0 \ --button=Yes:1 \ --text-align=center \ --center \ --text "Do you want to install additional KDE applications?"; then echo "elisa khelpcenter krdc krfb kompare krita krename ksystemlog kmouth lokalize kup audiocd-kio kmag kimtoy kleopatra qt5-imageformats kimageformats vlc" >> /tmp/setup-assistant/pkgs.txt fi fi if pacman -Qs gnome-shell > /dev/null ; then if ! yad \ --image='gnome-shell' \ --title="Upgrade to ULTIMATE" \ --window-icon='update' \ --geometry=700x100 \ --button=No:0 \ --button=Yes:1 \ --text-align=center \ --center \ --text "Do you want to install additional GNOME applications?"; then echo "gpaste eog-plugins grilo-plugins seahorse-nautilus gtkhash-nautilus gnome-logs gnome-remote-desktop gnome-sound-recorder vino rygel shotwell lollypop" >> /tmp/setup-assistant/pkgs.txt fi fi yad \ --image='libreoffice-main' \ --title="Upgrade to ULTIMATE" \ --window-icon='update' \ --text "There are a lot of office suites to choose from!" \ --geometry=600x500 \ --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 "Microsoft Office" /tmp/setup-assistant/office.txt; then echo "ms-office-online" >> /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 if grep -R "Joplin" /tmp/setup-assistant/office.txt; then echo "joplin" >> /tmp/setup-assistant/pkgs.txt fi yad \ --image='firefox' \ --title="Upgrade to ULTIMATE" \ --window-icon='update' \ --text "Here are some browsers that you can choose from:" \ --geometry=600x400 \ --list \ --checklist \ --column=Install \ --column=Applications \ --center < /usr/lib/setup-assistant/browsers.txt > /tmp/setup-assistant/browsers.txt if grep -R "Firefox" /tmp/setup-assistant/browsers.txt; then echo "firefox" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Chromium" /tmp/setup-assistant/browsers.txt; then echo "chromium" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Opera" /tmp/setup-assistant/browsers.txt; then echo "opera opera-ffmpeg-codecs" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Tor Browser" /tmp/setup-assistant/browsers.txt; then echo "torbrowser-launcher" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Otter Browser" /tmp/setup-assistant/browsers.txt; then echo "otter-browser" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Brave" /tmp/setup-assistant/browsers.txt; then echo "brave" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Falkon" /tmp/setup-assistant/browsers.txt; then echo "falkon" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Ungoogled" /tmp/setup-assistant/browsers.txt; then echo "ungoogled-chromium" >> /tmp/setup-assistant/pkgs.txt fi yad \ --image='nextcloud-client' \ --title="Upgrade to ULTIMATE" \ --window-icon='update' \ --text "Some general internet applications?" \ --geometry=600x500 \ --list \ --checklist \ --column=Install \ --column=Applications \ --center < /usr/lib/setup-assistant/internet.txt > /tmp/setup-assistant/internet.txt if grep -R "Nextcloud-client" /tmp/setup-assistant/internet.txt; then echo "nextcloud-client" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Firefox Bitwarden" /tmp/setup-assistant/internet.txt; then echo "firefox-extension-bitwarden" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Firefox XDM" /tmp/setup-assistant/internet.txt; then echo "firefox-extension-xdm-browser-monitor" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Syncthing-GTK" /tmp/setup-assistant/internet.txt; then echo "syncthing-gtk" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Filezilla" /tmp/setup-assistant/internet.txt; then echo "filezilla" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Putty" /tmp/setup-assistant/internet.txt; then echo "putty" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Nitroshare" /tmp/setup-assistant/internet.txt; then echo "nitroshare" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Jdownloader2" /tmp/setup-assistant/internet.txt; then echo "jdownloader2" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Deluge" /tmp/setup-assistant/internet.txt; then echo "deluge-gtk" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Cockpit" /tmp/setup-assistant/internet.txt; then echo "cockpit cockpit-dashboard cockpit-machines" >> /tmp/setup-assistant/pkgs.txt echo "sudo systemctl enable --now cockpit.socket" >> /tmp/setup-assistant/setup_root.sh fi if grep -R "Twitch GUI" /tmp/setup-assistant/internet.txt; then echo "streamlink-twitch-gui" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Remmina" /tmp/setup-assistant/internet.txt; then echo "remmina" >> /tmp/setup-assistant/pkgs.txt fi yad \ --image='telegram-desktop' \ --title="Upgrade to ULTIMATE" \ --window-icon='update' \ --text "Do you need communication software?" \ --geometry=600x500 \ --list \ --checklist \ --column=Install \ --column=Applications \ --center < /usr/lib/setup-assistant/communication.txt > /tmp/setup-assistant/communication.txt if grep -R "Telegram Desktop" /tmp/setup-assistant/communication.txt; then echo "telegram-desktop" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Discord" /tmp/setup-assistant/communication.txt; then echo "discord" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Element" /tmp/setup-assistant/communication.txt; then echo "element-desktop" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Wire" /tmp/setup-assistant/communication.txt; then echo "wire-desktop" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Signal" /tmp/setup-assistant/communication.txt; then echo "signal-desktop" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Jitsi-Meet" /tmp/setup-assistant/communication.txt; then echo "jitsi-meet" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Zoom" /tmp/setup-assistant/communication.txt; then echo "zoom" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Skype" /tmp/setup-assistant/communication.txt; then echo "skypeforlinux-stable-bin" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Slack" /tmp/setup-assistant/communication.txt; then echo "slack-desktop" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Whatsapp" /tmp/setup-assistant/communication.txt; then echo "whatsapp-nativefier" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Mumble" /tmp/setup-assistant/communication.txt; then echo "mumble" >> /tmp/setup-assistant/pkgs.txt fi yad \ --image='thunderbird' \ --title="Upgrade to ULTIMATE" \ --window-icon='update' \ --text "Mail clients:" \ --geometry=600x500 \ --list \ --checklist \ --column=Install \ --column=Applications \ --center < /usr/lib/setup-assistant/mail.txt > /tmp/setup-assistant/mail.txt if grep -R "Thunderbird" /tmp/setup-assistant/mail.txt; then echo "thunderbird" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Kmail" /tmp/setup-assistant/mail.txt; then echo "kmail" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Geary" /tmp/setup-assistant/mail.txt; then echo "geary" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Trojita" /tmp/setup-assistant/mail.txt; then echo "trojita" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Mailspring" /tmp/setup-assistant/mail.txt; then echo "mailspring" >> /tmp/setup-assistant/pkgs.txt fi yad \ --image='audacity' \ --title="Upgrade to ULTIMATE" \ --window-icon='update' \ --text "What about audio software?" \ --geometry=600x500 \ --list \ --checklist \ --column=Install \ --column=Applications \ --center < /usr/lib/setup-assistant/audio.txt >> /tmp/setup-assistant/audio.txt if grep -R "Olivia" /tmp/setup-assistant/audio.txt; then echo "olivia" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Kwave" /tmp/setup-assistant/audio.txt; then echo "kwave" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Cantata" /tmp/setup-assistant/audio.txt; then echo "cantata" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Audacious" /tmp/setup-assistant/audio.txt; then echo "audacious" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Audacity" /tmp/setup-assistant/audio.txt; then echo "audacity" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Lollypop" /tmp/setup-assistant/audio.txt; then echo "lollypop" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Ardour" /tmp/setup-assistant/audio.txt; then echo "ardour" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "LMMS" /tmp/setup-assistant/audio.txt; then echo "lmms" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Mixxx" /tmp/setup-assistant/audio.txt; then echo "mixxx" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "MuseScore" /tmp/setup-assistant/audio.txt; then echo "musescore" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Rosegarden" /tmp/setup-assistant/audio.txt; then echo "rosegarden" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Strawberry" /tmp/setup-assistant/audio.txt; then echo "strawberry" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Bitwig" /tmp/setup-assistant/audio.txt; then echo "bitwig-studio" >> /tmp/setup-assistant/pkgs.txt fi yad \ --image='kdenlive' \ --title="Upgrade to ULTIMATE" \ --window-icon='update' \ --text "What about video software?" \ --geometry=600x500 \ --list \ --checklist \ --column=Install \ --column=Applications \ --center < /usr/lib/setup-assistant/video.txt >> /tmp/setup-assistant/video.txt if grep -R "Kdenlive" /tmp/setup-assistant/video.txt; then echo "kdenlive movit sox opus-tools frei0r-plugins" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Baka-Mplayer" /tmp/setup-assistant/video.txt; then echo "baka-mplayer" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "OBS Studio" /tmp/setup-assistant/video.txt; then echo "obs-studio" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "SMPlayer" /tmp/setup-assistant/video.txt; then echo "smplayer smplayer-skins smplayer-themes" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Shotcut" /tmp/setup-assistant/video.txt; then echo "shotcut" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Piviti" /tmp/setup-assistant/video.txt; then echo "piviti frei0r-plugins" >> /tmp/setup-assistant/pkgs.txt fi yad \ --image='gimp' \ --title="Upgrade to ULTIMATE" \ --window-icon='update' \ --text "What about graphics software?" \ --geometry=600x500 \ --list \ --checklist \ --column=Install \ --column=Applications \ --center < /usr/lib/setup-assistant/graphics.txt >> /tmp/setup-assistant/graphics.txt if grep -R "GIMP" /tmp/setup-assistant/graphics.txt; then echo "gimp" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Krita" /tmp/setup-assistant/graphics.txt; then echo "krita krita-plugin-gmic opencolorio" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Kolourpaint" /tmp/setup-assistant/graphics.txt; then echo "kolourpaint" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Digikam" /tmp/setup-assistant/graphics.txt; then echo "digikam" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Inkscape" /tmp/setup-assistant/graphics.txt; then echo "inkcape" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Blender" /tmp/setup-assistant/graphics.txt; then echo "blender" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Pencil 2D" /tmp/setup-assistant/graphics.txt; then echo "pencil2d" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Synfig Studio" /tmp/setup-assistant/graphics.txt; then echo "synfigstudio" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "DarkTable" /tmp/setup-assistant/graphics.txt; then echo "darktable" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "FontForge" /tmp/setup-assistant/graphics.txt; then echo "fontforge" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "MyPaint" /tmp/setup-assistant/graphics.txt; then echo "mypaint" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "ImageMagick" /tmp/setup-assistant/graphics.txt; then echo "imagemagick" >> /tmp/setup-assistant/pkgs.txt fi yad \ --image='kodi' \ --title="Upgrade to ULTIMATE" \ --window-icon='update' \ --text "What about multimedia software?" \ --geometry=600x500 \ --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 "Stremio" /tmp/setup-assistant/multimedia.txt; then echo "stremio" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Kodi" /tmp/setup-assistant/multimedia.txt; then echo "kodi kodi-platform kodi-eventclients" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Mediaelch" /tmp/setup-assistant/multimedia.txt; then echo "mediaelch" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Subtitlecomposer" /tmp/setup-assistant/multimedia.txt; then echo "subtitlecomposer" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Kid3" /tmp/setup-assistant/multimedia.txt; then echo "kid3" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "K3B" /tmp/setup-assistant/multimedia.txt; then echo "k3b kaudiocreator cdpara cdparanoia cdrdao dvd+rw-tools emovix transcode vcdimager cdrtools" >> /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 "Plex" /tmp/setup-assistant/multimedia.txt; then echo "plex-media-player" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Handbrake" /tmp/setup-assistant/multimedia.txt; then echo "handbrake" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Qwinff" /tmp/setup-assistant/multimedia.txt; then echo "qwinff" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Variety" /tmp/setup-assistant/multimedia.txt; then echo "variety" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Conky" /tmp/setup-assistant/multimedia.txt; then echo "conky-lua-nv conky-manager" >> /tmp/setup-assistant/pkgs.txt fi yad \ --image='code' \ --title="Upgrade to ULTIMATE" \ --window-icon='update' \ --text "Are you a developer who needs one of these?" \ --geometry=600x500 \ --list \ --checklist \ --column=Install \ --column=Applications \ --center < /usr/lib/setup-assistant/development.txt >> /tmp/setup-assistant/development.txt if grep -R "Visual Studio" /tmp/setup-assistant/development.txt; then echo "code" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "GNU Emacs" /tmp/setup-assistant/development.txt; then echo "emacs" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Atom" /tmp/setup-assistant/development.txt; then echo "atom" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "IntelliJ-IDEA" /tmp/setup-assistant/development.txt; then echo "intellij-idea-community-edition" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "PyCharm" /tmp/setup-assistant/development.txt; then echo "pycharm-community-edition" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "QtCreator" /tmp/setup-assistant/development.txt; then echo "qtcreator" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "GitHub" /tmp/setup-assistant/development.txt; then echo "github-desktop-bin" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Plasma SDK" /tmp/setup-assistant/development.txt; then echo "plasma-sdk" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Android Studio" /tmp/setup-assistant/development.txt; then echo "android-studio android-studio-launcher" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Docker" /tmp/setup-assistant/development.txt; then echo "docker docker-compose" >> /tmp/setup-assistant/pkgs.txt echo "sudo systemctl enable --now docker" >> /tmp/setup-assistant/setup_root.sh fi if grep -R "BlackArch" /tmp/setup-assistant/development.txt; then echo "curl -O https://blackarch.org/strap.sh echmod +x strap.sh sudo ./strap.sh rm strap.sh sudo pacman -Syu" >> /tmp/setup-assistant/setup_root.sh 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/virtualization.txt >> /tmp/setup-assistant/virtualization.txt if grep -R "Virtualbox" /tmp/setup-assistant/virtualization.txt; then echo "garuda-virtualbox" >> /tmp/setup-assistant/pkgs.txt fi if grep -R "Virt-manager" /tmp/setup-assistant/virtualization.txt; then echo "garuda-virt-manager" >> /tmp/setup-assistant/pkgs.txt echo "sudo systemctl enable --now libvirtd" >> /tmp/setup-assistant/setup_root.sh fi alacritty -e sh /usr/lib/setup-assistant/apply.sh if [ -e "/tmp/setup-assistant/setup_user.sh" ]; then sh /tmp/setup-assistant/setup_user.sh fi 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?"; then reflector-simple >/dev/null 2>&1 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 "-Syyu" 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