Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Setup de VM en Apple Silicon (M1) #2550

Closed
dlopezjoffreutn opened this issue Apr 11, 2022 · 4 comments
Closed

Setup de VM en Apple Silicon (M1) #2550

dlopezjoffreutn opened this issue Apr 11, 2022 · 4 comments

Comments

@dlopezjoffreutn
Copy link

dlopezjoffreutn commented Apr 11, 2022

Buenas! Yo estoy con una M1 y me paso algo parecido a lo detallado en este issue #2299!

Con UTM pude levantar una iso de Ubuntu con arq ARM, setupear todo de 0 con mucha tranquilidad (salvo por detalles menores, seguí esta instalación) e instalar todos los paquetes listados en https://www.utnso.com.ar/recursos/maquinas-virtuales pero la instalacion de ruby falla 😞

💻 Logs

Con el ultimo comando rvm install --default ruby-head tira estos errores:

image

Warning! Requested ruby installation which requires another ruby available - installing ruby-2 first.

TruffleRuby does not support aarch64 currently.
TruffleRuby does not support aarch64 currently.

Checking requirements for ubuntu.
Requirements installation successful.

TruffleRuby does not support aarch64 currently.

truffleruby-20.3.0 - #downloading truffleruby-20.3.0-linux-, this may take a while depending on your connection...
truffleruby-20.3.0 - #extracting truffleruby-20.3.0-linux- to /home/utn-so/.rvm/src/truffleruby-20.3.0.....

Error running '__rvm_package_extract /home/utn-so/.rvm/archives/truffleruby-20.3.0-linux-.tar.gz /home/utn-so/.rvm/tmp/rvm_src_2134',
please read /home/utn-so/.rvm/log/1649688702_truffleruby-20.3.0/extract.log

There has been an error while trying to extract the source. Halting the installation.

To proceed rvm requires a ruby-2 compatible ruby is installed.
We attempted to install it automatically but it failed with status 1.
Please install it manually (or a compatible alternative) to proceed.

Parece que no esta supporteado TruffleRuby todavia para la arquitectura de Apple Sillicon (arm64) pero yo estoy dentro de la VM, no deberia tener amd64? Me pasa lo mismo instalando el .deb file de Google Chrome y VSCode.

Si alguno conoce del tema desde ya agradezco ideas para probar cositas! Saludos, Dolores 👋

🔎 Búsqueda en foros

Para comando de gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB tuve que cambiar el server por keyserver.ubuntu.com segun esta respuesta

Sobre el support de TruffleRuby para Apple Silicon encontré este issue oficial.
Tambien antes que nada probe el mismo comando de rvm install pero agregando la flag --auto-dotfiles según esta respuesta pero sin cambiar el comando en si.

📦 Especificaciones de la VM

  • Versión de UTM: v.3.1.5

🖥️ Especificaciones del host

  • Sistema Operativo y versión: macOS Monterrey (v.12.2.1), con chip M1
@mesaglio
Copy link

Hola Dolores, como va?

De momento creemos q no vamos a necesitar ruby en este cuatrimestre.
Skipea el rvm install ... y comentanos si tuviste otro inconveniente.

Saludos, Juani

@mgarciaisaia
Copy link
Member

Parece que no esta supporteado TruffleRuby todavia para la arquitectura de Apple Sillicon (arm64) pero yo estoy dentro de la VM, no deberia tener amd64? Me pasa lo mismo instalando el .deb file de Google Chrome y VSCode.

Desde la VM, podés hacer uname -m en una terminal para ver qué arquitectura tiene el SO guest. Lo más probable es que sea ARM (aarch64, como dice por ahí). Fijate que en la página que pasaste de UTM dice:

UTM employs Apple's Hypervisor virtualization framework to run ARM64 operating systems on Apple Silicon at near native speeds. [ ... ] In addition, lower performance emulation is available to run x86/x64 on Apple Silicon as well as ARM64 on Intel.

Es decir, ejecuta las VMs en ARM64 por defecto, pero también puede emular x86 para ejecutar una VM x86. Probablemente no sea el default (porque va a ser bastante más lento el asunto, y con más potencial de pegarle a algún bug de la emulación), y, si ese fuera el caso, no funciona ejecutar una imagen ARM como mencionás al principio 🙃

Es decir, si la VM es ARM, el SO tiene que ser ARM. Si la VM es x86 (via emulación), el SO tiene que ser x86. Así que podrías intentar usar la emulación de x86 para ejecutar la VM que distribuye la cátedra, o podés crear una VM ARM e instalar el SO (como relataste en este post).

Yo me inclinaría por probar el primer caso: emular x86 a ver si funciona bien. El objetivo sería optimizar la felicidad del grupo evitando potenciales problemas por tener entornos/arquitecturas diferentes (que, buen, para eso creamos las VMs). Si anda muy mal, evaluaría otras alternativas.

@dlopezjoffreutn
Copy link
Author

dlopezjoffreutn commented Apr 12, 2022

Buenas! Geniales noticias lo de ruby @mesaglio 🥳 El resto de los paquetes se instalaron sin drama.

@mgarciaisaia Probe levantando directamente el iso de lubuntu de la catedra como decías. Se extraen bien los archivos, matchea con el md5, y (via emulación) puedo montar una arq x86! Lamentablemente después de eso se queda tonto al bootear, no se si será tema de disco (que por ahi comparte particion con la otra vm y no tiene lugar para poner sus cosas).

Para referencia esta es la 1er vm (arm):

image

y esta es la vm de la catedra (x86)

image

Solo con exit en la consola pude llegar a otro lado, como para setupear las boot options pero nada que toque me lleva a nada:

image

Por ahora avanzo con la arm que va joya, y en presencial veo con @esigma5 si es algo de la partición que quiere usar la de la catedra o directamente no la puedo usar.
Muchas gracias! Saludos, Dolores 👋

@nahuemazzeo
Copy link
Contributor

Hola @dlopezjoffreutn si ves que de momento estas OK por favor cerra el issue y en caso que tengas algun otro problema podes reabrirlo.

Saludos. Nahuel

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants