Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 435874 - rubygems ebuild switch to installing in /usr/local causes problems
Summary: rubygems ebuild switch to installing in /usr/local causes problems
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Gentoo Ruby Team
Depends on:
Reported: 2012-09-22 16:03 UTC by Robert Sharp
Modified: 2012-10-25 07:12 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Note You need to log in before you can comment on or make changes to this bug.
Description Robert Sharp 2012-09-22 16:03:51 UTC
It appears that recent rubygems ebuilds set the install directory and bin directory to /usr/local instead of /usr (e.g. 1.8.24). This creates problems if previous gems were installed in /usr as well as being undesirable on systems where /usr/local is used "locally". 

Problems encountered so far include 'require' searches consuming 100% CPU and taking several minutes to complete, 'gem clean' not working because it thinks gems that 'gem list' shows are not installed. It seems the only way to restore the old configuration is to put --bindir and --install-dir into /etc/gemrc ( and not in any other .gemrc), uninstall everything and start again. Also, cos clean ignores --install-dir you may also have to set GEM_HOME to the old location as well.

What would be good is a USE flag to set rubygems to /usr instead of /usr/local - or at least make it obvious in the ebuild where this is set so someone can customise it - I could not work it out at all.

I believe this change was made because someone raised a bug about rubygems over-writing things in /usr/bin. Would have been better to include a check in rubygems itself rather than work-around the problem by changing everything to /usr/local?
Comment 1 Hans de Graaff gentoo-dev 2012-10-25 07:12:05 UTC
I'm sorry that you've had problems with the move of installed gems from /usr to /usr/local, but this is not something that we will change or make configurable. The current situation fits with the overall idea that /usr should be managed by Gentoo, and /usr/local should be managed by the user.

It also avoids problems where gems could be installed by both rubygems and Gentoo, leading to very nasty and hard to debug problems. By clearly separating Gentoo-managed and user-managed code we avoid this problem.

I'm sorry that you had a rough upgrade path. We have had this configuration for a long time already in unstable (also for older rubygems versions) and we never got bug reports about it, so we were not aware of any remaining problems.

At this point, with the new rubygems already stable for some time, I'm not sure what we can do to fix issues here anymore because the current state won't be fully clear anymore, so I'm closing this CANTFIX.