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?

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" 

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


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

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.


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


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
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.