ambiente_de_desenvolvimento.mac_os - Crops-Team/guidelines GitHub Wiki

Mac OS

Este arquivo contém a instalação na ordem correta de diversos componentes para um ambiente de desenvolvimento para Mac OS (x86 e arm64-arch).

[!Important] A ordem de instalação dos itens é importante. Por exemplo, diversas instalações dependem do HomeBrew, etc.

XCode Tools

[!Note] Se você planeja instalar o XCode, não precisa instalar as ferramentas do XCode.

xcode-select --install

Apple Silicon (arm64-arch)

[!Note] Se seu mac for intel, não seguir esta instrução.

Instalar o Rosetta para rodar softwares de plataforma x86 em arm64:


/usr/sbin/softwareupdate --install-rosetta --agree-to-license

Instalar FFI (dependência de HomeBrew):


arch -x86_64 sudo gem install ffi

Oh-My-Zsh

Site: https://ohmyz.sh Framework para o shell zsh, com diversos utilitários e plugins úteis.

Instalar:

sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"

HomeBrew

Site: https://brew.sh/

Gestor de pacotes para Mac OS. Muito útil para instalar e manter atualizada diversos softwares, especialmente ferramentas de desenvolvimento.

  • arm-64:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

eval "$(/opt/homebrew/bin/brew shellenv)"
  • x86:
arch -x86_64 zsh
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

eval "$(/usr/local/bin/brew shellenv)"

Configurar ~/.zshrc:

[!NOTE] Se instalou oh-my-zsh, colocar antes de source $ZSH/oh-my-zsh.sh.

# >>> HomeBrew Integration >>>
if [ "$(arch)" = "arm64" ]; then
    export PATH="/opt/homebrew/bin:/opt/homebrew/sbin${PATH+:$PATH}"
    export HOMEBREW_REPOSITORY="/opt/homebrew"
else
    export PATH="/usr/local/bin:/usr/local/sbin${PATH+:$PATH}" 
    export HOMEBREW_REPOSITORY="$(brew --prefix)/Homebrew"
fi

export HOMEBREW_CELLAR="$(brew --prefix)/Cellar"

export MANPATH="$(brew --prefix)/share/man${MANPATH+:$MANPATH}:"
export INFOPATH="$(brew --prefix)/share/info:${INFOPATH:-}"
export FPATH="$(brew --prefix)/share/zsh/site-functions:${FPATH}"
# >>> HomeBrew Integration >>>

Você pode desinstalar, se precisar, com:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/uninstall.sh)"

Utilização

Você pode interagir com o HomeBrew x86 em apple silicon usando:

arch -x86_64 brew ...
arch -x86_64 brew install ...
# etc

Alguns comandos úteis: Brew Cheatsheet

Asdf

Site: https://asdf-vm.com/pt-br/

Instalar:

brew install asdf

configurar ~/.zshrc:

# >>> integrate asdf >>>
. $(brew --prefix asdf)/libexec/asdf.sh
# <<< integrate asdf <<<

Utilização

asdf plugin add nome-da-ferramenta https://github.com/...
# ou (se fizer parte dos plugins conhecidos)
asdf plugin add nome-da-ferramenta

# lista versões disponíveis
asdf list all nome-da-ferramenta
# lista plugins instalados
asdf plugin list --urls
# lista plugins conhecidos instaláveis
asdf plugin list all

# remove plugin
asdf plugin remove nome-da-ferramenta
# atualiza plugin(s)
asdf plugin update --all
asdf plugin update nome-da-ferramenta

# reshim para casos especiais (ao atualizar npm que pertence ao nodejs, etc)
asdf reshim nome-da-ferramenta

asdf install nome-da-ferramenta latest
# se quiser definir a versão global do nodejs
asdf global nome-da-ferramenta latest
# ou
asdf global nome-da-ferramenta x.x.x
# coloca "nome-da-ferramenta x.x.x" no arquivo $HOME/.tool-versions

asdf local nome-da-ferramenta latest
# ou
asdf local nome-da-ferramenta x.x.x
# coloca "nome-da-ferramenta x.x.x" no arquivo $PWD/.tool-versions

Git

brew install git

XCode

É recomendado usar xcodes:

brew install robotsandpencils/made/xcodes
# para acelerar downloads:
brew install aria2

Ao instalar, substituir pela versão que você busca, por exemplo:

xcodes install x.x.x
...
xcodes select x.x.x

Instale a versão desejada de runtime do iOS:

xcodes runtimes install "iOS x.x.x"

Alguns comandos uteis:

# atualiza versões disponíveis
xcodes update
# lista versões disponíveis
xcodes list
# instala

Android SDK

brew install --cask android-commandlinetools
brew install android-platform-tools

Configurar ~/.zshrc:

# >>> Android SDK >>>
export ANDROID_HOME="$(brew --prefix)/share/android-commandlinetools"
export SDK_MANAGER="$(brew --prefix)/bin/sdkmanager"
export AVD="$(brew --prefix)/bin/avdmanager"
export ADB=`brew --prefix`/bin/adb

export PATH="$ANDROID_HOME:$SDK_MANAGER:$AVD:$ADB:$PATH"
# <<< Android SDK <<<
# aceitar licença
yes | sdkmanager --licenses

# instalar ferramentas
sdkmanager "cmdline-tools;latest" "build-tools;x.x.x" "platforms;android-x" "emulator" "tools" "platform-tools" "ndk-bundle"

[!Note] arm64-v8a se form apple silicon, se for intel, x86_64.

# instalar emuladores 
sdkmanager "system-images;android-x;default;arm64-v8a" "system-images;android-x;google_apis_playstore;arm64-v8a"

Android Studio

brew install --cask android-studio

miniconda

brew install miniconda

NodeJS

Instalar dependências:

brew install gpg gawk

Instalar versão via asdf:

asdf plugin add nodejs https://github.com/asdf-vm/asdf-nodejs.
asdf install nodejs latest
asdf global nodejs latest

java

asdf plugin add java
asdf install java adoptopenjdk-11.0.20+101
asdf install java adoptopenjdk-17.0.8+101
asdf global java adoptopenjdk-17.0.8+101

configurar ~/.zshrc:

# >>> integration Java >>>
. ~/.asdf/plugins/java/set-java-home.zsh
# <<< integration Java <<<

configurar ~/.asdfrc

java_macos_integration_enable=yes

Firebase CLI

asdf plugin add firebase
asdf install firebase latest
asdf global firebase x.x.x # substituir x.x.x pela versão

Flutter

Instalar dependências:

brew install jq

Instalar versão via asdf:

asdf plugin add flutter
asdf install flutter latest
asdf global flutter latest

Você pode usar este comando para verificar se todas as dependências do Flutter estão instaladas:

flutter doctor -v

Docker Desktop

brew install --cask docker

Abra o Docker Desktop para continuar o processo de instalação usando as opções recomendadas. em seguida vá em configurações: imagens.ambiente_de_desenvolvimento.mac_os.docker_1.png imagens.ambiente_de_desenvolvimento.mac_os.docker_2.png imagens.ambiente_de_desenvolvimento.mac_os.docker_3.png

VSCode (recomendado)

brew install --cask visual-studio-code