RVM holt / etc / gemrc nicht ab

7

in einem systemweiten RVM .... hier ist mein / etc / gemrc

---
gem:--no-ri --no-rdoc

Hier ist das System gem env

 GEM PATHS:
     - /usr/lib/ruby/gems/1.9.1
     - /home/${USER}/.gem/ruby/1.9.1
    GEM CONFIGURATION:
         - :update_sources => true
         - :verbose => true
         - :benchmark => false
         - :backtrace => false
         - :bulk_threshold => 1000
         - "gem" => "--no-ri --no-rdoc"

und hier ist der in rvm

GEM PATHS:
 - /usr/local/rvm/gems/ruby-1.9.2-p180
 - /usr/local/rvm/gems/ruby-1.9.2-p180@global
GEM CONFIGURATION:
     - :update_sources => true
     - :verbose => true
     - :benchmark => false
     - :backtrace => false
     - :bulk_threshold => 1000

und rvm @global

    GEM PATHS:
     - /usr/local/rvm/gems/ruby-1.9.2-p180
     - /usr/local/rvm/gems/ruby-1.9.2-p180@global
  - GEM CONFIGURATION:
     - :update_sources => true
     - :verbose => true
     - :benchmark => false
     - :backtrace => false
     - :bulk_threshold => 1000

Warum nimmt es die gemrc-Datei nicht auf?

jtzero
quelle

Antworten:

7

Hier gilt das gleiche. Versuchen Sie diesen Weg:

/usr/local/rvm/rubies/ruby-1.9.2-p180/etc/gemrc

Um den Weg zu finden:

$ irb
>> require 'etc'
>> Etc.sysconfdir 
 => "/usr/local/rvm/rubies/ruby-1.9.2-p180/etc" 
Justin Case
quelle
das wird sandbox es nur um ruby-1.9.2-p180 richtig zu machen?
Jtzero
@ jtzero richtig
Justin Case
Das Problem dabei ist, dass ich keine Rdocs auf dem Server haben möchte, auf irgendeiner Version von Ruby ...
Jtzero
1

Sie müssen --sysconfdir=/etcfür jeden Ruby, den Sie kompilieren, angeben , dass Sie dies tun können mit:

rvm reinstall 1.9.3 -C --sysconfdir=/etc

Natürlich gab es einen Fehler in Rubygems, der dazu führte, dass alle 1.8 Rubine verwendet wurden. Dieser Fehler wurde /etcmit https://github.com/rubygems/rubygems/pull/291 behoben

mpapis
quelle
1

Versuchen Sie, die gemrc-Datei in / usr / local / etc abzulegen - sie sollte von allen benutzerdefinierten kompilierten Rubinen aufgenommen werden.

tee /usr/local/etc/gemrc <<EOF
gem: --no-ri --no-rdoc
EOF
Zaius
quelle
1

Der Grund ist, dass Sie den Namen des Befehls verwenden sollen, dem Sie diese Argumente hinzufügen möchten, nicht gem. Zum Beispiel:

---
install: --no-ri --no-rdoc

Beachten Sie die installanstelle von gem.

Patrick
quelle
0

Es scheint etwas mit 1.9.2 zu tun zu haben, da rvm installiert ist. 1.8.7 nimmt die Datei / etc / gemrc auf. Am Ende habe ich ~ / .gemrc mit / etc / gemrc verknüpft

Piavlo
quelle
Ja, das ist meine aktuelle Arbeit, aber ich muss das für jeden Entwickler-Benutzer tun, der erstellt wird. Ich könnte es so machen, dass jedes Mal, wenn ein Benutzer hinzugefügt wird, um den Symlink zu kopieren, es funktioniert, aber es gefällt mir nicht. ...
Jtzero