#!/bin/bash # -- Arch Linux Installer Script -- # # Functions gnome_install() { # All System Commands SYS_INSTALL='sudo pacman -Sy --noconfirm' FLH_INSTALL='sudo flatpak install -y' # Installing System Packages $SYS_INSTALL fractal # Installing FLH Apps $FLH_INSTALL flathub ar.xjuan.Cambalache $FLH_INSTALL flathub net.nokyan.Resources $FLH_INSTALL flathub io.github.giantpinkrobots.varia } gnome_debloat() { # All System Commands SYS_REMOVE='sudo pacman -Rns --noconfirm' # Bloat Programs $SYS_REMOVE gnome-music } gnome_system() { # Custom UI settings gsettings set org.gnome.mutter experimental-features "['scale-monitor-framebuffer']" } gnome_themes() { # Setting the Console Prompt CON_PROMPT='Press ENTER to continue' # Installing Themes to Gnome mkdir ~/.themes ~/.icons /tmp/theme /tmp/icons echo "Please download the following theme (Default): https://www.pling.com/p/1357889?ref=itsfoss.com"; echo $CON_PROMPT; read echo "Please download the following icons (Nord): https://www.pling.com/p/1279924?ref=itsfoss.com/"; echo $CON_PROMPT; read cd ~/.themes; tar -xJf ~/Downloads/Orchis.tar.xz -C /tmp/theme; mv /tmp/theme/Orchis-Dark ./ cd ~/.icons; tar -xJf ~/Downloads/Tela-nord.tar.xz -C /tmp/icons; mv /tmp/icons/Tela-nord ./ rm -r ~/Downloads/Orchis.tar.xz ~/Downloads/Tela-nord.tar.xz /tmp/icons /tmp/theme } gnome() { gnome_install gnome_debloat gnome_system gnome_themes } install_yay() { # System Install Command SYS_INSTALL='sudo pacman -S --noconfirm' # Installing Git $SYS_INSTALL git # Installing YAY cd /tmp && git clone https://aur.archlinux.org/yay.git && cd yay && makepkg -si } install_pacman() { # System Install Command SYS_INSTALL='sudo pacman -S --noconfirm' # Base Deps $SYS_INSTALL net-tools flatpak $SYS_INSTALL sof-firmware $SYS_INSTALL hunspell-en_us # Virtualization $SYS_INSTALL virt-manager qemu-desktop spice-vdagent $SYS_INSTALL docker docker-buildx $SYS_INSTALL wine # Internet $SYS_INSTALL resolvconf dnsutils dnsmasq $SYS_INSTALL filezilla geary # Security $SYS_INSTALL keepassxc # Utilities $SYS_INSTALL libreoffice gparted easytag $SYS_INSTALL audacity # Development $SYS_INSTALL godot zed # Entertainment $SYS_INSTALL steam retroarch $SYS_INSTALL cartridges prismlauncher # Graphics $SYS_INSTALL blender gimp } install_aur() { # AUR Install Command AUR_INSTALL='yay -S --noconfirm' # Base Dependencies $AUR_INSTALL zen-browser-bin # Virtualization $AUR_INSTALL bottles # Internet $AUR_INSTALL feishin-bin } install_flat() { # FLH Install Command FLH_INSTALL='sudo flatpak install -y' # Engineering (OrcaSlicer) wget https://github.com/SoftFever/OrcaSlicer/releases/download/v2.3.0/OrcaSlicer-Linux-flatpak_V2.3.0_x86_64.flatpak -O /tmp/orcaslicer.flatpak $FLH_INSTALL /tmp/orcaslicer.flatpak sudo flatpak override --env=__EGL_VENDOR_LIBRARY_FILENAMES=/usr/lib/x86_64-linux-gnu/GL/default/share/glvnd/egl_vendor.d/50_mesa.json io.github.softfever.OrcaSlicer # Entertainment $FLH_INSTALL https://sober.vinegarhq.org/sober.flatpakref } # Entry Point main() { ## Desktop Specific Operations ## if [ "$DESKTOP_SESSION" == "gnome" ]; then gnome fi # Installing Software install_yay install_pacman install_aur install_flat # Enabling Daemons # sudo systemctl enable --now libvirtd sudo systemctl enable --now docker # Applying Permissions # sudo usermod -aG docker $USER sudo usermod -aG libvirt $USER # Finish Statement # echo "Installation Done! Have Fun!" } # System Process main