# Install vs. zip

**URL:** <https://www.ruby-forum.com/t/install-vs-zip/81369>\
**Category:** Rails\
**Created:** [January 8, 2007, 3:28pm UTC](https://www.ruby-forum.com/t/install-vs-zip/81369 "2007-01-08T15:28:47Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![dtdtdt](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/d/b5ac83/32.png) [@dtdtdt](https://www.ruby-forum.com/u/dtdtdt)\
**Post date:** [January 8, 2007, 3:28pm UTC](https://www.ruby-forum.com/t/install-vs-zip/81369/1 "2007-01-08T15:28:47Z")

</div>

Can anyone explain me one bitter fact of Ruby: you always need two  
things - Internet connection and installation? Why is it so hard to  
make something the guys at IBM made with Eclipse or something that  
Cygwin partially made with their UNIX on Windows or such projects? I  
will stick to Eclipse, which really rocks.

Is it so hard to make a zip file (like Instant Rails does) for every  
part of the structure. For example, Instant Rails has MySQL, while I  
want PostgreSQL. It uses Apache, while I want lighttpd. Or I want  
version X instead of version Y for any of these? Currently, I have to  
use the installer of all the above and use Ruby Gems and whatever?

Why? For example, I just downloaded Ruby for cygwin, then I cleared it  
(moved everything from /usr/local to /ruby), then I donwloaded Ruby  
Gems and downloaded everything for Rails. Ok, then I deleted everything  
and reinstalled everything using the cached gems and it worked. No  
network connection, nothing. So why is it so hard to do it as a zip  
file? Make ruby.zip, gems.zip and rails.zip which really contains what  
I have right now on my machine. Of course, make it automatically when  
the installer is made, so the latest files go to the zip.

Really, for me all the automatics over which you don’t have any control  
(gems and apt-get come to my mind right now) is really bugging me. Yes,  
I am new to these waters, so I am really not in the position to tell  
anything to the people that made all this stuff, but one thing comes to  
my mind. Ruby and Rails are really cool stuff and all the buzz for  
“convention over configuration” really fits into this story I am  
telling - why not make everything has its place where it should be  
installed and just unzip? I don’t have anything against automatic  
updates - in fact, they are cool - but I have much against automatic  
(network) installs being the only option. Especially if there is no  
need for that (I made a working non-install copy of ruby, gems, rails,  
not so much trouble when you know how to do it, but until that  
moment…).

Please tell me what you think, your experiences and finally whether you  
would prefer (or at least want) this or not. I would especially like  
the replies from people that are used to work with e.g. Eclipse or  
people that like to compile the code under Linux.

---

<div class="post-metadata">

**Author:** ![dtdtdt](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/d/b5ac83/32.png) [@dtdtdt](https://www.ruby-forum.com/u/dtdtdt)\
**Post date:** [January 8, 2007, 5:47pm UTC](https://www.ruby-forum.com/t/install-vs-zip/81369/2 "2007-01-08T17:47:32Z")

</div>

dt wrote:

> Please tell me what you think, your experiences and finally whether you  
> would prefer (or at least want) this or not. I would especially like  
> the replies from people that are used to work with e.g. Eclipse or  
> people that like to compile the code under Linux.

What platform are you working on Linux or Windows?

Every platform Windows or Linux has conventions that dictate how  
applications are distributed and installed. Why fight them? You life  
will be much simpler if you don’t.

You complain specifically about gems and apt-get so I’m going to assume  
you are using some form of debian based Linux. You are not required to  
have internet access to use the standard tools in a standard way.

You can install standard distribution components directly, not by using  
apt-get but by instead by putting the appropriate \*.deb files on a disk  
and installing them with something like ‘dpkg -i \*.deb’. The same goes  
for using gems you can install those with ‘gem install gemfilename.gem’.

---

<div class="post-metadata">

**Author:** ![dtdtdt](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/d/b5ac83/32.png) [@dtdtdt](https://www.ruby-forum.com/u/dtdtdt)\
**Post date:** [January 8, 2007, 7:44pm UTC](https://www.ruby-forum.com/t/install-vs-zip/81369/3 "2007-01-08T19:44:32Z")

</div>

Thanks for your response.

> What platform are you working on Linux or Windows?  
> Windows, mostly, however I am very fond of Linux. Debian is something I  
> am trying to “convert” to.

> Every platform Windows or Linux has conventions that dictate how  
> applications are distributed and installed. Why fight them? You life  
> will be much simpler if you don’t.  
> \<  
> Agree. My post is just a wish for a better world. People who built Ruby  
> and Rails and Gems and all this fancy stuff just had a history to look  
> at. Basically, when you have Eclipse, why do something Windows way,  
> even if that is platform-default? Ruby doesn’t need anything that  
> depends on the installer (contrary to e.g. MS Office, which writes to  
> the registry and whatever) - it’s a bunch of files in one folder. If  
> this is all Ruby/Gems/Rails needs, why restrict anyone to have the  
> waste the time installing the things - copying from my friend’s  
> distribution is much faster then downloading all the things from the  
> Net and also brings the settings with you. Apparently, I can do that  
> once I have installed everything - I can do a verbatim copy and  
> everything will work pretty fine. Well, why rubyforge.rog doesn’t  
> behave as my imaginary friend from which I would simply copy ruby.zip  
> and voila - I have ruby.

But you are right - fighting these rules is something that would lead  
to a lot of wasted time on my side, at least.

> You can install standard distribution components directly, not by using  
> apt-get but by instead by putting the appropriate \*.deb files on a disk  
> and installing them with something like ‘dpkg -i \*.deb’. The same goes  
> for using gems you can install those with ‘gem install  
> gemfilename.gem’.  
> \<  
> I agree with this, but to install Rails you have to install 7 gems:

1. Activesupport
2. Actionpack
3. Actionmailer
4. Activerecord
5. Actionwebservice
6. Rake
7. Rails  
according to [Peak Obsession](http://wiki.rubyonrails.com/rails/pages/GemRails).

I found this page and it is really not a big pain to do this (you need  
approximately 10 minutes to do this). However, I lost a lot trying to  
find this page. I guess people would pretty much like “Save As…” of a  
zip (or tar.gz or .bz2) which you would unzip and start running.

The point is in possibility - if you have a (very easily achievable)  
possibility to do something really useful (you didn’t comment on  
whether this is useful or not - do you think so), why don’t do it? OK,  
people have a lot of other things to work on - but wouldn’t they have  
me help them maybe? Yes, if I only could install it…

Thanks again!

---

<div class="post-metadata">

**Author:** ![dtdtdt](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/d/b5ac83/32.png) [@dtdtdt](https://www.ruby-forum.com/u/dtdtdt)\
**Post date:** [January 9, 2007, 1:46pm UTC](https://www.ruby-forum.com/t/install-vs-zip/81369/4 "2007-01-09T13:46:27Z")

</div>

> In general though what you’re asking for doesn’t seem to make sense to  
> me. Simply put gems does offer advantages over \*.zip file distribution.  
> You should investigate those advantages to understand why people have  
> decided to go that route.  
> OK, I agree with this. Gems are awfully similar to deb, rpm and such  
> packages. Yes, they offer a lot.

> You complain that rails is split across several gems. Have you  
> considered that each of those is a stand alone library that can (and  
> often is) used without rails? I use ActionMailer and ActiveRecord quite  
> often without rails.  
> No, I don’t complain rails being split across several gems. In fact, I  
> am in for this solution. This allows exactly what you said -  
> reusability.

I complain about being unable to take one zip (or gem, deb, rpm,  
tar.gz, bz2, arj, rar - I don’t really care about the format) and  
install it only using that file. Basically, all the existing formats I  
know of: rpm, deb, gem, … - take care of dependencies. You cannot  
take one file and install everything - you need an automatic packaging  
system to decide what the dependencies really are. All these offer  
advantage over zip - the metadata that goes with them is important.  
However, they have a disadvantage that you don’t have everything in one  
place.

> You complain that you had to know to install each of them but when you  
> use gems you don’t need to know anything, only the gems maintainer  
> needed to understand these dependencies. Had you used the gems off-line  
> and tried to install the rails gem it would of prompted you ‘by name’  
> for the missing dependencies.  
> Yes, this is true.

> I realize the learning curve can be steep when you’re doing new things  
> but when lots of people are doing something one way I’d recommend  
> learning why they do it before trying to blaze a new trail. In the end  
> maybe the trail needs to be blazed but quite often you’ll find out  
> everyone’s not as dumb as you think 😉  
> Heh… This is a very nice comment. I would like to clarify my “ways”  
> prior to saying more. I don’t thing everyone is dumb (or at least  
> dumber). I really respect people that made all the things about Ruby -  
> and not only Ruby - many, many GNU things, for example deserve huge  
> respect.

It’s not that I think they are dumb, it’s what you said in the first  
sentence - everybody has its own way of doing something. I also agree  
with you that I shouldn’t have tried to do it my way when there is a  
ready solution for me which seems simple - “one click” and install. I  
agree that I should have learned why the things are as they are.

However, I still long for the solution that doesn’t need installations  
when they are necessary. I still don’t think they are necessary for the  
most of what we’ve covered in this post.

Anyway, to conclude - you think that if there is a solution A and  
solution B and 98% of people use solution A, I should - in at least 98%  
of the cases - really consider not using solution B and simply using  
solution A? Do you work like this normally in your life? How many times  
do you change settings? How many times you search for the alternative  
solution when there is something that bothers you?

Thanks!

---

<div class="post-metadata">

**Author:** ![dtdtdt](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/d/b5ac83/32.png) [@dtdtdt](https://www.ruby-forum.com/u/dtdtdt)\
**Post date:** [January 9, 2007, 5:06pm UTC](https://www.ruby-forum.com/t/install-vs-zip/81369/5 "2007-01-09T17:06:38Z")

</div>

dt wrote:

> Anyway, to conclude - you think that if there is a solution A and  
> solution B and 98% of people use solution A, I should - in at least 98%  
> of the cases - really consider not using solution B and simply using  
> solution A? Do you work like this normally in your life? How many times  
> do you change settings? How many times you search for the alternative  
> solution when there is something that bothers you?

Not at all, that’s not what I said.

I said when most people have settled on a particular solution to a  
problem that you should learn why they have before setting off to find a  
different one.

Of course there are times when the status quo will not be sufficient and  
you will have to find a new/better way of doing something.

This is not one of those cases. The current distribution tools offer  
advantages over just using zip files. I’m confident that if you explore  
these tools you’ll see why.

---

<div class="post-metadata">

**Author:** ![dtdtdt](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/d/b5ac83/32.png) [@dtdtdt](https://www.ruby-forum.com/u/dtdtdt)\
**Post date:** [January 9, 2007, 2:27am UTC](https://www.ruby-forum.com/t/install-vs-zip/81369/6 "2007-01-09T02:27:47Z")

</div>

dt wrote:

> Thanks for your response.
> 
> The point is in possibility - if you have a (very easily achievable)  
> possibility to do something really useful (you didn’t comment on  
> whether this is useful or not - do you think so), why don’t do it? OK,  
> people have a lot of other things to work on - but wouldn’t they have  
> me help them maybe? Yes, if I only could install it…
> 
> Thanks again!

Quite a few ruby libraries (depending on the authors preferences) make  
them selves available in gem, zip and tar.gz formats so in one sense  
what you’re asking for already exists.

Keep in mind that even though the zip and tar.gz files quite often exist  
they usually include a setup.rb which should be run to install the  
library and this setup file expects a traditionally installed instance  
of ruby.

In general though what you’re asking for doesn’t seem to make sense to  
me. Simply put gems does offer advantages over \*.zip file distribution.  
You should investigate those advantages to understand why people have  
decided to go that route.

You complain that rails is split across several gems. Have you  
considered that each of those is a stand alone library that can (and  
often is) used without rails? I use ActionMailer and ActiveRecord quite  
often without rails.

You complain that you had to know to install each of them but when you  
use gems you don’t need to know anything, only the gems maintainer  
needed to understand these dependencies. Had you used the gems off-line  
and tried to install the rails gem it would of prompted you ‘by name’  
for the missing dependencies.

I realize the learning curve can be steep when you’re doing new things  
but when lots of people are doing something one way I’d recommend  
learning why they do it before trying to blaze a new trail. In the end  
maybe the trail needs to be blazed but quite often you’ll find out  
everyone’s not as dumb as you think 😉
