Skip to content

Instantly share code, notes, and snippets.

@CristianoFIlho
Last active July 6, 2024 12:23
Show Gist options
  • Save CristianoFIlho/1c3c527758efc5bb0f81b3060cc9c2be to your computer and use it in GitHub Desktop.
Save CristianoFIlho/1c3c527758efc5bb0f81b3060cc9c2be to your computer and use it in GitHub Desktop.
#!/bin/bash
# Check if the script is being run as root
if [ "$EUID" -ne 0 ]; then
echo "Please, run this script as administrator (root)."
exit 1
fi
# Function to check and install a package if it's not already installed
check_and_install() {
package=$1
if ! dnf list installed "$package" >/dev/null 2>&1; then
sudo dnf install -y $package
fi
}
# Check and install required packages
check_and_install wget
check_and_install curl
check_and_install flatpak
check_and_install gnome-tweaks
check_and_install neofetch
check_and_install snapd
check_and_install software-properties-common
# Install APT packages
sudo dnf install -y \
atom \
barrier \
calibre \
fcitx fcitx-googlepinyin \
gdebi git gparted \
intel-microcode \
libreoffice \
minder mosh \
steam synaptic \
timeshift tlp tlp-rdw \
ubuntu-restricted-extras \
variety virtualbox vlc
# Remove fcitx-ui-classic and install fcitx-ui-qimpanel
sudo dnf remove fcitx-ui-classic -y
sudo dnf install fcitx-ui-qimpanel -y
# Download and install Google Chrome
wget https://dl.google.com/linux/direct/google-chrome-stable_current_x86_64.rpm
sudo dnf install ./google-chrome-stable_current_x86_64.rpm
rm google-chrome-stable_current_x86_64.rpm
# Clone and install Nerd Fonts
git clone https://github.com/ryanoasis/nerd-fonts.git
sudo ./nerd-fonts/install.sh
# Clone Ventoy USB tool
git clone https://github.com/ventoy/Ventoy.git
# Set up xpadneo
git clone https://github.com/atar-axis/xpadneo.git
sudo dnf install dkms kernel-devel -y
sudo ./xpadneo/install.sh
# Download and install Anaconda
wget https://repo.anaconda.com/archive/Anaconda3-2020.11-Linux-x86_64.sh
chmod +x Anaconda3-2020.11-Linux-x86_64.sh
./Anaconda3-2020.11-Linux-x86_64.sh
conda config --set changeps1 False
# Start tlp
sudo tlp start
# Install Flatpaks
flatpak install -y \
com.getpostman.Postman \
com.github.alainm23.planner \
com.github.gijsgoudzwaard.image-optimizer \
com.spotify.Client \
com.valvesoftware.Steam.Utility.MangoHud \
io.dbeaver.DBeaverCommunity \
nl.hjdskes.gcolor3
# Install JDK 11, Maven, Node.js, and NVM
sudo dnf install -y java-11-openjdk maven nodejs npm
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.0/install.sh | bash
# Install and configure ZSH
sudo dnf install zsh -y
which zsh
chsh -s /bin/zsh
zsh
# Install Oh-my-zsh! -> https://ohmyz.sh/
sh -c "$(curl -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
# Install Spaceship Prompt
# https://github.com/spaceship-prompt/spaceship-prompt
git clone https://github.com/spaceship-prompt/spaceship-prompt.git "$ZSH_CUSTOM/themes/spaceship-prompt" --depth=1
ln -s "$ZSH_CUSTOM/themes/spaceship-prompt/spaceship.zsh-theme" "$ZSH_CUSTOM/themes/spaceship.zsh-theme"
# Install the plugins for Zsh
sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
# Install Zsh Autosuggestions
# https://github.com/zsh-users/zsh-autosuggestions
git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions
# Install Zsh Syntax Highlighting
# https://github.com/zsh-users/zsh-syntax-highlighting
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting
# Activate the plugins of Zsh
echo "plugins=(
# other plugins...
git
sudo
jump
zsh-autosuggestions
zsh-syntax-highlighting
)" >> ~/.zshrc
# Installing Copilot in the CLI
gh auth login
gh extension install github/gh-copilot
gh extension upgrade gh-copilot
# Font optional (https://github.com/pdf/ubuntu-mono-powerline-ttf)
mkdir -p ~/.fonts
git clone https://github.com/pdf/ubuntu-mono-powerline-ttf.git ~/.fonts/ubuntu-mono-powerline-ttf
fc-cache -vf
# restart the terminal
exec zsh
# Run following commands to update packages
sudo dnf update -y
# Install packages following
sudo dnf install git curl make gcc perl wget zlib-devel bzip2 bzip2-devel readline-devel sqlite sqlite-devel openssl-devel xz xz-devel libffi-devel findutils -y
# Only the Python
sudo dnf install python3.12-full python3.12-devel -y
# Install Pyenv
git clone https://github.com/pyenv/pyenv.git ~/.pyenv
echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.zshrc
echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.zshrc
echo 'eval "$(pyenv init -)"' >> ~/.zshrc
source ~/.zshrc
# Reboot
sudo reboot
#Alacritty config
code ~/.config/alacritty/alacritty.toml
[window]
opacity = 0.8
# Install extension Scheduler76System
sudo dnf install gnome-shell-extension-pop-shell xprop
# Drivers aditionais
sudo dnf install https://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm
sudo dnf install https://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm
# Install Lutris and Steam Vulkan
flatpak install flathub net.lutris.Lutris -y && flatpak install flathub com.valvesoftware.Steam com.valvesoftware.Steam.CompatibilityTool.Boxtron com.valvesoftware.Steam.Utility.protontricks com.valvesoftware.SteamLink org.freedesktop.Platform.VulkanLayer.MangoHud org.freedesktop.Platform.VulkanLayer.vkBasalt com.valvesoftware.Steam.Utility.gamescope -y
# install vs code
sudo dnf install code
# install android studio
sudo dnf install snapd
sudo ln -s /var/lib/snapd/snap /snap
sudo snap install android-studio --classic
# Install Notion
sudo snap install notion-snap-reborn
# Install LaTEx
sudo dnf install texlive-scheme-full
# Install VLC
flatpak install flathub org.videolan.VLC
# Install OBS Studio
flatpak install flathub com.obsproject.Studio
# Install BleachBit
flatpak install flathub org.bleachbit.BleachBit
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment