On Mon, 2007-08-01 at 18:19 +0100, Sven Panne wrote:
> For example, if I want to install Rails (ruby web-app framework), I just
> type:
> gem install rails
> It's pretty slick.
How does this work with the native packaging mechanism on your platform
(RPM, ...)? Does it work "behind it's back" (which would be bad)?
It doesn't. It is its own Ruby-specific packaging mechanism.
Let's
assume that "rails" needs "foo" and "bar" as well, which are not yet on your
box. Does "gem install" transitively get/update all dependecies of "rails"?
Well rails needs dozens of libraries, seemingly, and it can be told to
collect all dependencies. (If it isn't told one way or another, it
asks.) This is true, however, iff the dependencies are all gems
themselves. If you need a third-party library installed that's not
wrapped in a gem, you have to use your usual packaging system to get
it. (Being an Ubuntu user, I use aptitude.)
Overall, I like the gems approach. The Ruby packages for debian-alikes
are almost invariably out of date and building a lot of these Ruby
enhancements is a pain in the posterior. If I want a stable version of
a given component, I'll use aptitude (or RPM or whatever) and live with
it being out of date. If I want the latest and greatest, however, I'll
stick to the gems. Since gems can be installed and deleted just like
aptitude's packages can be (and just as cleanly) it really isn't that
hard an approach.
_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe