A instalação do macOS Sierra bagunçou meu ambiente de desenvolvimento!
Dica para restaurar o ambiente de desenvolvimento depois de atualizar o sistema operacional para o macOS Sierra.
Instalei ontem a nova versão do OSX, "Sierra" e infelizmente constatei que a maioria das ferramentas que utilizo no meu dia-a-dia de desenvolvedor não funcionava mais, incluindo homebrew, git e npm. Aqui estão as instruções para deixar tudo funcionando certinho novamente.
Desabilite a Proteção de Integridade do Sistema
A "Proteção de Integridade do Sistema" (SIP, sigla do inglês System Integrity Protection) é uma nova funcionalidade do OSX, também chamado "rootless". Como o próprio nome diz, ele cria um outro nível de acesso, abaixo da conta "root". Essa conta "root" rebaixada não pode modificar nada numa grande lista de arquivos de sistema, diretórios e processos. Isso faz sentido para a maioria dos usuários, que fornecem cegamente sua senha sudo sempre que algum instalador a solicita, mas não é nada bom para os desenvolvedores, que acessam regularmente esses diretórios. O npm é um dos aplicativos que precisa ter acesso ao /usr/local, um diretório protegido pelo SIP. Outros aplicativos muito usados em desenvolvimento, tais como o homebrew e o git, por exemplo, também precisam desse acesso. Assim sendo, o primeiro passo é desabilitar o SIP.
-
Reinicilize o computador no Modo de Recuperação (Pressione Cmd+R enquanto reinicializa).
-
Acesse um Terminal, a partir dos Menus.
-
Execute o comando:
csrutil disable
-
Reinicialize o computador.
Parabéns! Seu "root" não está mais rebaixado.
Atualize as permissões para usr/local
Abra um terminal e execute:
sudo chflags norestricted /usr/local && sudo chown $(whoami):admin /usr/local && sudo chown -R $(whoami):admin /usr/local
Isso vai atualizar as permissões que o npm, homebrew e outros aplicativos necessitam: eles serão proprietários do diretório e de todo o seu conteúdo. Também troca as flags do SIP, para permitir modificações posteriores, caso você decida reabilitá-lo.
Atualize as ferramentas de desenvolvimento
Reinstale o XCode developer tools, executando num terminal:
xcode-select --install
Atualize o homebrew
Num terminal, digite os comandos:
#$ brew update
#$ brew doctor
Siga as instruções do bom doutor e, finalmente, dê o comando:
brew upgrade
Isso vai atualizar todos os aplicativos instalados com o brew.
-
Crédito: Baseado no artigo El Capitain Broke My Developer Stuff! Here’s How to Fix It