macos-installer
Karim Benbourenane's personal macOS installer script. For both fun and profit. Aquick way to prepare a fresh machine to have all the tools of the trade as well as personal artifacts, the way I like it.
/bin/sh -c "$(curl -fsSL https://raw.githubusercontent.com/karimbenbourenane/macos-installer/master/install.sh)"
Paste that into a macOS Terminal and hit enter
to run the installer.
What does it do?
In the following order, this script
- Installs the
chezmoi
dotfile manager - Initializes
chezmoi
using my dotfile repository- The dotfile repository is not public
- Pulls down and stages all the latest dotfiles in that repository
- Includes configuration for
Homebrew
brew bundles viaBrewfile
- Includes configuration for
vim-plug
vim plugin manager viavimrc
- Includes configuration for several other things like ssh, git, and gpg
- Includes configuration for
- Installs the
Homebrew
package manager - Installs all
Homebrew
bundles inBrewfile
- Sources the freshly retrieved zsh configuration files from
chezmoi
- Includes a zsh
update
function that keeps packages and plugins up to date- Keeps
Homebrew
bundles updated - Keeps
vim-plug
plugins updated
- Keeps
- Includes a zsh
- Installs
vim-plug
and vim plugins invimrc
Can I use this?
No. If you're reading this and you're not me, this script of of zero value to you. It requires access to the private dotfile repository, which only I have access to. I'm hosting this project publicly so that I can quickly bootstrap a new machine at a moments notice by running a single command.
Why is this public then?
Because I wanted to create the most brain-dead way of setting up a new development machine, and preparing this script to be used at a moments notice was the path of least resistance. I didn't write this for you, I wrote it so I wouldn't forget how to run this in the future.
update
function
The Once everything is installed, you're ready to go. The update
function is loaded into each Terminal session, and can be executed to keep everything up to date in one convenient shell command.