Skip to content

Instantly share code, notes, and snippets.

@0xLGG
Last active October 23, 2022 20:52
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save 0xLGG/f89b91e6224f289a3d92696a082a3694 to your computer and use it in GitHub Desktop.
Save 0xLGG/f89b91e6224f289a3d92696a082a3694 to your computer and use it in GitHub Desktop.
Fedora install
sudo dnf config-manager --add-repo https://brave-browser-rpm-release.s3.brave.com/x86_64/
sudo rpm --import https://brave-browser-rpm-release.s3.brave.com/brave-core.asc
sudo dnf upgrade --refresh
sudo dnf install dnf-plugin-system-upgrade
# sudo dnf system-upgrade download --releasever=35 # only relevant when upgrading
# prepare dirs
mkdir ~/repos
mkdir ~/repos/gist -p
mkdir ~/src
mkdir ~/.local/bin -p
mkdir ~/.local/share/fonts -p
mkdir ~/.fonts
mkdir ~/.config/alacritty -p
mkdir ~/.config/i3 -p
mkdir ~/.config/i3status -p
mkdir ~/.config/picom -p
# https://stackoverflow.com/questions/10081293/install-npm-into-home-directory-with-distribution-nodejs-package-ubuntu
mkdir ~/.npm-global
# for neovim nightly
sudo dnf copr enable agriffis/neovim-nightly
sudo dnf install -y vim \
python3-neovim \
neovim \
sd \
feh \
alacritty \
yt-dlp \
picom \
duf \
autojump \
gcc-c++ \
brave-browser \
gnome-extensions-app \
gnome-font-viewer \
i3-gaps \
git-delta \
npm \
bat \
zsh \
tmux \
git \
fzf \
docker \
openvpn \
tig \
tldr \
gh \
libXft-devel libX11-devel \
mosh \
python-pip \
cmake \
yarnpkg \
cargo
# setting dark mode
# https://itsfoss.com/fedora-dark-mode/
gsettings set org.gnome.desktop.interface gtk-theme Adwaita-dark
# dotfiles and symlinks
cd
git clone https://github.com/tarjoilija/zgen.git "${HOME}/.zgen"
git clone https://github.com/0xlgg/dotfiles.git
git clone https://github.com/gpakosz/.tmux.git
ln -sf ~/dotfiles/shell/tmux/.tmux.conf.local
ln -sf ~/dotfiles/shell/tmux/.tmux.conf
ln -sf ~/dotfiles/shell/.p10k.zsh
ln -sf ~/dotfiles/shell/zsh/fed/.zshrc
cd ~/.config/alacritty && ln -sf ~/dotfiles/terminal/alacritty/alacritty.yml
cd ~/.config/i3/ && ln -sf ~/dotfiles/.config/i3/config
cd ~/.config/i3status/ && ln -sf ~/dotfiles/.config/i3status/config
cd ~/.config/picom/ && ln -sf ~/dotfiles/.config/picom/picom.conf
# git configs
git config --global user.email "72031534+0xLGG@users.noreply.github.com"
git config --global user.name "0xLGG"
# https://www.mikulskibartosz.name/git-fixup-explained/
# We don’t want to type autosquash and autostash every time we do a rebase, so we are going to enable them in the git configuration permanently.
git config --global rebase.autosquash true
git config --global rebase.autostash true
git config --global push.followTags true
# change shell to zsh
chsh -s $(which zsh)
# mullvad
cd ~/src
curl -Lo mullvad.rpm https://mullvad.net/download/app/rpm/latest/
curl -Lo mullvadgpg https://mullvad.net/download/app/rpm/latest/signature
sudo dnf install -y ./mullvad.rpm
# n as node package manger
# make cache folder (if missing) and take ownership
sudo npm i -g n
sudo mkdir -p /usr/local/n
sudo chown -R $(whoami) /usr/local/n
# make sure the required folders exist (safe to execute even if they already exist)
sudo mkdir -p /usr/local/bin /usr/local/lib /usr/local/include /usr/local/share
# take ownership of Node.js install destination folders
sudo chown -R $(whoami) /usr/local/bin /usr/local/lib /usr/local/include /usr/local/share
# install lunarvim
cd ~/src
curl -o lvinstall.sh https://raw.githubusercontent.com/lunarvim/lunarvim/master/utils/installer/install.sh
chmod +x ./lvinstall.sh
./lvinstall.sh
cd ~/.config/lvim/
ln -sf ~/dotfiles/lunarvim/config.lua
cd ~/.local/share/lunarvim/lvim/lua/lvim/core/
ln -sf ~/dotfiles/lunarvim/which-key.lua
# logo-ls
cd ~/src
wget https://github.com/Yash-Handa/logo-ls/releases/download/v1.3.7/logo-ls_amd64.rpm
sudo dnf install ./logo-ls_amd64.rpm -y
# fonts
cd ~/.local/share/fonts
wget https://github.com/ryanoasis/nerd-fonts/releases/download/v2.1.0/JetBrainsMono.zip
unzip JetBrainsMono.zip
fc-cache -f -v
# some great browser extension
cd ~/repos
git clone https://github.com/0xLGG/swisscows-banner-remover.git
# st terminal
cd ~/src
git clone https://github.com/siduck/st.git
cd st
sudo make install
# https://medium.com/@pranavgore09/update-golang-version-on-fedora-da2446240de2
# go install newest
cd ~/src
wget https://go.dev/dl/go1.18.1.linux-amd64.tar.gz
sudo sudo tar -C /usr/local -xzf ~/Downloads/go1.18.1.linux-amd64.tar.gz
rm -rf ~/src/go1.18.1.linux-amd64.tar.gz
# go stuff
go install github.com/jesseduffield/lazydocker@latest
go install github.com/antonmedv/fx@latest
cd ~/src
git clone https://github.com/gohugoio/hugo.git
cd hugo
go install --tags extended
# glow markdown terminal viewer
cd ~/src
git clone https://github.com/charmbracelet/glow.git
cd glow
go build
mv ./glow ~/.local/bin
# pip stuff
pip install bpytop
# postgres cli with autocomplete
pip install pgcli
pip install thefuck
# cargo stuff
cargo install du-dust
cargo install difftastic
# install ipfs
cs ~/src
wget https://dist.ipfs.io/go-ipfs/v0.12.2/go-ipfs_v0.12.2_linux-amd64.tar.gz
tar xvfz go-ipfs_v0.12.2_linux-amd64.tar.gz
cd go-ipfs/
./install.sh
rm go-ipfs go-ipfs_v0.12.2_linux-amd64.tar.gz -rf
cd ..
# codium
sudo rpmkeys --import https://gitlab.com/paulcarroty/vscodium-deb-rpm-repo/-/raw/master/pub.gpg
printf "[gitlab.com_paulcarroty_vscodium_repo]\nname=download.vscodium.com\nbaseurl=https://download.vscodium.com/rpms/\nenabled=1\ngpgcheck=1\nrepo_gpgcheck=1\ngpgkey=https://gitlab.com/paulcarroty/vscodium-deb-rpm-repo/-/raw/master/pub.gpg\nmetadata_expire=1h" | sudo tee -a /etc/yum.repos.d/vscodium.repo
sudo dnf install codium
# deno
curl -fsSL https://deno.land/install.sh | sh
deno install -qAf --unstable https://deno.land/x/denon/denon.ts
# pnpm
curl -fsSL https://get.pnpm.io/install.sh | sh -
# replace plocate
sudo dnf install plocate --allowerasing ─╯
# cleanup
sudo dnf remove cheese
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment