git clone https://github.com/sorens/dotfiles.git ~/.dotfiles
cd ~/.dotfiles
# set up dotfiles
script/bootstrap
# reload! all the paths and ENV variables
reload!
# run this script at the start and periodically to install/update
bin/dotThis will symlink the appropriate files in .dotfiles to your home directory.
Everything is configured and tweaked within ~/.dotfiles.
The main file you'll want to change right off the bat is zsh/zshrc.symlink,
which sets up a few paths that'll be different on your particular machine.
Everything's built around topic areas. If you're adding a new area to your
forked dotfiles — say, "Java" — you can simply add a java directory and put
files in there. Anything with an extension of .zsh will get automatically
included into your shell. Anything with an extension of .symlink will get
symlinked without extension into $HOME when you run script/bootstrap.
There's a few special files in the hierarchy.
bin/- Anything in
bin/will get added to your$PATHand be made available everywhere.
- Anything in
topic/\*.zsh- Any files ending in
.zshget loaded into your environment.
- Any files ending in
topic/path.zsh- Any file named
path.zshis loaded first and is expected to setup$PATHor similar.
- Any file named
topic/completion.zsh- Any file named
completion.zshis loaded last and is expected to setup autocomplete.
- Any file named
topic/\*.symlink- Any files ending in
*.symlinkget symlinked into your$HOME. - You can keep all of those versioned in your dotfiles but still keep those autoloaded files in your home directory.
- These get symlinked in when you run
script/bootstrap.
- Any files ending in
note: Tower can override some settings and break signing.
git config --global commit.gpgsign true
git config --global gpg.format ssh
ssh-add -L
git config --global user.signingkey "ssh-ed25519 <your key id>"note: go can (should) now be installed via mise by creating .tool-versions files where appropriate.
go 1.24.4
note: macOS 15.5, defaults for Safari and Mail are no longer possible. Perhaps this happened. 🤷🏻
The fonts/install.sh script will download additional fonts. You will need to install them manually. Some of the fonts to be downloaded:
~/.dotfiles/fonts/install.shThe apps/install.sh script will download additional applications. You will need to install them manually. Some of the apps to be downloaded:
~/.dotfiles/apps/install.sh- original fork from @codykrieger dotfiles