views:

226

answers:

2

Ok, so I decided I'd be cool and try to use Rails3 that's in beta. Then, things were getting hard to manage so I got rvm. I installed ruby 1.9.2-head in rvm and things were working, and then a computer restart later rails wouldn't start up. So I figured I'd just try running the system ruby and start rails in it. same error. Then, I uninstalled rails3 and got rails: no such file or directory type errors..

So now I'm royally screwed because rails2 is still installed but will not uninstall because of invisible dependencies, along with a lot of other random gems. How do I completely clear out all ruby gems and such so I can start anew?

A: 

You say that you already got Rails 2 and afterwards installed rvm. Try if you can remove Ruby and Rails using the package manager of your system (yum, apt, ...)

The error you got is most likely the result a link in some general place which still exists, but is pointing to the real installation directory which no longer exists.

For example: /usr/bin/ruby exists and is pointing to /usr/local/lib/ruby/1.9.2/bin/ruby which no longer exists.

Afterwards manually clean out any Ruby and Rails related paths in /usr and its subdirectories.

DR
Rails was installed with gems though. and I've already reinstalled ruby. Everything else ruby related is installed through gems
Earlz
+1  A: 

I've recently had to so just this. I had built up alot of cruft with my system installed ruby and gems and wanted to clean all that out and move everything over to run under rvm for various projects.

1. Clean up old and busted

First thing I did, before messing with rvm (or run rvm system to get back to the system ruby), was to remove all my gems:

gem list | cut -d" " -f1 | xargs gem uninstall -aIx

WARNING: this will uninstall all ruby gems. If you installed as root you may want to switch to root and run this.

2. Install new hotness

Now you can run gem list to see what is left.

Time to install rvm, I recomend blowing away your current install and reinstall fresh:

rm -rf $HOME/.rvm
bash < <( curl http://rvm.beginrescueend.com/releases/rvm-install-head )

Now the real trick is to use gemsets to install rails 3, and this is easy if you follow Waynee Seguin's gist:

rvm update --head
rvm install 1.8.7
rvm --create use 1.8.7@rails3
curl -L http://rvm.beginrescueend.com/gemsets/rails3b3.gems -o rails3b3.gems 
rvm gemset import rails3b3.gems

One difference is I use 1.8.7 since I have had issues with 1.9.2-head and RSpec, but 1.8.7 has been smooth.

csexton
Ok, you showed me what I asked and I now have all gems and such deleted. My problem now is how to install 1.8.7 in RVM. I get a compile error for `ossl.c:118:1: error: expected ‘)’ before ‘*’ token`
Earlz
I accepted this because it answered my question, how to completely wipe rvm and gems. I'll just stick with Rails2 until Rails3 is officially released and stable though :)
Earlz
never noticed you wrote "rails2" I must of subconsciously replaced that. If you are still having problems building with rvm check out the [troubleshooting page](http://rvm.beginrescueend.com/support/troubleshooting/), if that doesn't work Wayne is always on IRC in #rvm
csexton