Setup a new Macbook for software development
This guide helps to setup a new macbook and make it ready for software development.
Make it yours : (Change the Laptop Name):
I use the following command to change the macbook name in case it’s promping a wrong username:
sudo scutil --set HostName name-you-want
Developers Tools
Xcode
The first step is to install developer tools on the new laptop wihout installing Xcode (it’s very large cannot afford to download it)
- Open the terminal
- type the following one and follow the prompt :
xcode-select --install
follow this link for a precise step by step guide .
Terminal
The second step is to get rid of the default mac terminal and install a powerfull and customizable terminal; my choice is a combinaison of zsh and iterm2, for zsh customization I use oh-my-zsh
let install it we need curl :
-
For iterm2
brew cask install iterm2
-
For Zsh and zsh completions
brew install zsh zsh-completions
-
And oh my zsh c:
sh -c "$(curl -fsSL https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"
And now we can customize it as we need
The default configuration can be edited and customized from the file .zshrc More about the terminal configuration can be found here.
- For customization i prefer using dracula theme for both vscode and iterm, it like a universal theme
Package Manager Homebrew
Third step is to install package manager homebrew: About homebrew:
Homebrew a free and open-source software package management system that simplifies the installation of software on Apple’s macOS operating system
I will need this software to install most of the software I’m going to work with.
From their official site it’s said that :
_Homebrew installs the stuff you need that Apple didn’t.
that is the reason why it’s not embedeed directly with ios like apt-get in linux or ubuntu os.
let us install it. As homebrew is written in ruby we will install it with this simple comand:
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
Once homebrew is installed we can install everything according to your needs.
Useful Softwares
I run the following comand to install the first set of softwares I need to work on my new laptop:
brew cask install slack zoomus google-chrome visual-studio-code spotify google-backup-and-sync
They are the most important software I use :
- slack is my office
- zoom is my phone
- google chrome and vscode are my axes
- and Spotify They are the most important software for me , everything else can be installed from google chrome
Programing Softwares
Python
For me as, I’m a pyhton developer I will install everything related to python :
-
let install python3 and python 2
-
python 2 I use
brew install python@2
-
python 3 I’m a big fan of python 3.6.5 because for now it’s the only version supported by tensorflow.
brew install --ignore-dependencies https://raw.githubusercontent.com/Homebrew/homebrew-core/f2a764ef944b1080be64bd88dca9a1d80130c558/Formula/python.rb
JavaScript
Node the latest version brew install node
Synchronize .zshrc file
To avoid rewriting the settings each time , I setup a new macbook, let me keep them synchronize to google drive.
- I made sure I have Google drive sync installed in my laptop
- Check if a folder Called Google Drive is in The home directory
- Create a folder for configuration with :
mkdir -p ~/Google\ Drive/ohmyzsh-conf
- Make a copy for the existing file in case :
cp ~/.zshrc ~/.zshrc.copy
- Move the original file to the google drive folder :
mv .zshrc ~/Google\ Drive/ohmyzsh-conf/.zshrc
- Make a symbolic link from that file with the original configuration :
ln -s ~/Google\ Drive/ohmyzsh-conf/.zshrc .zshrc