In addition to @tadman's answer I removed the wrappers in /usr/local/bin
as well as the file /etc/profile.d/rvm
.
The wrappers include:
erb
gem
irb
rake
rdoc
ri
ruby
testrb
A lot of people do a common mistake of thinking that 'rvm implode' does it . You need to delete all traces of any .rm files . Also , it will take some manual deletions from root . Make sure , it gets deleted and also all the ruby versions u installed using it .
I am running Ubuntu 19.04 and followed all the instructions above and then some. Finally, what worked for me was to run
sudo apt autoremove rvm
and now when I try and reinstall RVM it's actually gone. RVM is invasive, to say the least.
If you're still getting a env: ruby_executable_hooks: No such file or directory
when calling some Ruby package, that means RVM left a little gift for you in your $PATH
.
Run the following to find the offending scripts:
grep '#!/usr/bin/env ruby_executable_hooks' /usr/local/bin/*
Then rm
all the matches. You'll have to reinstall all of those libraries with an RVM-free gem
, of course.
Note that if you installed RVM via apt-get, you have to run some further steps than rvm implode
or apt-get remove ruby-rvm
to get it to really uninstall.
See "Installing RVM on Ubuntu".
Remove the RVM load script from /.bash_rc or /.zsh_rc, then use:
rm -rf /.rvm
Or:
rvm implode
If the other answers don’t remove RVM throughly enough for you, RVM’s Troubleshooting page contains this section:
How do I completely clean out all traces of RVM from my system, including for system wide installs?
Here is a custom script which we name as
cleanout-rvm
. While you can definitely uservm implode
as a regular user orrvmsudo rvm implode
for a system wide install, this script is useful as it steps completely outside of RVM and cleans out RVM without using RVM itself, leaving no traces.#!/bin/bash /usr/bin/sudo rm -rf $HOME/.rvm $HOME/.rvmrc /etc/rvmrc /etc/profile.d/rvm.sh /usr/local/rvm /usr/local/bin/rvm /usr/bin/sudo /usr/sbin/groupdel rvm /bin/echo "RVM is removed. Please check all .bashrc|.bash_profile|.profile|.zshrc for RVM source lines and delete or comment out if this was a Per-User installation."
When using implode
and you see:
Psychologist intervened, cancelling implosion, crisis avoided :)
Then you may want to use --force
rvm implode --force
Then remove RVM from the following locations:
rm -rf /usr/local/rvm
sudo rm /etc/profile.d/rvm.sh
sudo rm /etc/rvmrc
sudo rm ~/.rvmrc
Check the following files and remove or comment out references to RVM:
~/.bashrc
~/.bash_profile
~/.profile
~/.zshrc
~/.zlogin
Comment-out/remove the following lines from /etc/profile:
source /etc/profile.d/sm.sh
source /etc/profile.d/rvm.sh
/etc/profile is a read-only file so use:
sudo vim /etc/profile
And after making the change write using a bang!
:w!
Finally re-login/restart your terminal.
Per RVM's troubleshooting documentation "How do I completely clean out all traces of RVM from my system, including for system wide installs?":
Here is a custom script which we name as 'cleanout-rvm'. While you can definitely use
rvm implode
as a regular user orrvmsudo rvm implode
for a system wide install, this script is useful as it steps completely outside of RVM and cleans out RVM without using RVM itself, leaving no traces.#!/bin/bash /usr/bin/sudo rm -rf $HOME/.rvm $HOME/.rvmrc /etc/rvmrc /etc/profile.d/rvm.sh /usr/local/rvm /usr/local/bin/rvm /usr/bin/sudo /usr/sbin/groupdel rvm /bin/echo "RVM is removed. Please check all .bashrc|.bash_profile|.profile|.zshrc for RVM source lines and delete or comment out if this was a Per-User installation."
For other shell newbies trying to fix the PATH variable
After following instructions in accepted answer, check and modify your PATH variable if necessary :
env | grep PATH
if you see "rvm" anywhere, you need to figure out where you are setting PATH and modify. I was setting it in 3 files - so check all the following files:
vim .bashrc
Delete the lines in the file referencing rvm using the dd command. :wq to save and exit.
source .bashrc
to "reload"
Repeat this process (starting with the vim command) for .profile and .bash_profile
Run:
rvm implode
Now you need to uninstall the RVM gem using:
gem uninstall rvm
Check if there are any remaining RVM files in your home directory, if yes remove them.
Go to the home directory and list all hidden files:
ls -a
rm .rvm
rm .rvmrc
Source: Stackoverflow.com