2013-04-22 4 views
1

내 현재 환경 (회사 프록시 포함)에서 CURL 또는 WGET을 사용하여 RVM을 설치할 수 없습니다. 이 유틸리티없이 소스에서 RVM을 설치하는 다른 방법이 있습니까? 내가 한 모든 웹 검색은 '컬'방식으로 반환됩니다.Linux CURL을 사용하지 않고 RVM 설치

아이디어가 있으십니까?

+0

내 경험에 대한 단락을 추가했습니다. /.sh stable --rails --autolibs = enabled # 또는 --ruby = 1.9.3'이지만 스크립트 내부에서 여전히 컬이 필요하거나 "RVM '컬 (curl)'이 필요합니다. '컬 (curl)'을 먼저 설치하고 다시 시도하십시오. " (스크립트를 보면서) : ( – bernabas

답변

2

수정 RVM 스크립트는 좋은 생각이 아니다

... 잠을하려고 내가 너희를 작성하지 않고 눈이 닫혀 얻을 수없는 동안 내가/당신의 질문에 대한 내 대답을 생각했다 또 다른 대답. rvm 설치 스크립트를 해킹하는 것은 정말로 당신이해야하는 것이 아닙니다. Rvm은 모든 곳에 컬을 사용합니다 (설치, 루비 다운로드, 업데이트 ...). 그리고 보석과 같이 더 많은 것들을 다운로드해야합니다. 모든 스크립트에서 모든 컬 - 콜을 교체하는 것은 유지 보수 할 수 없습니다.

제안 된 솔루션은

RVM에 대한 좋은 점은, 그 저장 ~/.rvm 디렉토리에있는 모든 데이터입니다.이것을 고려하여 원격 컴퓨터 (또는 VM)에 과 비슷한(동일한 OS, 동일한 OS 버전, 동일한 라이브러리) 인 rvm을 개발 컴퓨터에 설치할 수 있습니다. 필요한 모든 루비, 보석 세트 및 보석을 설치하십시오. 그런 다음 압축 된 ~/.rvm 디렉토리를 개발 컴퓨터로 이동하고 ~/.rvm의 압축을 풉니 다.

은 떠들썩한 파티를로드하는 동안 소스 RVM에

echo "source $HOME/.rvm/scripts/rvm" >> ~/.bash_profile 

을하는 것을 잊지 마십시오.

보석이나 루비 버전을 업데이트하거나 설치해야하는 경우 원격 컴퓨터에서 비즈니스를하고 ~/.rvm을 다시 복사하십시오.

이 설정 비슷한 사악한 회사 네트워크에있는 생산 환경을 위해 지금 ¬2 년 (그것이 우리의 CI 서버와 자동 있지만) 내가이 설정을 사용

내 경험. 보석/루비를 바꾸는 것은 어렵지만 인터넷 연결 없이도 작동합니다.

편집 :이 설정은`https://raw.github.com/wayneeseguin/rvm/master/binscripts/rvm-installer를 다운로드하여 원하는 실행하려고 할 수

+0

) 멋진 솔루션을 가져 주셔서 감사합니다. – sadmicrowave

0

rvm 설치 스크립트 here이 있습니다. 할 수 있습니다

  1. 다운로드 그것은
  2. 컬는
  3. 이제 수동으로 다운로드 한 파일을 참조하는 스크립트를 실행 사용되는 부분을 수정

1. 다운로드

this file에서 /tmp/rvm-installer으로 다운로드하십시오. 이제 /tmp/rvm-1.19.6.tar.gz

2에 rvm.tar.gz 파일을 다운로드하는 줄에 파일

을 수정 (148)는 기능 fetch_version 시작합니다. 다음의 함수로 교체 다음 get_and_unpack 함수가 호출된다 (install_release 내의) 라인 161

fetch_version() 
{ 
    echo '1.19.6' # the current version, as of writing this 
} 

. 과 함수 호출을 대체 (get_and_unpack 내의) 라인 212

get_and_unpack \ 
    /tmp/rvm-${_version}.tar.gz \ 
    rvm-${_version}.tar.gz 

교체

__rvm_curl ${_url} -o ${rvm_archives_path}/${_file} || 

와 :

mv ${_url} ${rvm_archives_path}/${_file} || 

3. 마지막 RVM에게

cd /tmp 
cat rvm-installer | bash -s -- --version latest --autolibs=enabled 
,174,515 설치

면책 조항 : 이것은 여전히 ​​해킹입니다. 그것은 rvm을 설치하지만, 나는 (여기 rvm은 다시 컬을 사용함) 업데이트에 대해 모른다. 행운을 빕니다 :)