Skip to content
fork of .dotfiles for use with remote server over ssh
Shell Vim script PHP
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.
.coveralls example.yml

Macbook Pro Setup

Build Status Coverage License

GitHub Pipenv locked Python version nuxt.js macOS Version code style: prettier

Twitter Follow GitHub followers

System setup for MacBook Pro using Mojave, Bash, and Python Development

This is my software development setup for a MacBook Pro (mid-2015, 16g ram, 256g SSD). It is the setup I currently use and may change frequently. I am a dabbler in many arts ... and far from expert in most areas. Take it for what it is worth to you.

Please feel free to offer suggestions and changes (contribution instructions below). I have been coding for many years, but mostly as a side activity ... as a tool to assist me in other endeavors ... so I have not had the 'hard time' invested of constant coding that many of you have.

Copyright © 2018-2019 Michael Treanor

Many original settings © 2018 Mathias Bynens

MIT License - enjoy ...


Warning: If you want to use this setup, you should fork this repository, review the code, and make changes to suit your needs.

If you aren't sure, don't use it! This setup works for me for what I do. Don’t blindly use my settings unless you know what that entails. It could make your system inoperable or at least very annoying to use! Use at your own risk!

Using Git and the bootstrap script

You can clone the repository wherever you want. (I like to keep it in ~/.dotfiles) The bootstrapper script will pull in the latest version and copy the files to your home folder.

git clone && cd .dotfiles && source

To update, cd into your local .dotfiles repository and then:


Alternatively, to update while avoiding the confirmation prompt:

set -- -f; source

Specify the $PATH

If ~/.path exists, it will be sourced along with the other files, before any feature testing (such as detecting which version of ls is being used) takes place.

Here’s an example ~/.path file that adds /usr/local/bin to the $PATH:

export PATH="/usr/local/bin:$PATH"

Add custom commands without creating a new fork

If ~/.extra exists, it will be sourced after the other files. You can use this to add a few custom commands without the need to fork this entire repository, or to add commands you don’t want to commit to a public repository.

My ~/.extra looks something like this:

# Git credentials
# Not in the repository, to prevent people from accidentally committing under my name
GIT_AUTHOR_NAME="Michael Treanor"
git config --global "$GIT_AUTHOR_NAME"
git config --global "$GIT_AUTHOR_EMAIL"

Since it is sourced last, you could also use ~/.extra to override settings, functions and aliases from my dotfiles repository. It’s probably better to fork this repository instead, though.

Sensible macOS defaults

When setting up a new Mac, you may want to set some sensible macOS defaults:


Install Homebrew formulae

When setting up a new Mac, you may want to install some common Homebrew formulae (after installing Homebrew, of course):


Some of the functionality of these dotfiles depends on formulae installed by If you don’t plan to run, you should look carefully through the script and manually install any particularly important ones. A good example is Bash/Git completion: the dotfiles use a special version from Homebrew.


Suggestions/improvements welcome!



Michael Treanor

Based primarily on the open source work of:


Mathias Bynens

Thanks to…

You can’t perform that action at this time.