I was imprecise here; what I meant was a .tar.gz + standard setup.rb.
And I'm surprised that you are surprised; I've been hearing grumbling
from various packagers, not just RPA. This is one of the things that
has been having me frustrated.
I'd like to hear the grumbling. Specifically, it's important to hear
of specific scenarios where something is created as a RubyGem and it
_hurt_ the ability to repackage it. As I said below, specifics are
important. "grumbling" doesn't help if we don't hear what people are
grumbling about. Even pointing out areas that might be problems isn't
nearly as valuable as pointing out a specific scenario where something
was made difficult by RubyGems.
That being said, the RubyGems developers aren't encouraging people to
only create gems. But, we _are_ encouraging everyone to make gems for
everything. With tools like Rake, it's dead easy (for most projects)
to generate .tar.gz and .gem files at the same time.
We also want to continue to hear about issues people have in making
gems--where our current system doesn't do everything it needs to for
apps and libs with specific needs. We've gotten a lot of great
feedback from the many users who have been using the system so far,
and I expect that as we see an increasing number of packages, we'll
learn that much more and make RubyGems better and better.
I see operating system specific packaging as extremely important, too.
There are a lot of people that just won't use Ruby programs if they
cannot be installed through the native operating system packages - and
there are a lot of packaging gruops that will not accept a
single-directory solution a la RubyGems. This may actually be most
groups - it is at least most groups that I know about.
In this scenario, as I imagine for RPA eventually, it would probably
work best to auto-generate (at least the skeleton for) native packages
out of gems. People in this category won't want to use "gem install
blah", but I still believe that installation and package creation can
be made easier by starting with a gem file. RubyGems has install-time
and run-time behavior. After you've extracted a gem, you can
literally just point to it directly by changing your $: somehow and
completely forego "require_gem", etc. "gem install" could be an early
step in a semi-atomated .deb or .rpm generator, for example.
I'm not sure if we need changes to the Ruby base or not - but
attempting to do the package conversion tools should help us find out.
RPA are working on exports to different packaging formats (we've got
RPM, and are working on.deb and FreeBSD ports at the moment - or
bitserf and Mauricio is, with feedback, help and adoptions from the
rest of us).
And converted to other packaging systems, including respecting their
policies. I believe this is a very important goal - something that
may be significant enough to make or break Ruby as a platform (though
I'm not sure if it is or isn't.)
If we can make this possible, it would be great - I think it could
help raise adoption of Ruby a lot. Conversely, if we make this
harder, we lower the adoption.
This is sort of orthogonal to the use of the "native Ruby" packaging
systems themselves.
Somewhat orthogonal in terms of the goal, but not very much so technically.
To summarize, I have a request: If anyone is trying to repackage
rubygems for any other system--native or not (RPA)--please keep the
feedback coming. We want to know if it was hard or even if it was
easy. Without hearing your specific stories, it's not going to get
better much faster. The rubygems-developers list on RubyForge is the
best place to send this kind of thing.
Thanks,
Chad