Fedora Setup
This is an automation script for fedora
Usages Instructions
Section titled “Usages Instructions”- Prepare the script
e.g. fedora_setup.sh - Make it executable
chmod +x fedora_setup.sh
3. Run the script```bash./fedora_setup.sh
> **Warning**> >I have assumes a clean environment and did not handles any error so use it carefully
> **Note**> >PS this is the first iteration I'll test this script and keep improving it.
1. fedora_setup.sh```bash#!/bin/bashUpdate and upgrade the system
Section titled “Update and upgrade the system”sudo dnf update -y sudo dnf upgrade -y
Install DNF packages
Section titled “Install DNF packages”sudo dnf install -y —skip-unavailable
google-chrome-stable
firefox
vlc
gnome-tweaks
timeshift
git
curl
zsh
code
Add Flathub repository for Flatpak
Section titled “Add Flathub repository for Flatpak”sudo flatpak remote-add —if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
Install Rust
Section titled “Install Rust”curl —proto ‘=https’ —tlsv1.2 -sSf https://sh.rustup.rs | sh -s — -y source “$HOME/.cargo/env”
Install Warp Terminal
Section titled “Install Warp Terminal”sudo rpm —import https://releases.warp.dev/linux/keys/warp.asc sudo sh -c ‘echo -e “[warpdotdev]\nname=Warp Terminal\nbaseurl=https://releases.warp.dev/linux/rpm/stable\nenabled=1\ngpgcheck=1\ngpgkey=https://releases.warp.dev/linux/keys/warp.asc” > /etc/yum.repos.d/warpdotdev.repo’ sudo dnf install -y warp-terminal
Install Homebrew
Section titled “Install Homebrew”/bin/bash -c ”$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)” echo ‘eval ”$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)”’ >> ~/.bash_profile eval ”$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)“
Install NVM, Node.js, PNPM, Yarn, Corepack
Section titled “Install NVM, Node.js, PNPM, Yarn, Corepack”curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.3/install.sh | bash export NVM_DIR=“$HOME/.nvm” source “$NVM_DIR/nvm.sh” nvm install —lts corepack enable corepack install -g pnpm yarn corepack
Set up Git SSH
Section titled “Set up Git SSH”ssh-keygen -t ed25519 -C “shishirchaurasiya435@gmail.com” -f ~/.ssh/id_ed25519 -N "" eval ”$(ssh-agent -s)” ssh-add ~/.ssh/id_ed25519 echo “SSH public key:” cat ~/.ssh/id_ed25519.pub
Install Oh My Zsh
Section titled “Install Oh My Zsh”sh -c ”$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)“
Change default shell to Zsh
Section titled “Change default shell to Zsh”chsh -s $(which zsh)
Configure GNOME Terminal to use Zsh by default
Section titled “Configure GNOME Terminal to use Zsh by default”PROFILE_ID=$(gsettings get org.gnome.Terminal.ProfilesList default | tr -d ’) gsettings set org.gnome.Terminal.Legacy.Profile:/org/gnome/terminal/legacy/profiles:/:$PROFILE_ID/ login-shell false gsettings set org.gnome.Terminal.Legacy.Profile:/org/gnome/terminal/legacy/profiles:/:$PROFILE_ID/ use-custom-command true gsettings set org.gnome.Terminal.Legacy.Profile:/org/gnome/terminal/legacy/profiles:/:$PROFILE_ID/ custom-command ‘/usr/bin/zsh’
Install Ollama
Section titled “Install Ollama”curl -fsSL https://ollama.com/install.sh | sh
Enable and start Ollama service
Section titled “Enable and start Ollama service”sudo systemctl enable ollama sudo systemctl start ollama
Clean up
Section titled “Clean up”sudo dnf autoremove -y sudo dnf clean all
echo “All applications have been installed and configured successfully!” echo “Please reboot your system to ensure all changes take effect.”