Yep. IMHO the requirements of the usual LAMP user of a Debian or other
packaged Linux distro are not the same as the typical rails developer.
The former usually wants a fairly stable platform, the latter wants
to keep up with the rapidly changing universe of Ruby, Rails, gems,
...
Ruby developers are used to, and a lot expect, the ability to quickly
upgrade, and even deal with multiple versions on the same box for
different applications. Having multiple versions of ruby gems
installed has long been a feature of gems. Rails developers use
techniques like unpacking gems and rails itself into a vendor
directory of the app to allow different apps with different
requirements as to versions and sets of gems to run on the same box.
And today the state of the art is tools like RVM which allow multiple
versions and implementations of Ruby to coexist and be selectable.
You can have various versions of MRI (1.8.6, 1.8.7, 1.9.1) along with
Rubinius, JRuby, MagLev, (and on a Mac MacRuby).
The Debian packaging system is really built around having one version
of a given package installed at a time. The maintainers of ruby
packages for debian, occasionally take new versions and repackage
them. Waiting for that process is unacceptable for a lot of Ruby
developers. Also the repackaging sometimes takes some interesting
twists, at one point rails got repackaged, and the rails binary was
re-written as a bash shell script! I don't know if that's still the
case because...
Early on in my use of Ruby, I was advised to just say no to the
packaged versions and build from source, On a Debian system just make
sure to install it somewhere which the packaging system doesn't muck
with, like /user/local/...
And I pretty much do the same thing now that most of my development is on OS X.
···
On Wed, Feb 10, 2010 at 11:59 AM, Thomas Lucero <tllucero@stardevsoft.com> wrote:
Known problem. Both Debian apt/aptitude/Synaptic and RubyGems keep track
of dependencies. However, they don't play well together.
From http://blog.phusion.nl Installing Ruby/Rails software on Debian and
Ubuntu Linux distributions has been less than ideal until now. Ruby has
a package manager called RubyGems, but Debian-based distributions have
their own package manager, namely Apt, which manages the entire system
and is preferred by most Debian users. RubyGems does not integrate well
with Apt and cannot handle native Debian package dependencies. But on
the other hand, Ruby software provided through the current Debian Apt
repositories are not always up-to-date, e.g. the latest Rails version is
often not available.
--
Rick DeNatale
Blog: http://talklikeaduck.denhaven2.com/
Twitter: http://twitter.com/RickDeNatale
WWR: http://www.workingwithrails.com/person/9021-rick-denatale
LinkedIn: http://www.linkedin.com/in/rickdenatale