Dotfiles
Just my dotfiles and tools.
0. Getting started
1. Bash aliases
Installation
In your .bashrc
or .zshrc
, add:
##############################
# Load aliases
##############################
for f in $(find ~/dotfiles/aliases -maxdepth 1 -name "*.sh"); do source $f; done
Then, reload the configuration:
# For Bash
source .bashrc
# For Zsh
source .zshrc
2. Neovim
Prerequisite(s)
-
Neovim >= v0.9
Installation
rm -rf ~/.config/nvim && stow nvim
3. tmux
Prerequisite(s)
-
tmux >= v3.2
Installation
# tmux
rm -rf ~/.tmux.conf ~/.config/tmux && stow tmux
# Install tmux plugins
git clone https://github.com/tmux-plugins/tpm ~/.config/tmux/plugins/tpm
tmux
# Press "CTRL-Q then I", wait for installation and restart tmux
4. Git
Prerequisite(s)
-
(optional) ansible-vault-merge:
-
Download it here and name it
ansible-vault-merge
. -
Check that script is not malicious before continuing.
-
Run:
chmod +x ansible-vault-merge
. -
Run:
sudo mv ansible-vault-merge /usr/local/bin
.
-
Installation
rm -f ~/.gitconfig
git config --global user.name "User name"
git config --global user.email "email"
cat <<EOT >> ~/.gitconfig
[include]
path = dotfiles/git/.gitconfig
EOT
5. i3
Prerequisite(s)
-
Betterlockscreen (see section Betterlockscreen)
-
Dunst (for Pomodoro Polybar text notification, see section Dunst)
-
Sox (for Pomodoro Polybar sound notification)
Installation
# i3
rm -rf ~/.config/i3 && stow i3
# picom
rm -rf ~/.config/picom && stow picom
# light
sudo gpasswd -a $USER video
# Reboot computer
6. rofi
Prerequisite(s)
Installation
rm -rf ~/.config/rofi/config.rasi && stow rofi
7. thefuck
Installation
rm -rf ~/.config/thefuck && stow thefuck
8. GTK
Installation
rm -rf ~/.config/gtk-3.0 && stow gtk
9. Dunst
Installation
rm -rf ~/.config/dunst && stow dunst
10. Zsh + Oh My Zsh + Powerlevel10k
Prerequisite(s)
Installation
rm -f ~/.p10k.zsh && stow p10k
rm -f ~/.zshrc && stow zsh
# Reboot the Terminal
11. Betterlockscreen
Prerequisite(s)
Generate cache
betterlockscreen --update ~/.config/i3/images/lockscreen.jpg --fx blur
Lockscreen after sleep/suspend
systemctl enable betterlockscreen@$USER
12. Alacritty
Installation
rm -rf ~/.config/alacritty && stow alacritty
13. Flameshot
Link: https://flameshot.org/
Installation
rm -rf ~/.config/flameshot && stow flameshot
14. Systemd services & timers
Notify low battery
Inspired from: https://life-prog.com/tech/alert-on-low-battery-in-i3
sudo ln -s ~/dotfiles/systemd/user/notify-low-battery /usr/local/bin/notify-low-battery
ln -s ~/dotfiles/systemd/user/notify-low-battery.service ~/.config/systemd/user/notify-low-battery.service
ln -s ~/dotfiles/systemd/user/notify-low-battery.timer ~/.config/systemd/user/notify-low-battery.timer
systemctl --user daemon-reload
systemctl --user start notify-low-battery.service
systemctl --user enable notify-low-battery.timer
systemctl --user start notify-low-battery.timer
15. asdf
Link: https://asdf-vm.com/
Installation
asdf plugin add nodejs https://github.com/asdf-vm/asdf-nodejs.git
asdf plugin-add terraform https://github.com/asdf-community/asdf-hashicorp.git
asdf plugin-add golang https://github.com/kennyp/asdf-golang.git
asdf plugin-add java https://github.com/halcyon/asdf-java.git
asdf plugin-add deno https://github.com/asdf-community/asdf-deno.git
rm -f ~/.asdfrc && stow asdf
Lazygit
Installation
rm -rf ~/.config/lazygit && stow lazygit