When writing an ebuild for sup-0.1, installing from a gem, I ran into the problem that the sup gem requires the ncurses-ruby *gem* directly. Since portage installs ncurses-ruby from the tarball, the gem isn't found, and installation fails. According to ruby devs Hans de Graaff & Richard Brown this could be worked around by updating the eclass to pretend that we have the gem, even if we installed from the tarball. Reproducible: Always
There is a gem for ncurses-ruby-0.9.1 that fulfills the dependency, but there is no ebuild. 1.1 does not have a gem available at the moment.
This needs to be fixed in any case since we have some packages for which we can't install the gem in any case (e.g. RMagick).
The solution we are looking at is to provide a function in ruby.eclass which will generate a fake gemspec with just enough information (hopefully only name and version) to allow rubygems to satisfy the depedency. The reason for doing this is that not all source distributions have a proper or working gemspec file even if they are also released as a gem.
+1 on spitting out our own gemspec.
(on my agenda for ruby2.eclass, btw)
ruby-fakegem.eclass which I added to the tree today supports this.