From cff3871512f574d4c0caf0f89c75707e163508b6 Mon Sep 17 00:00:00 2001 From: Nico Jensch Date: Wed, 11 Nov 2020 14:58:21 +0100 Subject: [PATCH] Rework upgrade2ultimate --- usr/bin/setup-assistant | 225 +++++++++++++++++++++------------------- 1 file changed, 117 insertions(+), 108 deletions(-) diff --git a/usr/bin/setup-assistant b/usr/bin/setup-assistant index e9725ae..03953a1 100755 --- a/usr/bin/setup-assistant +++ b/usr/bin/setup-assistant @@ -1,4 +1,4 @@ -#!/bin/bash +#!/bin/bash function goto { label=$1 @@ -8,14 +8,117 @@ function goto exit } -systemctl --user enable gamemoded >/dev/null 2>&1 & -systemctl --user start gamemoded >/dev/null 2>&1 & +function upgrade2ultimate +{ + rm -rf /tmp/setup-assistant + mkdir -p /tmp/setup-assistant -systemctl --user enable pulseaudio-bluetooth-autoconnect >/dev/null 2>&1 & -systemctl --user start pulseaudio-bluetooth-autoconnect >/dev/null 2>&1 & + clear + echo "We are going to ask you several questions so you can decide if you want a piece of software or not." + echo "Do you need asisan font support? (y,n)" + echo "" + read asian + if [ $asian = "y" ]; then + echo "sudo pacman -S garuda-asian" >> /tmp/setup-assistant/install-packages.sh + fi -systemctl --user enable android-session-manager >/dev/null 2>&1 & -systemctl --user start android-session-manager >/dev/null 2>&1 & + clear + echo "What about Snaps, Flatpak & Appimage support? (y,n)" + echo "This enables you to use software not available in Chaotic-AUR." + echo "If an application is available already we advise to use the version in the repo." + read snap + if [ $snap = "y" ]; then + echo "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" >> /tmp/setup-assistant/install-packages.sh + echo "sudo systemctl enable --now snapd" >> /tmp/setup-assistant/install-packages.sh + fi + + clear + echo "Do you need gaming applications installed? (y,n)" + echo "This will install the Garuda Gamer app in which every component needed to game can be enabled." + echo "" + read gaming + if [ $gaming = "y" ]; then + echo "sudo pacman -S garuda-gamer" >> /tmp/setup-assistant/install-packages.sh + fi + + clear + echo "What about complete audio support? (y,n)" + echo "Saying yes will install PulseAudio, Alsa & Pipewire packages with its companion apps." + echo "" + read audio + if [ $audio = "y" ]; then + echo "sudo pacman -S garuda-alsa garuda-pulse garuda-pipewire pulseaudio-ctl playerctl" >> /tmp/setup-assistant/install-packages.sh + fi + + clear + echo "Are you printing and scanning with this machine?" + echo "Also, do you need Samba support? (y,n)" + echo "" + read gaming + if [ $gaming = "y" ]; then + echo "sudo pacman -S garuda-settings-samba system-config-samba garuda-printer garuda-scanner" >> /tmp/setup-assistant/install-packages.sh + fi + + clear + : office-selection + echo "Now you are free to choose your favorite office suite." + echo "There are quite a lot of them in our repo. A guideline for new users:" + echo "LibreOffice is the most used office application in the Linux world (if you need a complete suite)" + echo "If a simpler word processor is fine for you Abiword might also be a good choice." + echo "" + echo "1) LibreOffice" + echo "2) Onlyoffice" + echo "3) WPS Office" + echo "4) Free Office" + echo "5) Yozo Office" + echo "6) Calligra Office" + echo "7) Abiword" + read office + if [ $office = "1" ]; then + echo "sudo pacman -S libreoffice-fresh libmythes" >> /tmp/setup-assistant/install-packages.sh + elif [ $office = "2" ]; then + echo "sudo pacman -S onlyoffice-bin" >> /tmp/setup-assistant/install-packages.sh + elif [ $office = "3" ]; then + echo "sudo pacman -S wps-office wps-office-mime ttf-wps-fonts" >> /tmp/setup-assistant/install-packages.sh + elif [ $office = "4" ]; then + echo "sudo pacman -S freeoffice" >> /tmp/setup-assistant/install-packages.sh + elif [ $office = "5" ]; then + echo "sudo pacman -S yozo-office yozo-office-fonts" >> /tmp/setup-assistant/install-packages.sh + elif [ $office = "6" ]; then + echo "sudo pacman -S calligra" >> /tmp/setup-assistant/install-packages.sh + elif [ $office = "7" ]; then + echo "sudo pacman -S abiword" >> /tmp/setup-assistant/install-packages.sh + else echo "Thats not a valid choice! ❌" + goto "office-selection" + fi + + clear + echo "This question is about general desktop applications." + echo "It contains apps such as Telegram, Nextcloud-client & Syncthing." + echo "Are these going to be installed? (y,n)" + read gaming + if [ $gaming = "y" ]; then + echo "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" >> /tmp/setup-assistant/install-packages.sh + fi + + : 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 + echo "sudo pacman -Syu garuda-virtualbox" >> /tmp/setup-assistant/install-packages.sh + elif [ $virt = "2" ]; then + echo "sudo pacman -Syu garuda-virt-manager" >> /tmp/setup-assistant/install-packages.sh + else echo "Thats not a valid choice! ❌" + goto "virt-selection" + fi + + clear + sudo sh /tmp/setup-assistant/install-packages.sh +} systemctl --user enable psd >/dev/null 2>&1 & systemctl --user start psd >/dev/null 2>&1 & @@ -23,30 +126,17 @@ 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 - +clear echo "What do you want to do?" echo "" echo "1) Get initial mirrorlist & download list of packages" -echo "2) Update the system" +echo "2) Update the system" echo "3) Enable systemwide adblocking / HiDPI mode" echo "4) Disable CPU migitations / change boot options" +echo "5) Install additional (Ultimate) packages by choosing which ones you need" 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" +echo "6) Exit" read selection @@ -73,90 +163,9 @@ elif [ $selection = "4" ]; then 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 - : 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 - goto "start" - else sudo pacman -Syu garuda-gamer - goto "gaming" - fi -elif [ $selection = "8" ]; then - clear - sudo pacman -Syu --noconfirm --needed garuda-alsa garuda-pulse garuda-pipewire pulseaudio-ctl playerctl - goto "start" -elif [ $selection = "9" ]; then - clear - sudo pacman -Syu --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 and need a full office suite. 🖨" - echo "If you prefer a simple word processor Abiword is also a good choice to begin with." - echo "" - echo "1) LibreOffice " - echo "2) Onlyoffice" - echo "3) WPS Office" - echo "4) Free Office" - echo "5) Yozo Office" - echo "6) Abiword" - read office - if [ $office = "1" ]; then - sudo pacman -Syu libreoffice-fresh libmythes - goto "start" - elif [ $office = "2" ]; then - sudo pacman -Syu onlyoffice-bin - goto "start" - elif [ $office = "3" ]; then - sudo pacman -Syu wps-office wps-office-mime ttf-wps-fonts - goto "start" - elif [ $office = "4" ]; then - sudo pacman -Syu freeoffice - goto "start" - elif [ $office = "5" ]; then - sudo pacman -Syu yozo-office yozo-office-fonts - goto "start" - elif [ $office = "6" ]; then - sudo pacman -Syu abiword - goto "start" - else echo "Thats not a valid choice! ❌" - goto "office-selection" - fi -elif [ $selection = "11" ]; then - clear - 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 - 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 -Syu garuda-virtualbox - goto "start" - elif [ $virt = "2" ]; then - sudo pacman -Syu garuda-virt-manager - goto "start" - else echo "Thats not a valid choice! ❌" - goto "virt-selection" - fi -elif [ $selection = "13" ]; then + upgrade2ultimate +elif [ $selection = "6" ]; then exit -else echo "Thats not a valid choice! ❌" +else "Thats not a valid choice!" goto "start" fi