We got some feedback on this topic from Jay Edwards and team @ Twitter. 
(Thanks Brian for the link-up).

<Comment0>
Frankly, unless you've got the resources and desire to maintain current 
Indiana packages for all available gems, I don't see that it makes much 
sense to try and have a non-gem rails installation. People are going to 
install what they need -- which means that people will be installing 
gems. I think it's prudent to realize that if you have a non-gem rails, 
people are still going to try and install ruby gems and do whatever they 
need to do to make it work. IMO, it's much easier to just say "use 
gems". There's also the case where heavy ruby shops are packaging their 
internal software as gems.

Now, you could do something like dpkg-perl which is a Debian package 
that trivially turns perl modules into debian packages. So, you could go 
with a Indiana packages for rails and whatever other gems you feel are 
important, and provide something like indiana-gem-pkg. You provide it 
with the name of a gem, it downloads it from a gem repo, unpackages it, 
repackages it as an Indiana package and then installs it.
</Comment0>

<Comment1>

    Would
    you suggest that the gem file s be stored in the gem repository so as to
    be reusable by rubygems . . . or would this be a different installation?


I asked around the office. The consensus was that even if some form of 
vendor packaged gems are supplied, they should be visible to ruby gems 
-- that way if someone wants to "override" a packaged gem with a plain 
rubygem, it wouldn't be a problem. Here's a quote:

"the bottom line is that if they're going to do their own package 
management, it should be based off of the upstream package plus patches, 
and should not conflict with gems.
  i.e., if gems are installed, they override the system package. period."

</Comment1>


<Comment2>

     > Now, you could do something like dpkg-perl which is a Debian package
     > that trivially turns perl modules into debian packages. So, you could
     > go with a Indiana packages for rails and whatever other gems you feel
     > are important, and provide something like indiana-gem-pkg. You
    provide
     > it with the name of a gem, it downloads it from a gem repo,
    unpackages
     > it, repackages it as an Indiana package and then installs it.


    You mean a invocation like "indiana-gem-pkg install rails"(or maybe
    even "pkg install rails") would then proceed to install Rails?  


Exactly. Use the existing global gem repositories, download the gem, 
extract it, apply any desired patches, automatically repackage it as an 
Indiana package, and install it as a system package. Or something very 
similar.
</Comment2>



Dick Davies wrote:
> On Fri, Feb 22, 2008 at 3:31 PM, Prashant Srinivasan
> <Prashant.Srinivasan at sun.com> wrote:
>
>   
>>  Jyri Virkki wrote:
>>  > Prashant Srinivasan wrote:
>>     
>
>   
>>  > Debian seems to have achieved this so no reason OpenSolaris can't.
>>  > gem-installed content goes under /var, package-installed content goes
>>  > under /usr and they seem to coexist ok (I've played a fair amount
>>  > with gem vs. packages on debian, but only at a shallow level. I urge
>>  > you to experiment with it in more depth).
>>     
>
>   
>>  Well, the Debian position is rather strong.  They don't believe that the
>>  gem format is ideal since it is not FHS compliant.  They also disagree
>>  with the concept of using "require_gem".  So, if you're using Debian,
>>  it's apt-get all the way, or rubygems all the way.
>>     
>
> Using ruby (and rails) on Debian is a massive pain for me and a lot of
> other users.
> They've been quite insistent that they know what Ruby developers want
> and that apt is
> 'better than gems - see looong bunfights on ruby-talk mailing list/newsgroups.
>
> Debian IMO is a shining example of how NOT to handle Ruby packages, for all 
> the
> reasons you listed in your mail.
>
> In a nutshell: it's a lot more work for you, and developers will curse
> you for it.
>
>   


-- 
Prashant Srinivasan
F/OSS Enthusiast
Sun Microsystems, Inc.
http://blogs.sun.com/prashant
GnuPG key: http://pgp.mit.edu:11371/pks/lookup?op=get&search=0x82FBDE5A


Reply via email to