This repo is forked from Hlissner's dotfiles.
Dotfiles for Ubuntu, Arch and MacOS!
bash <(curl -s https://raw.githubusercontent.com/ztlevi/Dotfiles/master/bootstrap.sh)
cd ~/Dotfiles
# Git
# MacOS
./deploy base/macos
# Arch
./deploy base/arch
# Debian
./deploy base/debian
# Linux Desktop Environment (Gnome/Awesome/Bspwm)
./deploy desktop/bspwm
# Shell
./deploy shell/zsh shell/alacritty shell/tmux shell/ranger \
shell/fzf shell/aspell shell/work
# Editor
./deploy editor/emacs editor/neovim
# Development
./deploy dev/cc dev/go dev/latex dev/node dev/python
# Misc
./deploy misc/apps misc/docker
# Optional private apps. Do not install on company machines.
./deploy misc/private
# general
bin/ # global scripts
fonts/ # user fonts
assets/ # wallpapers, sounds, screenshots, etc
desktop/ # linux desktop environments
# categories
base/ # provisions my system with the bare essentials
dev/ # relevant to software development & programming in general
editor/ # configuration for my text editors
misc/ # for various apps & tools
shell/ # shell utilities, including zsh + bash
Usage: deploy [-acdlLit] [TOPIC...]
-a Target all enabled topics (ignores TOPIC args)
-c Afterwards, remove dead symlinks & empty dot-directories in $HOME.
Can be used alone.
-d Unlink and run `./_init clean` for topic(s)
-l Only relink topic(s) (implies -i)
-L List enabled topics
-i Inhibit install/update/clean init scripts
-t Do a test run; do not actually do anything
e.g.
deploy base/arch shell/{zsh,tmux}
: enables base/arch, shell/zsh & shell/tmuxdeploy -d shell/zsh
: disables shell/zsh & cleans up after itdeploy -l shell/zsh
: refresh links for shell/zsh (inhibits init script)deploy -l
: relink all enabled topicsdeploy -L
: list all enabled topics
Here's a breakdown of what the script does:
cd $topic
if [[ -L $DOTFILES_DATA/${topic//\//.}.topic ]]; then
./_init update
else
ln -sfv $DOTFILES/$topic $DOTFILES_DATA/${topic//\//.}.topic
./_init install
./_init link
fi
- DOOM Emacs (pulled by
editor/emacs
) - My vim config (pulled by
editor/neovim
)