É possível reinstalar / corrigir o ruby ​​do sistema do Mac OS X sem fazer uma reinstalação completa do sistema operacional?

15

É possível? Estou enfrentando vários problemas pelo menos uma vez por semana, pois ele foi corrompido ou algo assim, especialmente com o homebrew.

Se for possível, mas seria apenas uma idéia melhor começar com uma lista limpa, entre em contato.

LBRapid
fonte
Minhas configurações de PATH: gist.github.com/506481
LBRapid
No seu caminho, as entradas / opt / local sugerem que você também tem macports. o que mostra qual ruby?
user151019
Eu tenho o macports instalado, mas usar o ruby ​​apenas mostrará a versão do rvm ruby. As questões que eu funciono em são ao tentar usar algo como homebrew ou autotest
LBRapid
Basta seguir este artigo: superuser.com/questions/860819/…
Michallis

Respostas:

3

No meu entendimento - me corrija se estiver errado - você não precisa reinstalar todo o Mac OS X para reinstalar o sistema Ruby. Como você deve saber, o System Ruby vive em /System/Library/Frameworks/Ruby.framework/. Se essa pasta for excluída ou corrompida, ou se os links simbólicos que apontam para ela forem excluídos ou alterados, você não terá uma instalação do System Ruby em funcionamento.

Para corrigir, tente o seguinte:

  1. Insira o DVD de instalação do Mac OS X
  2. Abra a pasta DVD de instalação do Mac OS X
  3. Abra a pasta Instalações opcionais
  4. Abra a pasta Xcode Tools
  5. Abra o pacote XcodeTools. Isso iniciará o instalador do Xcode Tools. Siga as instruções.

Também não custa nada obter o Xcode mais recente em http://developer.apple.com/technologies/xcode.html

Divulgação completa: Eu executei essas etapas. Tenho certeza de que restaura o Ruby.framework, mas não restaurou os links simbólicos (normalmente em / usr / bin) para mim.

David J.
fonte
Essa solução é muito boa e, embora eu não a tenha seguido, foi sugerida por um colega de trabalho. Acabei reinstalando o ruby ​​1.8.7 para / usr / local a partir do código-fonte e, em seguida, associando-o ao local onde o homebrew precisava. Eu só precisava que o rvm e o homebrew funcionassem até que eu adquirisse um novo computador no próximo mês. Então, isso serve :) Obrigado pela sua resposta!
precisa saber é o seguinte
1
Poderia, por favor atualizar esta para Yosemite usando o AppStore instalado pacote
rraallvv
@rraallvv Não sei ao certo o que você quer dizer. Posso sugerir que, se as etapas acima não estiverem funcionando para você, (a) seja mais específico ou (b) crie uma nova resposta mostrando o que funcionou para você ou (c) crie uma nova pergunta com referência a esta.
David J.
Eu criei uma nova pergunta com os detalhes.
rraallvv
13

Se você usa o Pacifist , é possível apenas reinstalar o Ruby.

  1. Insira o seu OS X DVD
  2. Run Pacifist
  3. Selecione "Abrir discos de instalação da Apple"
  4. Selecione o disco
  5. Pesquisar "Ruby.framework"
  6. Clique com o botão direito e selecione "Instalar no local padrão"

Isso reinstalará o Ruby. Para configurar os links simbólicos de / usr / bin para apontar para ele, use o Pacifist novamente:

  1. Pesquisa "Conteúdo do BSD.pkg"
  2. Abrir: usr -> bin
  3. Selecione os links e arquivos necessários
    • boné
    • capificar
    • erb
    • furão-navegador
    • gema
    • gpgen
    • irb
    • mongrel_rails
    • trilhos
    • ancinho
    • rb-keygen
    • rdoc
    • pano vermelho
    • ri
    • rubi
    • testrb
    • update_rubygems
  4. Clique com o botão direito e selecione "Instalar no local padrão"

Em geral, se você precisar descobrir de que instalador veio um arquivo no seu sistema em um 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

O pkgid deve lhe dar uma dica e você encontra esse instalador e o executa novamente ou usa o Pacifist para fazê-lo seletivamente.

Você também pode ver o que outros arquivos estão nesse pacote com:

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

Eu descobri que a melhor maneira de lidar com o Ruby no OS X é levar o sistema ao estado padrão com o processo acima. Remova qualquer MacPort, Fink ou versão que você compilou manualmente. Instale o RVM e use-o para gerenciar a instalação de versões mais recentes.


Acontece que eu havia removido meu sistema Ruby e tive problemas ao instalar o pow ( http://pow.cx ) no meu mac por causa disso. Então eu instalei o Pacifist e segui os conselhos deste post e estou de volta aos negócios. Obrigado!

Teozauro
fonte
Pacifista (versão 3.2.17) fica preso ao tentar instalar Ruby.framework em Yosemite
rraallvv
3

Post antigo, mas eu estava apenas mudando de portas para homebrew, então ...

Para problemas de homebrew, resolvi instalando o rvm e o link simbólico. Portanto, se você possui o rvm instalado, pode começar digitando:

which ruby

com a saída disso faça algo como:

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

Eu estraguei minha instalação do Ruby no OSX, mas usei essa GUI da equipe RVM e consegui resolvê-la com pouco esforço e sem hackear uma CLI

http://jewelrybox.unfiniti.com

Adam Waite
fonte
-1

O IMO Homebrew( http://brew.sh ) é o melhor gerenciador de pacotes do OS X.

Para instalar o Homebrew, faça:

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

Então

brew install ruby

Feito.

Shaheen Ghiassy
fonte
9
Para instalar o Ruby, usar Ruby para instalá-lo via Homebrew ...
whirlwin