A collection of portable configuration files for various tools, specifically developed for my macOS build.
First, make sure Xcode and Xcode Command Line tools are installed. If you get stuck at any point, follow these guides:
I follow the steps below in the exact order they appear, because there are some dependencies between setup phases.
Run the following command to install Homebrew:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
Then, run brew doctor
to make sure there are no issues before proceeding with application installations.
Install git by running brew install git
and then clone this repository. Once that step is completed, set your current directory as the root of the repository and run the following scripts:
./homebrew/basic.sh
to install the basic utilities and programs that I use on all of my macOS environments, both personal and work./homebrew/personal.sh
to install additional applications on personal machines that do not have some sort of remote management setup, which is common on company-issued MacBooks
Import iTerm2 profiles to enable the hotkey window terminal and further customise iTerm2. Follow the instructions below:
- Go to
Preferences
under the iTerm2 application and then navigate toProfiles
- Click on the "default" profile and select
Other Actions...
at the bottom of the window - You should see an option called
Import JSON Profiles...
which will allow you to select and import the profiles in the./iterm2/profiles
folder
If you want to use zsh as your default shell and take advantage of community frameworks like Oh My Zsh, follow the instructions below:
-
Set zsh as the default shell:
chsh -s /bin/zsh # if using default Apple zsh chsh -s /usr/local/bin/zsh # if installed with Homebrew
-
Download and install Oh My Zsh in your home directory with curl:
sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
-
Download the Powerlevel10k theme:
git clone --depth=1 https://github.com/romkatv/powerlevel10k.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/themes/powerlevel10k
-
Install Oh My Zsh plugins:
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions
-
Create symlinks to your home directory:
ln -svf ~/.dotfiles/zsh/.zshrc ~ ln -svf ~/.dotfiles/zsh/.p10k.zsh ~ ln -svf ~/.dotfiles/zsh/.zprofile ~
-
Restart shell or run
source ~/.zprofile
for changes to take effect. You may have to re-runp10k configure
in order to install the required fonts to get all the right icons.
Install Node Version Manager i.e. nvm
by running the following command in your terminal.
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash
Once nvm
is installed, you can install and run multiple versions of Node e.g. nvm install node 12
and nvm use 12
in order to install and run Node 12.
Run the following in your terminal to update symlinks.
# GitHub
ln -svf ~/.dotfiles/git/.gitconfig ~
# Vim
ln -svf ~/.dotfiles/vim/.vimrc ~
At this point, you can install pyenv
to manage different versions of Python. Anaconda and Miniconda are too bloated, and managing Python with Homebrew is too complicated, so this is the "easy" way out. Follow the instructions below to install pyenv
.
-
Run
curl https://pyenv.run | zsh
to installpyenv
-
Install the version of Python you want to use e.g. Python 3.7.7
pyenv install 3.7.7 pyenv global 3.7.7