¿Es posible reinstalar / reparar el sistema ruby ​​de Mac OS X sin hacer una reinstalación completa del sistema operativo?


15

¿Es posible? Me encuentro con varios problemas al menos una vez a la semana desde que se corrompió o algo así, especialmente con homebrew.

Si es posible, pero sería una mejor idea comenzar desde cero, por favor hágamelo saber.


Mi configuración de RUTA: gist.github.com/506481
LBRapid

Desde su ruta, las entradas / opt / local sugieren que también tiene macports. ¿Qué muestra qué rubí muestra?
user151019

Tengo macports instalados, pero usar Ruby solo mostrará la versión rvm ruby. Los problemas con los que me encuentro son cuando trato de usar algo como homebrew o autotest
LBRapid el

Sólo tienes que seguir este artículo: superuser.com/questions/860819/...
Michallis

Respuestas:


3

Según tengo entendido, corríjame si me equivoco, no tiene que reinstalar todo Mac OS X para reinstalar su sistema Ruby. Como ya sabrás, el Sistema Ruby vive en /System/Library/Frameworks/Ruby.framework/. Si esa carpeta se elimina o daña, o si los enlaces simbólicos que apuntan a ella se eliminan o cambian, no tendrá una instalación de System Ruby en funcionamiento.

Para solucionarlo, intente esto:

  1. Inserta tu DVD de instalación de Mac OS X
  2. Abra la carpeta de DVD de instalación de Mac OS X
  3. Abra la carpeta de Instalaciones opcionales
  4. Abra la carpeta Xcode Tools
  5. Abra el paquete XcodeTools. Esto iniciará el instalador de Xcode Tools. Sigue las instrucciones.

Tampoco hace daño obtener el último Xcode de http://developer.apple.com/technologies/xcode.html

Divulgación completa: he realizado estos pasos. Estoy bastante seguro de que restaura el Ruby.framework, pero no ha restaurado los enlaces simbólicos (generalmente en / usr / bin) para mí.


Esta solución es bastante buena, y aunque no la seguí, finalmente fue sugerida por un compañero de trabajo. Terminé simplemente reinstalando ruby ​​1.8.7 a / usr / local desde la fuente y luego vinculándolo a donde homebrew lo necesitaba. Solo necesitaba que rvm y homebrew funcionaran hasta que tenga una computadora nueva el próximo mes. Así que esto hará :) Gracias por su respuesta!
LBRapid

1
¿Podría actualizar esto para Yosemite utilizando el paquete instalado AppStore
Rraallvv

@rraallvv No estoy seguro de lo que quieres decir. ¿Puedo sugerir que si los pasos anteriores no funcionan para usted, entonces (a) sea más específico, o (b) cree una nueva respuesta que muestre lo que funcionó para usted, o (c) cree una nueva pregunta, haciendo referencia a esta.
David J.

He creado una nueva pregunta con los detalles.
rraallvv

13

Si usa Pacifist, entonces es posible reinstalar Ruby.

  1. Inserta tu DVD de OS X
  2. Run Pacifist
  3. Seleccione "Abrir discos de instalación de Apple"
  4. Selecciona el disco
  5. Buscar "Ruby.framework"
  6. Haga clic derecho y seleccione "Instalar en la ubicación predeterminada"

Esto reinstalará Ruby, para configurar los enlaces simbólicos desde / usr / bin para que apunte a usar Pacifist nuevamente:

  1. Buscar "Contenido de BSD.pkg"
  2. Abierto: usr -> bin
  3. Seleccione los enlaces y archivos que necesita
    • gorra
    • capify
    • erb
    • navegador hurón
    • joya
    • gpgen
    • irb
    • mongrel_rails
    • rieles
    • rastrillo
    • rb-keygen
    • rdoc
    • tela roja
    • Rhode Island
    • rubí
    • testrb
    • update_rubygems
  4. Haga clic derecho y seleccione "Instalar en la ubicación predeterminada"

En general, si necesita averiguar de qué instalador proviene un archivo en su sistema en una terminal:

$ pkgutil --file-info /usr/bin/ruby
volume: /
path: usr/bin/ruby

pkgid: com.apple.pkg.BSD
pkg-version: 10.5.0.1.1.1188305148
install-time: 1203610823
uid: 0
gid: 0
mode: 120755

El pkgid debería darle una pista, y luego encuentra ese instalador y lo ejecuta nuevamente o usa Pacifist para hacerlo selectivamente.

También puede ver qué otros archivos hay en ese paquete con:

$ pkgutil --files com.apple.pkg.BSD
.
Library
Library/Documentation
Library/Documentation/Commands
Library/Documentation/Commands/grep
...

He encontrado que la mejor manera de lidiar con Ruby en OS X es llevar su sistema al estado predeterminado con el proceso anterior. Elimine cualquier MacPort, Fink o versiones que haya compilado manualmente. Instale RVM y utilícelo para administrar la instalación de versiones más nuevas.


Resulta que había eliminado mi sistema Ruby y tenía problemas para instalar pow ( http://pow.cx ) en mi mac debido a eso. Así que instalé Pacifist y seguí los consejos de esta publicación y volví al negocio. ¡Gracias!


Pacifist (Versión 3.2.17) se atasca al intentar instalar Ruby.framework en Yosemite
rraallvv

3

Publicación anterior, pero solo estaba cambiando de puertos a homebrew, así que ...

Para problemas de homebrew, lo resolví instalando rvm y symlinking. Entonces, si tiene instalado rvm, puede comenzar escribiendo:

which ruby

con la salida de eso, haga algo como:

ln -s /Users/username/.rvm/rubies/ruby-1.9.2-p290/bin/ruby /usr/bin/ruby


-1

IMO Homebrew( http://brew.sh ) es el mejor administrador de paquetes para OS X.

Para instalar Homebrew haz:

ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

Luego

brew install ruby

Hecho.


99
Para instalar Ruby, use Ruby para instalarlo a través de Homebrew ...
whirlwin
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.