[Nix-dev] Ruby-gems

Pjotr Prins pjotr2008 at thebird.nl
Sun Aug 3 10:48:10 CEST 2008


On Sun, Aug 03, 2008 at 12:25:13AM +0200, Pjotr Prins wrote:
> This can not be right! 

HELP!

Ruby install gets it wrong - Python appears to do the right thing with
NIX (though I doubt eggs will work). I am not enough of a NIX guru to
fix it.

When you do:

Install ruby
Install rubygems (which should really be named ruby-gem)
gem install rake

nix-store --verify --check-contents 
checking path existence
path `/nix/store/v914ms0apfk2jbkm5kzqp4w35nbkcx1c-ruby-1.8.7-p22' was modified! expected hash `a4b66e33ee2833d2af00932469a3ce394cacdfefce27fdee19ff37500285a61d', got `788c65c808a3582923fb8345f5906996b8abc758adfb6f76ff71d097eaa60c71'

I presume this is not OK.

I guess this is trickier than the eye meets. You don't want an
external package manager to modify the store. So these 'gems' can not
be installed under /nix/store as gems don't use nix-env.

But you also don't want them on the standard path, like
/var/lib/gems, as there may be another gem installer running on the
hosting OS (Debian in, my case). 

I think the only sensible alternative is a special NIX path for this
type of effect. E.g. /var/lib/nix/gems and
/usr/lib/nix/ruby/site-config.

The *correct* way would be to modify Ruby gems to use NIX for package
management. But this may be a little hard and does not prevent other
users to try and mix in the wrong gems.

Note to all: People are hooked on gems - we can't get them off.

I need some advise.

Pj.



More information about the nix-dev mailing list