# Help with install! Rails without gems

**URL:** <https://www.ruby-forum.com/t/help-with-install-rails-without-gems/122751>\
**Category:** Rails\
**Created:** [December 11, 2007, 7:46pm UTC](https://www.ruby-forum.com/t/help-with-install-rails-without-gems/122751 "2007-12-11T19:46:29Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![caleridas](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/c/aeb1de/32.png) [@caleridas](https://www.ruby-forum.com/u/caleridas)\
**Post date:** [December 11, 2007, 7:46pm UTC](https://www.ruby-forum.com/t/help-with-install-rails-without-gems/122751/1 "2007-12-11T19:46:29Z")

</div>

So someone requested me to deploy rails on 30+ machines, he has a  
fully developped rails app on his local machine - only trouble is: he  
installed everything using gem.

Now, since I have to care for more than 70 servers and workstations  
there are a number of organizational policy rules regarding system  
administration: Nothing EVER gets installed that bypasses the package  
management system (be it rpm or deb). Needless to say this clashes  
with gem.

Unfortunately installing “gemless” rails works for newly created rails  
applications, but not for his fully developed (complains about missing  
rails gem). Now the question is: How can I help him to make his  
application runnable is this environment and avoid the same pitfall in  
the future? (and what did he do wrong to begin with?)

Of course I can always tell him he has to locally compile and deploy  
all gems himself as non-root in his own directories, but he won’t be  
happy and neither do I like this.

---

<div class="post-metadata">

**Author:** ![caleridas](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/c/aeb1de/32.png) [@caleridas](https://www.ruby-forum.com/u/caleridas)\
**Post date:** [December 11, 2007, 9:27pm UTC](https://www.ruby-forum.com/t/help-with-install-rails-without-gems/122751/2 "2007-12-11T21:27:10Z")

</div>

Couldn’t you just do a rake:rails:freeze task to store the rails gem  
locally in the project? And then for all dependent gems use “gem unpack  
xxxx” in #{RAILS\_ROOT}/vendor/gems to store the gem’s code locally as  
well within application? If you simply store the gems locally and rails  
is frozen locally, it shouldn’t be a problem as far as I know…

caleridas wrote:

> So someone requested me to deploy rails on 30+ machines, he has a  
> fully developped rails app on his local machine - only trouble is: he  
> installed everything using gem.
> 
> Now, since I have to care for more than 70 servers and workstations  
> there are a number of organizational policy rules regarding system  
> administration: Nothing EVER gets installed that bypasses the package  
> management system (be it rpm or deb). Needless to say this clashes  
> with gem.
> 
> Unfortunately installing “gemless” rails works for newly created rails  
> applications, but not for his fully developed (complains about missing  
> rails gem). Now the question is: How can I help him to make his  
> application runnable is this environment and avoid the same pitfall in  
> the future? (and what did he do wrong to begin with?)
> 
> Of course I can always tell him he has to locally compile and deploy  
> all gems himself as non-root in his own directories, but he won’t be  
> happy and neither do I like this.

---

<div class="post-metadata">

**Author:** ![caleridas](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/c/aeb1de/32.png) [@caleridas](https://www.ruby-forum.com/u/caleridas)\
**Post date:** [December 11, 2007, 11:37pm UTC](https://www.ruby-forum.com/t/help-with-install-rails-without-gems/122751/3 "2007-12-11T23:37:46Z")

</div>

On Dec 11, 9:27 pm, Nathan E. \<rails-mailing-l…@andreas-  
[s.net](http://s.net)\> wrote:

> Couldn’t you just do a rake:rails:freeze task to store the rails gem  
> locally in the project? And then for all dependent gems use “gem unpack  
> xxxx” in #{RAILS\_ROOT}/vendor/gems to store the gem’s code locally as  
> well within application? If you simply store the gems locally and rails  
> is frozen locally, it shouldn’t be a problem as far as I know…

well this just pushes the administrative burden off my desk, so it is  
fine with me 🙂  
however this still means no centralized management of \>30  
installations…

---

<div class="post-metadata">

**Author:** ![caleridas](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/c/aeb1de/32.png) [@caleridas](https://www.ruby-forum.com/u/caleridas)\
**Post date:** [December 12, 2007, 4:15am UTC](https://www.ruby-forum.com/t/help-with-install-rails-without-gems/122751/4 "2007-12-12T04:15:06Z")

</div>

Have you looked at capistrano and vlad the deployer?

On Dec 12, 2007 8:47 AM, caleridas [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> fine with me 🙂  
> however this still means no centralized management of \>30  
> installations…
> 
> >

–  
Ryan B.

> **[frozenplague.net](http://www.frozenplague.net)**
>
> This domain may be for sale!

---

<div class="post-metadata">

**Author:** ![caleridas](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/c/aeb1de/32.png) [@caleridas](https://www.ruby-forum.com/u/caleridas)\
**Post date:** [December 12, 2007, 6:15pm UTC](https://www.ruby-forum.com/t/help-with-install-rails-without-gems/122751/5 "2007-12-12T18:15:50Z")

</div>

On 12 Dez., 12:37, Nathan E. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)  
wrote:

> Heh. Well if you upload the code to an SVN repository and use the tips I  
> suggested (railsfreeze andgemunpacks), you can effectively create an  
> isolated workingrailsapplication. (Obviously Ruby and MySQL would be  
> the two pre-requisites).

sounds reasonable and we are probably going to do that for the  
moment… but one problem we will be hitting sooner or later with this  
approach: gems containing native code are linked to the specific  
library versions on the development machine, transferring those to  
other machines with different versions may or may not break, and  
sooner or later we will hit architecture issues (switch from 32 to 64  
bit)

so the question is whether this approach just creates a “better  
hidden” mess that still needs to be sorted out later

is there a good tutorial for creating and using “private” gem  
repositories? or, alternatively, packaging the things up in .debs  
and .rpms so they can be fed through our install repositories and  
managed sanely

> Using Capistrano or Vlad as the previous poster mentioned, people could  
> simply check out copies from the SVN server (which could be updated as  
> needed) and then pushed to the production servers using Capistrano.

i will pass on this recommendation, but ulitmately i don’t know how  
the rails apps are going to be maintained, i just have to provide the  
infrastructure

---

<div class="post-metadata">

**Author:** ![caleridas](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/c/aeb1de/32.png) [@caleridas](https://www.ruby-forum.com/u/caleridas)\
**Post date:** [December 12, 2007, 12:37pm UTC](https://www.ruby-forum.com/t/help-with-install-rails-without-gems/122751/6 "2007-12-12T12:37:29Z")

</div>

Heh. Well if you upload the code to an SVN repository and use the tips I  
suggested (rails freeze and gem unpacks), you can effectively create an  
isolated working rails application. (Obviously Ruby and MySQL would be  
the two pre-requisites).

Using Capistrano or Vlad as the previous poster mentioned, people could  
simply check out copies from the SVN server (which could be updated as  
needed) and then pushed to the production servers using Capistrano.

Seems like it would fit the bill and would have centralized management  
in the sense that you make a change, upload it to the repository and  
than it is simply a click a way for everyone else to have the updated  
version.

caleridas wrote:

> On Dec 11, 9:27 pm, Nathan E. \<rails-mailing-l…@andreas-  
> [s.net](http://s.net)\> wrote:
> 
> > Couldn’t you just do a rake:rails:freeze task to store the rails gem  
> > locally in the project? And then for all dependent gems use “gem unpack  
> > xxxx” in #{RAILS\_ROOT}/vendor/gems to store the gem’s code locally as  
> > well within application? If you simply store the gems locally and rails  
> > is frozen locally, it shouldn’t be a problem as far as I know…
> 
> well this just pushes the administrative burden off my desk, so it is  
> fine with me 🙂  
> however this still means no centralized management of \>30  
> installations…
