My dotfiles configuration for Arch Linux
Tool | Arch Linux |
---|---|
Terminal | Alacritty |
Shell | zsh |
Window manager | i3 |
File manager | Thunar |
Bar | Polybar |
Launcher | Rofi |
Screenshots | Flameshot |
Lockscreen | betterlockscreen |
Greeter | SDDM |
-
create an alias:
alias dotfiles='/usr/bin/git --git-dir=$HOME/.dotfiles/ --work-tree=$HOME'
-
ignore the clone folder:
echo ".dotfiles" >> .gitignore
-
Clone the repository:
git clone --bare <git-repo-url> $HOME/.dotfiles
-
Checkout the actual content form the bare repository into your
$HOME
:dotfiles checkout
NOTE: This action might result in an error saying that files would be overwritten. Solution is, firstly backup those files using:
mkdir -p .config-backup && \
config checkout 2>&1 | egrep "\s+\." | awk {'print $1'} | \
xargs -I{} mv {} .config-backup/{}
after the backup remove the conflict files and run dotfiles checkout
command again.
-
Set the flag
showUntrackedFiles
tono
on this specific (local) repository:dotfiles config --local status.showUntrackedFiles no
-
All done! Now you can manage your dotfiles with git, example:
dotfiles status
dotfiles add .zshrc
dotfiles commit -m "adding .zshrc"
dotfiles push
packages installation script will be added someday :).