Recientemente compré una MacBook Pro 13" con el chip M1 y transfirí todos mis datos usando una copia de seguridad de Time Machine. Los paquetes Homebrew están actualmente instalados, /usr/local/opt/
pero entiendo que deberían estar debajo /opt/homebrew
de Apple Silicon Macs.
Cómo puedo:
/user/local/opt
/opt/homebrew
Asumí que Homebrew sería lo suficientemente inteligente como para hacer esto automáticamente, pero aparentemente necesita un mantenimiento manual.
Aquí está mi configuración de Homebrew si ayuda:
HOMEBREW_VERSION: 2.7.2
ORIGIN: https://github.com/Homebrew/brew
HEAD: dad7dc6a1498b80770d98f2d7cd6fb927c300bbb
Last commit: 3 days ago
Core tap ORIGIN: https://github.com/Homebrew/homebrew-core
Core tap HEAD: 2b1d79d038bffdbfcee93283051d48919a4caf3d
Core tap last commit: 16 hours ago
Core tap branch: master
HOMEBREW_PREFIX: /usr/local
HOMEBREW_REPOSITORY: /usr/local/Homebrew
HOMEBREW_CELLAR: /usr/local/Cellar
HOMEBREW_CASK_OPTS: []
HOMEBREW_MAKE_JOBS: 8
Homebrew Ruby: 2.6.3 => /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/bin/ruby
CPU: octa-core 64-bit arm_firestorm_icestorm
Clang: 12.0 build 1200
Git: 2.30.0 => /usr/local/bin/git
Curl: 7.64.1 => /usr/bin/curl
macOS: 11.1-arm64
CLT: 12.3.0.0.1.1607026830
Xcode: N/A
Rosetta 2: false
¡Gracias de antemano!
Según https://docs.brew.sh/Installation , /usr/local
es para binarios de Intel, /opt/homebrew
para ARM. Por lo tanto, es posible que desee reinstalar en lugar de simplemente migrar.
Puede volcar la lista de paquetes actualmente instalados con brew bundle dump
. Para duplicar su instalación actual, necesitará
correr brew bundle dump
para crear unBrewfile
instale ARM Homebrew /opt/homebrew
siguiendo las instrucciones en https://docs.brew.sh/Installation
cd /opt
sudo mkdir -p homebrew
sudo chown -R $(whoami) homebrew
curl -L https://github.com/Homebrew/brew/tarball/master |\
tar xz --strip 1 -C homebrew
asegúrese de que la versión ARM esté al comienzo de su RUTA
PATH=/opt/homebrew/bin:$PATH
Vuelva a aplicar el archivo de preparación creado en el paso uno
hash -d brew
brew bundle install --file /path/to/Brewfile
Opcionalmente, ejecute brew analytics off
para desactivar la recopilación de seguimiento / análisis realizada por Homebrew
PD: algunas fórmulas no parecen funcionar en ARM todavía
PPS: /usr/local/Cellar
y cualquier enlace simbólico que se /usr/local/bin
encuentre en él se puede eliminar después.
Aquí está el enfoque que finalmente tomé.
Primero, tomé nota de mis paquetes de cerveza instalados:
brew list
Guardé esto como un archivo de texto para poder consultarlo más tarde. Luego desinstalé la versión anterior de Homebrew y todos sus paquetes:
cd ~/Desktop
wget https://raw.githubusercontent.com/Homebrew/install/master/uninstall.sh
chmod +x ./uninstall.sh
sudo ./uninstall.sh --path=/usr/local
y eliminó el archivo una vez que se hizo:
rm uninstall.sh
Luego instalé Homebrew con soporte M1:
cd /opt; sudo mkdir homebrew
curl -L https://github.com/Homebrew/brew/tarball/master | tar xz --strip 1 -C homebrew
Agregué lo siguiente a mi ~/.zshrc
archivo:
export PATH=/opt/homebrew/bin:$PATH
y lo obtuvo con:
source ~/.zshrc
Luego me referí a la lista de mi primer paso y comencé a instalar los paquetes necesarios uno por uno :) La mayoría de los paquetes que estaba usando parecen tener soporte ARM, ¡lo cual es increíble!
sin ladera
sejn
Seb
sudo ./uninstall.sh --path=/usr/local
en realidad intenta eliminar todo el/usr/local
directorio!:rmdir: /usr/local: Operation not permitted
. ¿Es seguro correr de todos modos?