godhand1607 / mac

Personal guide for setting up a mac :computer:

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

mac đź’»

Personal guide for setting up a mac

Step 1: Install macOS

I highly recommend to start fresh with a clean install of the latest version of macOS. Check here for the latest guide on how to do so.

Step 2: Download and Install XCode

  • You can download and install XCode from the Mac App Store. Just search for "xcode" and it should come up as the first result.

    NOTE: Before proceeding to the next step, open XCode after installation as it will install additional tools, I also recommend to restart your mac after.

  • Install XCode command line tools

    xcode-select --install
  • Install Rosetta

    # Ref: https://apple.stackexchange.com/questions/428768/on-apple-m1-with-rosetta-how-to-open-entire-terminal-iterm-in-x86-64-architec
    softwareupdate --install-rosetta --agree-to-license

Step 3: Install Homebrew

  • Get Homebrew which is a package manager for macOS.

Step 4: Configure Terminal

  1. Install iTerm2

    brew tap cask
    brew install iterm2 --cask
  2. Using iTerm2, install Oh My Zsh

    NOTE: Be sure to accept change into using Z shell (zsh)

  3. Set iTerm as default terminal

  4. Install iTerm shell integrations

Step 5: Install Essential Command Line Tools

brew install git
brew install node
brew install mas
brew install m-cli

Step 6: Install and configure asdf

  1. Install asdf
    # https://asdf-vm.com/#/core-manage-asdf
    brew install asdf
    
    # Add to shell
    echo -e "\n. $(brew --prefix asdf)/asdf.sh" >> ~/.zshrc
  2. Install asdf plugins
    asdf plugin-add nodejs
    asdf plugin-add python
  3. Install latest (stable) versions
    asdf install nodejs latest:16
    asdf install python latest
  4. Set global plugin versions
    asdf global nodejs system
    asdf global python system

Step 7: Install zsh themes and plugins

  1. Install pure
    brew install pure
  2. Configure pure integration to oh-my-zsh
  3. Install fonts
    brew install font-hack-nerd-font --cask
    brew install font-inconsolata-dz-for-powerline --cask
  4. Install iTerm Profile
  5. Set iTerm Preferences -> Appearance -> Panes
    • Side margins = 12
    • Top & bottom margins = 20
  6. Install zsh plugins
  7. Check the .zshrc file for other configurations
  8. Restart iTerm for the changes to take effect

Step 8: Install Casks

# browsers
brew install google-chrome --cask
brew install brave-browser --cask
brew install firefox-developer-edition --cask

# browsers (optional)
brew install safari-technology-preview --cask

# text editors
brew install visual-studio-code --cask
brew install sublime-text --cask

# developer tools
brew install docker --cask
brew install postman --cask
brew install postico --cask

# developer tools - android and ios
brew install android-studio --cask
brew install gradle
brew install cocoapods

# developer tools (optional)
brew install mysqlworkbench --cask
brew install ngrok --cask

# utilities
brew install 1password --cask # TODO: Move to mas/appstore
brew install authy --cask
brew install omnidisksweeper --cask

# utilities (optional)
brew install kap --cask
brew install teamviewer --cask
brew install android-file-transfer --cask
brew install balenaetcher --cask

# communications
brew install zoom --cask
brew install keybase --cask
brew install discord --cask

# communications (optional)
brew install whatsapp --cask
brew install franz --cask
brew install skype --cask

# drivers
brew tap homebrew/cask-drivers
brew install logitech-g-hub --cask

# etc
brew install steam --cask
brew install spotify --cask
brew install vlc --cask
brew install transmission --cask

# gems
sudo gem install colorls

Step 9: Install App Store Apps

mas install 497799835 # Xcode
mas install 1037126344 # Apple Configurator 2

mas install 803453959 # Slack

mas install 425955336 # Skitch
mas install 441258766 # Magnet
mas install 425424353 # The Unarchiver

mas install 409203825 # Numbers
mas install 409183694 # Keynote
mas install 409201541 # Pages

Step 10: Configure git

  1. Setup ssh keys - https://help.github.com/en/articles/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent
  2. Setup signed commits - https://docs.github.com/en/authentication/managing-commit-signature-verification/about-commit-signature-verification
    brew install gnupg
    brew install --cask gpg-suite
  3. Copy .gitconfig and .gitignore_global files into home directory
  4. Update .gitconfig/user.email
  5. Update .gitconfig/user.signingkey

Step 11: Configure editors

  1. Visual Studio Code
  2. Sublime Text

Step 12: Setup developer tools

  1. Setup java/android development tools
    • Java 11
      # Ref: https://stackoverflow.com/questions/64788005/java-jdk-for-the-apple-m1-chip
      brew install openjdk@11
      
      # brew info openjdk@11
      sudo ln -sfn /opt/homebrew/opt/openjdk@11/libexec/openjdk.jdk /Library/Java/JavaVirtualMachines/openjdk-11.jdk
      
      # in ~/.bashrc or ~/.zshrc
      # export JAVA_HOME="$(brew --prefix openjdk@11)/libexec/openjdk.jdk/Contents/Home"
    • Install tools
      # Install
      sdkmanager "tools" "platform-tools" "extras;android;m2repository" "extras;google;m2repository" "build-tools;30.0.3" "platforms;android-30"
      
      # Accept licenses
      sdkmanager --licenses
    • Set environment variables
      # ~/.zshrc
      # android
      export ANDROID_SDK_ROOT=$HOME/Library/Android/sdk
      # avdmanager, sdkmanager
      export PATH=$PATH:$ANDROID_SDK_ROOT/tools/bin
      # adb, logcat
      export PATH=$PATH:$ANDROID_SDK_ROOT/platform-tools
      # emulator
      export PATH=$PATH:$ANDROID_SDK_ROOT/emulator
      # build tools
      export PATH=$ANDROID_SDK_ROOT/build-tools/30.0.3:$PATH

Step 13: Configure browsers

  • Safari
    • Plugins:
      • 1Password
  • Google Chrome
    • Plugins:
      • 1Password
      • Adblock Plus - free ad blocker
      • JSONView
      • React Developer tools
      • Redux DevTools
      • Panda
      • Octotree
      • Eye Dropper
  • Brave
    • Plugins:
      • 1Password
  • Firefox Developer Edition
    • Plugins:
      • 1Password
      • Facebook Container
      • Firefox Multi-Account Containers

Step 14: System Settings and Background

Step 15: Email and Calendar

  • System Preferences -> Internet Accounts
    • Add work accounts (All except Notes)
    • Add personal account (Calendar only)
  • Calendar -> Accounts
    • Choose necessary Delegations

Roadmap

  1. Incorporate homebrew/bundle
    • NOTE: Initial Brewfile is included in the repo
  2. Specify other System Settings
    • Battery
    • Finder
    • etc

Credits

About

Personal guide for setting up a mac :computer:


Languages

Language:Shell 83.5%Language:Ruby 16.5%