wojciech12 / mac-dev-setup

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

MAC Dev Setup

Installation

Install:

  • brew - package manager for installing all other software
  • zprezto to install zsh CLI plugins

Essentials

  1. CLI

    brew install gnupg \
                 git \
                 jq \
                 wget \
                 golang \
                 python3 \
                 httpie \
                 tree \
                 ack \
                 pyenv \
                 watch \
                 neovim # add alias alias vim='nvim'   
    
  2. Fonts:

    
    brew tap homebrew/cask-fonts 
    brew install svn
    brew install font-monaspace \
                 font-source-code-pro \
                 font-jetbrains-mono \
                 font-fira-code-nerd-font \
                 font-fira-sans \
                 font-work-sans --cask # font from the golang brand book
    
  3. Applications:

    brew install firefox \
                 iterm2 \
                 google-chrome \
                 opera \
                 slack --cask
    
    brew install --cast rancher
    
    brew install discord --cask
    

    Utils (Amethyst and keepingyouawake):

    brew cask install amethyst \
                      keepingyouawake
    

    My favorite password manager:

    brew cask install keepassx 
    

    Good to practice typing from time to time:

    brew install gnu-typist
    
  4. Solid editor, many ideas in atom or vs-code are directly borrowed from sublime:

    brew install sublime-text --cask
    
  5. A simple timer for pomodoro:

    brew install michaelvillar-timer --cask
    

Development Tools

  1. IDE / Coding Tools:

    brew cask install visual-studio-code \
                      sourcetree # best GUI for git
    

    Hub for working with github:

    brew install hub
    

    Db:

    brew cask install nosqlbooster-for-mongodb
    # mongo CLI
    brew tap mongodb/brew
    brew install mongodb-community@3.6
    
  2. Jetbrains:

    brew cask install intellij-idea
    
  3. Kubernetes:

    brew install kubernetes-cli \
                 k3d \
                 minikube \
                 kubectx
    

    Telepresence:

    brew cask install osxfuse
    brew install datawire/blackbird/telepresence
    

    Promtools:

    brew install prometheus
    
  4. Cloud Platoforms

    • Fundamentals:

      brew install opentofu
      

      Check also terragrunt

    • Azure: brew install azure-cli

    • AWS (check also guide):

  5. Gopass - sharing secrets with git and gpg:

    brew install gopass
    

    Works really well with scripts for setting your infrastructure.

  6. Virtualbox with vagrant and packer:

    brew cask install virtualbox \
                      vagrant \
                      packer
    
  7. Machine Learning:

    brew cask install anaconda
    

Notes

So far zim-wiki works for me the best.

brew install python@3 \
             gtk-mac-integration \
             pygobject3 \
             adwaita-icon-theme # for icons in the zim-wiki UI

brew install zim

and create in Automator - Application that runs a shell script:

zim

Now, let's install zim-wiki plugins: Journal and TODO.

  1. Latex - writings:

    brew cask install mactex 
    
  2. High Q diagrams:

    brew cask install yed
    

See also:

Misc

Configuration

see: https://github.com/nicolashery/mac-dev-setup#iterm2

  • Atom One Dark or Pastel (Dark Background)
  • Alert: visual
  • Font: font-fira-code-nerd-font (font-hack)

VSCode

code --list-extensions

code --install-extension ms-python.python
code --install-extension ms-vscode.go
code --install-extension vscodevim.vim

InteliJ

TBD

CLI: zprezto

Install zprezto, alternative ohmyzsh.

Plugins, I use:

zstyle ':prezto:load' pmodule \
  'environment' \
  'terminal' \
  'editor' \
  'history' \
  'directory' \
  'spectrum' \
  'completion' \
  'prompt' \
  'git' \
  'osx' \
  'tmux' \
  'fasd' \
  'gnu-utility' \
  'utility' \
  'syntax-highlighting' \
  'history-substring-search'

CLI: aliases

TBD

Browsers

  • Firefox (90% what I do), addons:

  • Chrome (for internal tools: github panel, aws console, azure...):

Set default search engine to google.com with no localization, see my blog post.

Mac Configuration

  1. Select System Preferences > Security & Privacy:

    • Under General, set require a password after sleep or screen saver begins to immediately
    • Click Advanced… and select Require an administrator password to access system-wide preferences
    • Under Firewall, click Turn Firewall On.
    • Under Privacy, select Analytics and ensure that the options are not enabled.
  2. Enable file enryption.

  3. Configure a hot corner - bottom left to lock the Screen - see: https://www.cnet.com/how-to/7-ways-to-lock-your-macbook/

  4. Use password manager.

Finder

  1. Add Hard Disk to locations
  2. Put home dir to favorites
  3. View -> Show Path Ba
  1. capslock -> ESC in Preference -> Keyboard -> Modifier Keys

About