So, I'm looking for an eCommerce engine for Rails. Yes, I could create the whole shopping cart and payment gateway on my own because there are tons of tutorials and general advice. However, I suspect that if I could find a full-featured engine, then someone else will have thought of -- and solved -- problems that will take me time to recognize and address.
So I came across Spree eCommerce.
However, I haven't updated Rails on my system in a while and Spree requires Rails 2.3.2. So I start by doing a
sudo gem update rails
which gets me to Rails 2.3.4. However, Spree wants 2.3.2 ONLY. So I remove Rails 2.3.4 and install 2.3.2. Then I install Spree according to the instructions. Then I try to create my first Spree application with:
Unfortunately, I got this error:
OK. No problem. Need to update hoe
/usr/local/lib/ruby/site_ruby/1.8/rubygems.rb:578:in `report_activate_error': RubyGem version error: hoe(1.5.3 not >= 1.8.0) (Gem::LoadError)
~/src:sudo gem update hoe
Updating installed gems
ERROR: While executing gem ... (Gem::InstallError)
hoe requires RubyGems version >= 1.3.1
OK. No problem. Need to update gem. After all,
So I do the following:
OK, this may be a problem. Referring to the rubygems documentation, one needs to do the following:
~/src:sudo gem update --system
Nothing to update
However, this failed with:
gem install rubygems-update
Mark Howe has a helpful blog on the matter.
/usr/local/lib/ruby/site_ruby/1.8/rubygems.rb:578:in `report_activate_error': Could not find RubyGem session (>= 0) (Gem::LoadError)
from /usr/local/lib/ruby/site_ruby/1.8/rubygems.rb:134:in `activate'
from /usr/local/lib/ruby/site_ruby/1.8/rubygems.rb:158:in `activate'
from /usr/local/lib/ruby/site_ruby/1.8/rubygems.rb:157:in `each'
from /usr/local/lib/ruby/site_ruby/1.8/rubygems.rb:157:in `activate'
from /usr/local/lib/ruby/site_ruby/1.8/rubygems.rb:49:in `gem'
In the end, the trick was to uninstall the partly installed rubygems 1.3.5, install rubygems 1.3.4, then do the
And all was well. I was able to update hoe and then successfully run