Make sure zsh
is your default shell, if not, set zsh as your login shell:
chsh -s $(which zsh)
/bin/bash -c "$(curl -fsSL https://thebeardydeveloper.com/setup)"
This script is intended to be run on a Mac, you can see the script at bin/setup-mac
This installs the necessary CLIs (git & homebrew), will install all the packages specified in the Brewfile and then executes the bootstrap script in config/dot/bootstrap/install
.
Clone onto your machine:
git clone git://github.com/ysdexlic/dotfiles.git ~/dotfiles
(Or, fork and keep your fork updated).
Install dot:
brew install ysdexlic/formulae/dot
Install the dotfiles with the boostrap flag -b
:
env DOTRC=$HOME/dotfiles/dotrc dot -b
After the initial installation, you can run dot
without the one-time variable
DOTRC
being set (dot
will symlink the repo's dotrc
to ~/.dotrc
for
future runs of dot
).
This command will create symlinks for config files in your home directory. The dotrc file tells dot to:
- Exclude the
README.md
any other files files, which are part of thedotfiles
repository but do not need to be symlinked in. - Give precedence to personal overrides which by default are placed in
~/dotfiles-local
. See more about local customizations below
It will also install any dependencies needed (if the -b
bootstrap flag is
passed), such as
oh-my-zsh and
starship before installing the Vim plugins listed in
packer.lua.
Additional zsh configuration can go under the ~/dotfiles-local/zsh/configs
directory. This
has two special subdirectories: pre
for files that must be loaded first, and
post
for files that must be loaded last.
Additional configurations can be added in config/nvim/lua/<SOMETHING>
as long as it's 'required' in the init.lua
.
Plugin specific configuration can be added in config/nvim/after/plugin/<PLUGIN_NAME>
.
NeoVim documentation can be seen here or by typing :h
in the nvim command line.
With dot you can have multiple dotfile directories, this means you could have project, machine or user specific overrides.
Using this dotfile repo, the dotrc already specifies an additional dotfile directory (~/dotfiles-local
) where you can store your personal customizations:
mkdir ~/dotfiles-local
If your customizations are to a file that already exists, e.g. zshrc
you can use a slightly different file name, i.e. appending .local
on the end of it and sourcing it (if it exists) from the original zshrc
as can be seen here.
Configs for: