Comment 32 for bug 145267

Revision history for this message
Neil Wilson (neil-aldur) wrote :

OK We now have code for a proposed fix for rubygems.

I've implemented an 'update-alternatives' system that creates a link to gem binaries in /usr/local/bin. It arbitrates correctly between ruby1.8 and ruby1.9 gem installations.

At the moment the first gem installed wins, ie if you install capistrano using gem1.8 and then with gem1.9, 'cap' will still call the ruby1.8 version. Please let me know if this behaviour is acceptable.

I've used the new 'operating_system.rb' override facilities in edge Rubygems to create the mechanism. I've also taken the opportunity to fix a few things I find annoying. Again I'd appreciate it if you could let me know if this works for you.

* rdoc and ri documentation is *not* installed by default. You have to ask for them.
* Executables are *always* removed on uninstall. I have no idea at all why you'd want them to remain to create an error. If you know tell me.
* 'update -system' now calls 'apt-get install rubygems{version}' automatically.

Patches incorporated upstream have been removed, and new patches for new problems added :-)

You can get the packages from the ubuntu-ruby group archive (https://edge.launchpad.net/~ubuntu-ruby/+archive). There are intrepid packages and Hardy backports. (Be warned that the hardy backports will pull in ruby1.8.7 and ruby1.9.0-2).

Code is on Github. http://github.com/NeilW/deb-rubygems/tree/master

Have a play. Let me know what you think. I'm off for a week's break now, but I'll pick up comments when I get back.