# Fwd: gembundles

**URL:** <https://www.ruby-forum.com/t/fwd-gembundles/89776>\
**Category:** Ruby\
**Created:** [March 22, 2007, 6:08pm UTC](https://www.ruby-forum.com/t/fwd-gembundles/89776 "2007-03-22T18:08:22Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![casper\_the\_ghost](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/c/58956e/32.png) [@casper\_the\_ghost](https://www.ruby-forum.com/u/casper_the_ghost)\
**Post date:** [March 22, 2007, 6:08pm UTC](https://www.ruby-forum.com/t/fwd-gembundles/89776/1 "2007-03-22T18:08:22Z")

</div>

---------- Forwarded message ----------  
From: TRANS [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)  
Date: Mar 20, 2007 9:39 PM  
Subject: gembundles  
To: removed\_email\_address@domain.invalid

Hi–

A few days back I brought up some ideas for dealing with  
multi-packages. This evening I sat down and put to together a little  
tool to handle just that: gembundle.

The ideas is simple. Lets say I have a couple of gems: hello\_world.gem  
and adios\_world.gem.

% gembundle build tryme hello\_world-1.0.0.gem adios\_world-1.0.0.gem

This creates a tar.gz file called, tryme.gembundle which simply  
contains the two listed gems, Then…

% gembundle install tryme.gembundle  
Successfully installed hello\_world, version 1.0.0  
Successfully installed adios\_world, version 1.0.0

The intsall command just copies the bundle to a temp location, unpacks  
it and installs the contained gems (with the -y option).

That’s it.

Of course, my script is just a quick prototype --I’m shelling out for  
all the tar and gem stuff. And it doesn’t support some features like  
remote access for grabbing gems to bundle. But hopefully it doesn’t  
matter b/c I wanted to see if others would approve of this  
functionality being incorporated into RubyGems itself. It’s pretty  
straightforward. It would just mean adding a “bundle” command to the  
gem CLI and allowing the installer to recognize a bundle vs a regular  
gem,such that ‘.gem’ could still be used instead ‘.gembundle’.

So what is it good for? It gives large application developers  
breathing room to use vendor gems more freely. Per my explanation in  
my last post, installing a gem that has many dependencies can be  
off-putting. Not only does the administrator have to consider each  
dependency, but ensuring the right versions of each can be daunting as  
well. Gembundles take care these concerns. And since a bundle simply  
contains regular gems it works seamlessly with the current design.

What do you think?

Thanks,  
T.

---

<div class="post-metadata">

**Author:** ![casper\_the\_ghost](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/c/58956e/32.png) [@casper\_the\_ghost](https://www.ruby-forum.com/u/casper_the_ghost)\
**Post date:** [March 22, 2007, 7:44pm UTC](https://www.ruby-forum.com/t/fwd-gembundles/89776/2 "2007-03-22T19:44:06Z")

</div>

TRANS wrote:  
[SNIP: Good Idea]

> What do you think?

Great! I’d love to have such a feature in gem, I’d even be happy with a  
3rd party solution.

–  
Phillip “CynicalRyan” Gawlowski

Rule of Open-Source Programming #37:

Duplicate effort is inevitable. Live with it.

---

<div class="post-metadata">

**Author:** ![casper\_the\_ghost](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/c/58956e/32.png) [@casper\_the\_ghost](https://www.ruby-forum.com/u/casper_the_ghost)\
**Post date:** [March 23, 2007, 8:14am UTC](https://www.ruby-forum.com/t/fwd-gembundles/89776/3 "2007-03-23T08:14:00Z")

</div>

On Mar 22, 2:42 pm, Phillip G. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)  
wrote:

> TRANS wrote:
> 
> [SNIP: Good Idea]
> 
> > What do you think?
> 
> Great! I’d love to have such a feature in gem, I’d even be happy with a  
> 3rd party solution.

I can do that. I’ll clean it up and let you know.

T.
