They're finally organized (for now). I've started using stow to manage my dotfiles using symlinks. If you're interested in figuring out how that works for yourself, here is a great blog post on it. Note that there are some initial steps you'll need to clone my entire config.
For zsh I use oh-my-zsh with powerlevel10k.
yabai is a wm for macOS
tmux config uses tpm
skhd is a keybinder for macOS
sketchybar is a toolbar of macOS
If you already have an existing config you want to back up, create your dotfiles
repository, then run stow .zshrc --adopt
to set the contents of your dotfiles'
.zshrc
for example, to what you have configured at ~/.zshrc
. You can also
map packages like nvim
, doom
, etc. you just need to follow the right
directory hierarchy as shown in the blog linked above.
Typically if I'm installing on a machine that has an existing configuration for a package, I'll use the --adopt
directive for GNU stow, then do a git restore
. Here's what that looks like:
- Clone the repo and
cd
in there. - For each package in the repo that you want symlinked, run
stow <package>
. You will need to use--adopt
if the package already exists on the machine. This creates a symlink for the package to your dotfiles repo. - If you want to use the config you had previously stored in your dotfiles repo, then run
git restore <dir>
orgit restore .
if you're feeling wild. If you want to overwrite the neovim config you had in your dotfiles repo with the one you have currently at~/.config/nvim
, then don't do the restore.
Warning
The --adopt
flag will overwrite the contents of your current
directory with the contents from your target directory. Please be careful.
For neovim, I use LazyVim with neovim 0.10 # NB: if your compiler is too old, intall from the following repo https://github.com/neovim/neovim-releases/releases/tag/stable
- If you have an existing neovim installation, delete any existing runtime dir
you have for neovim to prevent errors in your new version.
usr/local/nvim/runtime
. See :checkhealth of your current neovim install to confirm what the path is on your machine. - Install the last stable version of neovim, I recommand using bob-nvim as a nvim package manager
- Run
nvim
- This will install all of your nvim plugins.
- Once finished, quit and restart to make sure everything is working
- I am using LazyVim, I recommand you give a look at their documentation for tailoring your configuration.