These are my dotfiles, targetting macOS, with the ability to setup any of my machines. The goal is to provide a repeatable, modular approach to setting up and maintaining a macOS installation with zsh as the primary shell. In the past these dotfiles used bash as the primary shell.
On a sparkling fresh installation of macOS:
sudo softwareupdate -i -a
xcode-select --install
The Xcode Command Line Tools includes git
and make
(not available on stock macOS).
Next clone this repo into the desired location:
git clone https://github.com/rick-roche/dotfiles.git ~/.dotfiles
- Setup your computer name using
~/.dotfiles/bin/dotfiles-setup-name <computer name>
. E.g.~/.dotfiles/bin/dotfiles-setup-name orko
- In
~/.dotfiles/settings/
create a personality file for the computer name using the convention_<computer name>-setup.zsh
. E.g._orko-setup.zsh
- Define the modules you want to install in the setup E.g.
. $DOTFILES_HOME/settings/_base-setup.zsh
export DOTFILES_PERSONALITY=orko
DOTFILES_MODULES+=(
aws
azure
dev
docker
dotnet
golang
java
node
media
)
Execute ~/.dotfiles/bin/dotfiles-setup
to run the initial setup of your machine using the defined personality.
The dotfiles setup adds the dotfiles
command to your path. Usage for the command can be seen by simply running dotfiles
in your terminal.
dotfiles
- Print usage informationdotfiles info
- Displays the setup of the machine on which this command is rundotfiles setup
- Use this to setup a new machinedotfiles update
- Use this to update all your modules
TODO