1
0
Fork 0
forked from RP1/RaveOS-arch
RaveOS-arch/raveos-gnome.sh
2025-01-07 22:14:40 +01:00

192 lines
No EOL
7.5 KiB
Bash

#!/usr/bin/env bash
# Removed because the script is fully tested!
# Editing pacman.conf
sudo sed -i 's/#Color/Color/' /etc/pacman.conf
sudo sed -i '38 i ILoveCandy' /etc/pacman.conf
# RaveOS Setup Script
# Text Colours
bold=$(tput bold) # ${bold}
normal=$(tput sgr0) # ${normal}
yellow=$(tput setaf 3) # ${yellow}
# Variables - Credit Lordify
CPU=$(lscpu | grep "AMD" -c)
nVidia=$(lspci -P | grep "NVIDIA" -c)
Locale=$(echo $LANG)
set -e
# Deleting password for the script to run uninterrapted
echo "$USER ALL=(ALL) NOPASSWD: ALL" | sudo tee /etc/sudoers.d/99-$USER
echo "Defaults timestamp_timeout=-1" | sudo tee -a /etc/sudoers
# Making Makepkg a bit faster
sudo sed -i 's/OPTIONS=(strip docs !libtool !staticlibs emptydirs zipman purge !debug lto !autodeps)/OPTIONS=(strip docs !libtool !staticlibs emptydirs zipman purge !debug !lto !autodeps)/' /etc/makepkg.conf
# Installing packages
sudo pacman -S tilix gnome-session gdm gnome-disk-utility gnome-system-monitor eog networkmanager flatpak base-devel bash-completion gedit gnome-calculator baobab ffmpeg git gnome-control-center gparted gnome-tweaks gnome-browser-connector xdg-desktop-portal xdg-desktop-portal-gnome xdg-desktop-portal-gtk xdg-desktop-portal-wlr ttf-ubuntu-font-family gnome-settings-daemon unzip wget glib2 glib2-devel spice-vdagent hblock nano qt5-wayland meson rsync zenity amd-ucode intel-ucode mesa-utils gvfs gvfs-mtp gvfs-smb android-tools wmctrl zsh python-setuptools --noconfirm
sudo systemctl enable gdm.service
sudo systemctl enable NetworkManager.service
sudo systemctl mask sleep.target suspend.target hibernate.target hybrid-sleep.target geoclue.service
flatpak remote-add --if-not-exists --user flathub https://dl.flathub.org/repo/flathub.flatpakrepo
hblock
# Downloading RavePkg
mkdir cosmetics
sudo chown -R $USER:$GROUP /home/$USER/cosmetics/
cd cosmetics
wget -O cosmetics.zip https://files.rp1.hu/api/public/dl/K7znaGkC/
unzip cosmetics.zip
git clone https://aur.archlinux.org/yay-bin.git
cd yay-bin
makepkg -si --noconfirm
cd -
rm -rf yay-bin
git clone https://aur.archlinux.org/yaru.git
cd yaru
makepkg -si --noconfirm
cd -
rm -rf yaru
yay -S gdm-tools --noconfirm --sudoloop --save
yay -S hydrapaper --noconfirm
# Flatseal - Flatpak app jogosultság beállító
echo
echo ---------------------------------------------
echo Installing ${bold}${yellow}Flatseal${normal}
yay -S flatseal --noconfirm
sudo cp -a overrides /home/$USER/.local/share/flatpak
echo ${bold}${yellow}Flatseal ${normal}installed.
echo ---------------------------------------------
echo
# UCode installer - Credit Lordify
if [[ $CPU -gt 0 ]]; then
sudo pacman -S amd-ucode --noconfirm
else
sudo pacman -S intel-ucode --noconfirm
fi
# Adding ucode to boot entries - Credit Lordify
if [[ $CPU -gt 0 ]]; then
echo "initrd /amd-ucode.img" | sudo tee -a /boot/loader/entries/*.conf
else
echo "initrd /intel-ucode.img" | sudo tee -a /boot/loader/entries/*.conf
fi
# nVidia - Credit to Lordify
if [[ $nVidia -gt 0 ]]; then
sudo pacman -S linux-zen linux-zen-headers --noconfirm # Make sure you have Zen kernel installed
sleep 1
sudo pacman -S nvidia-dkms nvidia-utils nvidia-settings egl-wayland lib32-nvidia-utils --noconfirm # nVidia-DKMS and some Wayland Packages
sleep 1
sudo sed -i 's/MODULES=()/MODULES=(nvidia nvidia_modeset nvidia_uvm nvidia_drm)/' /etc/mkinitcpio.conf # Add early loading of nVidia kernel mode setting
sleep 1
echo "options nvidia_drm modeset=1 fbdev=1" | sudo tee /etc/modprobe.d/nvidia.conf > /dev/null # Make sure it is loaded...
sleep 1
sudo mkinitcpio -P
fi
# Dconf option
if [[ "$Locale" = "hu_HU.UTF8" ]]; then
dconf load / < raveui-hu
else
dconf load / < raveui-eng
fi
# RaveOS Cosmetics
gsettings set org.gnome.desktop.interface gtk-theme 'Yaru-purple-dark'
gsettings set org.gnome.desktop.interface cursor-theme 'Yaru'
gsettings set org.gnome.desktop.interface icon-theme 'Yaru-purple-dark'
gsettings set org.gnome.desktop.sound theme-name 'Yaru'
gsettings set org.gnome.desktop.screensaver lock-enabled false
gsettings set org.gnome.desktop.session idle-delay 0
gsettings set org.gnome.desktop.wm.preferences button-layout ":minimize,maximize,close"
sudo rsync -ap --info=progress2 gnome-shell /home/$USER/.local/share/
cp -a /home/$USER/cosmetics/burn-my-windows /home/$USER/.config/
sudo rsync -ap --info=progress2 /home/$USER/cosmetics/rave-pp.png /usr/share/pixmaps/faces/
echo "[User]
Session=
Icon=/usr/share/pixmaps/faces/rave-pp.png
SystemAccount=false" | sudo tee /var/lib/AccountsService/users/$USER
sudo rsync -ap --info=progress2 /home/$USER/cosmetics/archlinux-logo-text-dark.svg /usr/share/pixmaps/
sudo rsync -ap --info=progress2 /home/$USER/cosmetics/view-app-grid-symbolic.svg /usr/share/icons/Yaru/scalable/actions/
echo raveui-eng dconf loaded
sudo mkdir -p /usr/share/backgrounds/
sudo rsync -ap --info=progress2 raveos-bg.png /usr/share/backgrounds/
cp -a /home/$USER/cosmetics/.icons /home/$USER/
cp -a /home/$USER/cosmetics/.themes /home/$USER/
sudo mkdir -p /home/$USER/.config/gtk-4.0
sudo chown -R $USER:$GROUP /home/$USER/
cp -a gtk.css /home/$USER/.config/gtk-4.0/
sudo sed -i 's/#en_GB.UTF-8 UTF-8/en_GB.UTF-8 UTF-8/' /etc/locale.gen
sudo sed -i 's/#en_US.UTF-8 UTF-8/en_US.UTF-8 UTF-8/' /etc/locale.gen
sudo sed -i 's/#hu_HU.UTF-8 UTF-8/hu_HU.UTF-8 UTF-8/' /etc/locale.gen
sudo locale-gen
set-gdm-theme set Yaru-purple-dark /usr/share/backgrounds/raveos-bg.png
# Adding Custom rave command
echo ---------------------------------------------
echo Installing ${bold}${yellow}rave command.${normal}
echo
sudo rsync -ap --info=progress2 /home/$USER/cosmetics/rave /usr/local/bin/
sudo chmod +x /usr/local/bin/rave
echo given privileges to run for rave
sudo rsync -ap --info=progress2 /home/$USER/cosmetics/rave-comp.sh /etc/bash_completion.d/
sudo chmod +x /etc/bash_completion.d/rave-comp.sh
echo given privileges to run for rave-comp.sh
echo
echo ${bold}${yellow}Rave command with bash completion ${normal}installed.
echo ---------------------------------------------
# Autostarting ProgramScript after restart
echo ---------------------------------------------
echo Installing ${bold}${yellow}ProgramScript Autostart${normal}
echo
mkdir -p /home/$USER/.config/autostart
sudo chown -R $USER:$GROUP /home/$USER/.config/autostart
echo Changed ownership to $USER /home/$USER/.config/autostart
sudo rsync -ap --info=progress2 3progs.sh.desktop /home/$USER/.config/autostart
echo Exec=/home/$USER/.progs/3progs.sh >> /home/$USER/.config/autostart/3progs.sh.desktop
sudo mkdir -p /home/$USER/.progs
echo Created .progs folder
sudo chown -R $USER:$GROUP /home/$USER/.progs
echo Changed ownership to $USER /home/$USER/.progs
curl -Ls https://links.rp1.hu/3progs -o /home/$USER/.progs/3progs.sh
sudo chmod +x /home/$USER/.progs/3progs.sh
echo Changed ownership to $USER /home/$USER/.progs/3progs.sh
sudo rsync -ap --info=progress2 content/. /home/$USER/.progs
echo
echo ${bold}${yellow}ProgramScript Autostart ${normal}installed.
echo ---------------------------------------------
# Cleanup
sudo rm /etc/sudoers.d/99-$USER
sudo sed -i '140d' /etc/sudoers
sudo rm -rf /home/$USER/cosmetics
# End of script
echo Reboot in 3s...
echo Reboot in 2s...
echo Reboot in 1s...
echo Reboot
reboot