152 lines
3.8 KiB
Bash
152 lines
3.8 KiB
Bash
#!/bin/bash
|
|
# -- Arch Linux Installer Script -- #
|
|
|
|
# Desktop Specific #
|
|
## Gnome ##
|
|
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
|
|
}
|
|
gnome_debloat() {
|
|
# All System Commands
|
|
SYS_REMOVE='sudo pacman -Rns --noconfirm'
|
|
|
|
# Bloat Programs
|
|
$SYS_REMOVE gnome-music
|
|
$SYS_REMOVE gnome-system-monitor
|
|
}
|
|
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
|
|
}
|
|
## KDE Plasma ##
|
|
|
|
## HYPRLAND ##
|
|
|
|
# Functions
|
|
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 [ "$XDG_CURRENT_DESKTOP" == "Gnome" ]; then
|
|
gnome
|
|
elif [ "$XDG_CURRENT_DESKTOP" == "KDE" ]; then
|
|
kde
|
|
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
|