Quick-Linux-Setup/run.sh
2024-09-13 21:10:33 -04:00

142 lines
No EOL
5.4 KiB
Bash

#!/usr/bin/env bash
set -e
# Check if it was ran with "sudo" or not
if [[ $(id -u) != 0 ]]; then
echo "Please run script with 'sudo'"
echo "Try 'sudo su'"
exit 1
fi
# Init
clear
echo "Updating your system..."
sudo dnf update --quiet --refresh --allowerasing -y
# Dotfiles
cd ~/
wget https://ark.sudovanilla.org/Korbs/Quick-Linux-Setup/raw/branch/main/configs/.npmrc
# Apply GNOME Settings
clear
echo "Changing settings for GNOME..."
echo "Enabling dark mode..."
gsettings set org.gnome.desktop.interface color-scheme "prefer-dark"
sleep 2
echo "Turning off mouse acceleration..."
gsettings set org.gnome.desktop.peripherals.mouse accel-profile 'flat'
sleep 2
echo "Filehistory will clear every week..."
gsettings set org.gnome.desktop.privacy recent-files-max-age 7
sleep 2
echo "Trash and temporary files will clear every week..."
gsettings set org.gnome.desktop.privacy old-files-age 7
sleep 2
gsettings set org.gnome.desktop.privacy remove-old-temp-files true
sleep 2
gsettings set org.gnome.desktop.privacy remove-old-trash-files true
sleep 2
gsettings set org.gnome.desktop.interface enable-hot-corners false
sleep 2
# Uninstall Apps and Packages
clear
echo "Removing unused content and applications..."
sudo dnf remove --quiet -y firef* firew* anaconda document-scanner fedora-bookmarks fedora-chromium-config gnome-clocks gnome-color-manager gnome-contacts gnome-getting-started-docs gnome-initial-setup gnome-maps gnome-online-miners gnome-remote-desktop gnome-user-docs gnome-weather gnome-characters gnome-classic-session gnome-classic-session-xsession gnome-color-manager gnome-connections gnome-disk-utility gnome-font-viewer gnome-logs gnome-shell-extension-apps-menu gnome-shell-extension-background-logo gnome-shell-extension-common gnome-shell-extension-launch-new-instance gnome-shell-extension-places-menu gnome-shell-extension-window-list gnome-system-monitor gnome-terminal gnome-text-editor gnome-tour ibus-hangul ibus-kkc ibus-libpinyin ibus-libzhuyin ibus-m17n ibus-typing-booster khmeros-base-fonts libreoffice-calc libreoffice-impress libreport problem-reporting rhythmbox sane-airscan simple-scan speech-dispatcher thai-scalable-waree-fonts totem tracker yelp
# Install Apps
clear
echo "Installing applications..."
sudo dnf config-manager --add-repo https://repository.mullvad.net/rpm/stable/mullvad.repo
sudo dnf install --quiet -y mullvad-vpn openssl
flatpak install -y com.vscodium.codium io.gitlab.librewolf-community com.spotify.Client com.belmoussaoui.Obfuscate network.loki.Session org.videolan.VLC org.nickvision.tubeconverter cafe.avery.Delfin de.haeckerfelix.Fragments org.gnome.gitlab.YaLTeR.VideoTrimmer com.github.tchx84.Flatseal org.shotcut.Shotcut com.raggesilver.BlackBox com.github.neithern.g4music net.nokyan.Resources
# Install Packages
clear
echo "Installing Nautilus and ADB..."
sudo dnf install --quiet -y nautilus adb fastboot
clear
echo "Installing Bun..."
curl -fsSL https://bun.sh/install | bash
source ~/.bashrc
clear
echo "Installing NodeJS..."
sudo dnf install nodejs -y --quiet
# Patches and Apply
clear
echo "Patching Spotify, Nautilus, and Librewolf..."
## Spotify
bash <(curl -sSL https://spotx-official.github.io/run.sh) -h -d -f
## Nautilus
sudo dnf install nautilus-python -y --quiet
git clone https://github.com/ppvan/nautilus-open-in-blackbox.git
cd nautilus-open-in-blackbox
./install.sh
## Librewolf
curl -s -o- https://raw.githubusercontent.com/rafaelmardojai/firefox-gnome-theme/master/scripts/install-by-curl.sh | bash
# Settings
clear
echo "Applying Settings for VSCodium and Blackbox..."
## VSCodium
echo "Generating files for VSCodium..."
flatpak run com.raggesilver.BlackBox --command "flatpak run com.vscodium.codium"
echo "Just close it."
cd /home/korbs/.var/app/com.vscodium.codium/config/VSCodium/User
wget https://ark.sudovanilla.org/Korbs/Quick-Linux-Setup/raw/branch/main/configs/vscodium.json
sudo rm settings.json
sudo mv vscodium.json settings.json
## Blackbox
echo "Generating files for Blackbox..."
flatpak run com.raggesilver.BlackBox --command "flatpak run com.raggesilver.BlackBox"
echo "Just close it."
cd /home/korbs/.var/app/com.raggesilver.BlackBox/config/glib-2.0/settings
wget https://ark.sudovanilla.org/Korbs/Quick-Linux-Setup/raw/branch/main/configs/blackbox.keyfile
sudo rm keyfile
sudo mv blackbox.keyfile keyfile
# GNOME Extensions (Currently set for GNOME 46)
clear
echo "Installing GNOME extensions..."
cd ~/Downloads/
wget https://extensions.gnome.org/extension-data/gsconnectandyholmes.github.io.v57.shell-extension.zip
wget https://extensions.gnome.org/extension-data/rounded-window-cornersfxgn.v3.shell-extension.zip
clear
echo "Restarting GNOME is required, please restart the session soon."
echo "After restarting the session, run 'sh ./enable-extensions.sh'"
sleep 5
# Ending-Run
clear
echo "Finishing up..."
sudo dnf autoremove
sudo dnf clean all
# After-Run
echo "Completed."
sleep 2
echo "Don't forget to setup Git:"
echo 'git config --global user.name "USERNAME"'
echo 'git config --global user.email "email@example.org"'
echo ""
echo "Some settings need to be modified in Librewolf 'about:config'. Enable the following:"
echo "gnomeTheme.hideSingleTab"
echo "gnomeTheme.bookmarksToolbarUnderTabs"
echo "gnomeTheme.closeOnlySelectedTabs"
echo "gnomeTheme.systemIcons"
echo "gnomeTheme.hideWebrtcIndicator"
echo ""
echo "For the LibRedirect extension, the configuration is available here:"
echo "https://ark.sudovanilla.org/Korbs/Quick-Linux-Setup/raw/branch/main/configs/libredirect-settings-v2.9.0.json"