On 11/20/07, Michael G. [email protected] wrote:
I’d just never use an Ubuntu package for Ruby or RubyGems. Ever. (Why?
The upstream maintainers at Debian Don’t Get Ruby. While the situation
is better than it has been, it’s still a freaking nightmare.)
That actually made me laugh. Debian doesn’t get package managment?
It’s really quite the opposite. RubyGems started with a very poor
understanding of living in a package managed world.
Try responding to what was actually written. I said Debian maintainers
Don’t Get Ruby. And, to be honest, I question whether they do get
package management sometimes. It works well, most of the time, but
they’re completely wrong on a number of factors – mostly because in a
C/C++ binary world, you have to do some things certain ways. They’re
guilty of a lack of imagination.
In theory it currently has the necessary tools. If --prefix installs
and $GEM_HOME were properly respected there wouldn’t be a problem, but
there not!
Yes, they are.
If they were my stupid ‘update --system’ mistake wouldn’t have moved
ruby gems library from /usr to /usr/local and the gem_home from
/var/lib/rubygems to /usr/lib/ruby/gems.
Wrong. RubyGems can’t predict when some dumbass maintainer is going to
make an idiotic hardcoded changes. It’s certainly never going to
be accepted upstream that way.
Your “update --system” problem goes right back to the maintainers, not
RubyGems. At all.
RubyGems needs to work correctly no matter where Ruby is installed. It
needs to never modify files outside of --prefix (or installed defined
directories) and it needs to consistently respect $GEM_HOME.
Right. But you have to get it to know about those places – and it
does consistently respect $GEM_HOME. Just because your maintainer
was stupid enough to MODIFY THE SOURCE rather than using, you know,
ENVIRONMENT VARIABLES doesn’t make it RubyGems fault.
Your breakage was because through update --system you ended up putting
a non-bastardized version of RubyGems on your system (and it’s not
going to bastardize itself for your broken packages) and moving things
around from the broken places that the dumbass maintainer placed them.
There’s a right way and there’s a wrong way. Debian – and therefore
Ubuntu – chose the wrong way. Apple, on the other hand, chose the
right way (including telling people how to update preinstalled gems
and RubyGems itself).
-austin