fedora post installation script

This commit is contained in:
me 2025-12-06 20:52:20 +02:00
parent f129d97f97
commit 347cd9c9a9

View file

@ -0,0 +1,75 @@
#!/bin/bash
if [ -z "$1" ]; then
echo "Provide path to old system."
exit 1
fi
OLD=$1
sudo dnf update
# System
sudo dnf install -y gnome-tweaks # Focus on hover
sudo dnf install -y htop tmux pavucontrol ncdu
## Settings
gsettings set org.gnome.desktop.wm.keybindings switch-to-workspace-1 "[\"<Super>KP_1\"]"
gsettings set org.gnome.desktop.wm.keybindings switch-to-workspace-2 "[\"<Super>KP_2\"]"
gsettings set org.gnome.desktop.wm.keybindings switch-to-workspace-3 "[\"<Super>KP_3\"]"
gsettings set org.gnome.desktop.wm.keybindings switch-to-workspace-4 "[\"<Super>KP_4\"]"
gsettings set org.gnome.desktop.wm.keybindings switch-to-workspace-5 "[\"<Super>KP_5\"]"
# Dev
sudo dnf install -y gcc gcc-c++ gmp gmp-devel make ncurses ncurses-compat-libs xz perl pkg-config
sudo dnf install -y vim emacs
## fonts
sudo dnf copr enable peterwu/iosevka
sudo dnf install -y iosevka-fixed-fonts alef-fonts
# Multimedia
sudo dnf group install -y multimedia
sudo dnf install -y https://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm https://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm
sudo dnf install -y libavcodec-freeworld
sudo dnf install -y mpv deadbeef ffmpeg ImageMagick
# Programs
sudo dnf install -y thunderbird krita gthumb obs
# Games
sudo dnf install -y steam wine
# VPN
sudo dnf config-manager addrepo --from-repofile=https://repository.mullvad.net/rpm/stable/mullvad.repo
sudo dnf install -y mullvad-vpn
# More Dev
sudo dnf install -y raylib-devel git sqlite3 jq
curl --proto '=https' --tlsv1.2 -sSf https://get-ghcup.haskell.org | BOOTSTRAP_HASKELL_MINIMAL=1 sh
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
rustup component add rust-analyzer
# bashrc stuff
cat <<EOT >> .bashrc
export VISUAL=vim
export EDITOR="$VISUAL"
unset SSH_ASKPASS
vc() {
ffmpeg -i "$1" -vcodec libx265 -crf 30 "$2"
}
ac_() {
ffmpeg -i "$1" -vn -ar 44100 -ac 2 -b:a 192k "$1.mp3"
}
EOT
# Older configs
cp $OLD/.vimrc .
cp $OLD/.emacs .
cp -r $OLD/.emacs.d .
cp -r $OLD/.local/bin/ .local/
cp -r $OLD/.ssh/ .
cp -r $OLD/.thunderbird/ .
cp -r $OLD/code .