Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Impossible to install single-user version of RVM

Tags:

ruby

rvm

Question is very simple:

I cannot install RVM (single-user installation), as if I follow the instructions on the RVM website, that is:

$ curl -L https://get.rvm.io | bash -s stable 

I get a permission denied error at line 360 of the installation script file (the line that starts with echo):

# Perform the actual installation, first we obtain the source using whichever
# means was specified, if any. Defaults to head.
  case "${version}" in  
    (head) 
       echo "${branch}" > "$rvm_path/RELEASE"    
       install_head ${branch:-master} || exit $?  
  ;;

Here is the error message:

olivier@~$ curl -L https://get.rvm.io | bash -s stable

bash: line 360: /usr/local/rvm/RELEASE: Permission denied

If I add "sudo" before "bash" in the command above, it works fine, but it is then the multi-user install ...

like image 382
citraL Avatar asked Jun 28 '12 10:06

citraL


3 Answers

Indeed, I solved this by uninstalling old versions of RVM: sudo rvm implode and then deleting the file /etc/rvmrc. Once done, I could install the single-user version and everything worked fine!

Sorry Remear, I wanted to edit your answer or complete it via my comment but I could not (comment can only be edited within 5 minutes...at least I upvoted...).

like image 156
citraL Avatar answered Oct 19 '22 21:10

citraL


Once you have a system-wide install, you can't run a single-user install as it will detect your system-wide install first and try to update it.

But it is possible to have a root install & then user install by specifying the installation path :

curl -sSL https://get.rvm.io | bash -s stable --path $HOME/.rvm

You will also have to set the single-user install path in your user path manually as RVM does not create it when you already have a system-wide install (not really an intended use) :

# .bashrc
PATH=$PATH:$HOME/.rvm/bin # Add RVM to PATH for scripting

And also load your user rvm :

# .bash_profile
[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm" # Load RVM into a shell session *as a function*
like image 44
j15e Avatar answered Oct 19 '22 21:10

j15e


Are you setting rvm_path in ~/.rvmrc, or in /etc/rvmrc, or in one of your bash scripts? I'd recommend removing both of those files as well as ~/.rvm and then try installing rvm again WITHOUT sudo.

like image 26
Remear Avatar answered Oct 19 '22 20:10

Remear