Looking for a good RPM spec for Ruby

Hi all,

I am working on a RubyWorks project [http://rubyforge.org/projects/rubyworks/\] which is essentially a shrink-wrapped package for hosting Rails applications on RHEL.

Internally, it's a Yum repository that contains RPMs for everything needed to run a Rails app, plus configuration files that tie all these pieces together. So that you can do "yum install rubyworks", then drop your application into some place in the file system and - bingo - it's magically hosted.

We need a decent RPM spec for Ruby, to adopt for our needs. Something using a buildroot, correct dependency versions, documentation paths etc etc. There are as many Ruby RPM specifications as there are Linux distros, it seems. I'm looking for a recommendation. Thanks in advance.

Best regards, Alexey Verkhovsky

doesn't RHEL include a ruby RPM?

http://ftp.redhat.com/pub/redhat/linux/enterprise/5Server/en/os/SRPMS/ruby-1.8.5-5.el5.src.rpm

If you can't use that ruby, you should be able to start with their .spec file.

Thanks, Michael.

Yes, it does, but the one available for RHEL 4 (which is what most people have) is downright ancient (1.8.1). In fact, even RHEL 5 contains the original 1.8.5 release and a few patches, the latest of which is dated last December. With RubyWorks we intend to stay much closer to the official Ruby releases. So, we will need to package our own stuff.

As for the RHEL's RPM spec itself, I feel somewhat uneasy about splitting Ruby into multiple packages (ruby, lib-ruby, irb, etc, etc, etc). What's that for?

Yes, it does, but the one available for RHEL 4 (which is what most people have) is downright ancient (1.8.1). In fact, even RHEL 5 contains the original 1.8.5 release and a few patches, the latest of which is dated last December. With RubyWorks we intend to stay much closer to the official Ruby releases. So, we will need to package our own stuff.

As for the RHEL's RPM spec itself, I feel somewhat uneasy about splitting Ruby into multiple packages (ruby, lib-ruby, irb, etc, etc, etc). What's that for?

No idea to be honest, but I'd expect that it's for some internal packaging reason. The biggest downside with repackaging some stuff is going to be managing conflicts. Like the bad old days of ximian gnome VS redhat gnome.

Either way, good luck with the project :)..

Dear list, sorry for an off-topic. Please send further replies to me directly.

No idea to be honest, but I'd expect that it's for some internal packaging reason. The biggest downside with repackaging some stuff is going to be managing conflicts. Like the bad old days of ximian gnome VS redhat gnome.

Sadly, we are headed down that same path so far. RedHat Ruby vs RubyWorks Ruby.

I looked at all kinds of ways to resolve this conflict, to no avail. Every alternative I investigated creates more problems than it solves. E.g., giving "our" Ruby a different name solves the problem of conflicting package names, but creates a much bigger problem of conflicting executables.

Actually, it's not all that bad in practice (as long as our version numbers are bigger than RedHat's), but certainly far from ideal.

I'd love to simply depend on RedHat RPMs. Maybe one day they gets their stuff together on this subject... :frowning: