I want to install compass by downloading any required file and taking them to another machine without internet connection. I have downloaded the source package
I did
export GEM_HOME=.
export GEM_PATH=.
gem install --no-ri --no-rdoc --install-dir . <gem>
Hm. That's a little tough. gem dependency
will show you dependencies for one gem, but it won't go all the way down the tree.
➔ gem dependency compass
Gem compass-0.10.5
haml (>= 3.0.4, runtime)
Gem compass-0.10.6
haml (>= 3.0.4, runtime)
➔ gem dependency haml
Gem haml-3.0.21
maruku (>= 0.5.9, development)
yard (>= 0.5.3, development)
Gem haml-3.0.22
maruku (>= 0.5.9, development)
yard (>= 0.5.3, development)
Gem haml-3.0.23
maruku (>= 0.5.9, development)
yard (>= 0.5.3, development)
Gem haml-3.0.24
maruku (>= 0.5.9, development)
yard (>= 0.5.3, development)
"development" means it's only required if you are developing the gem itself. "runtime" means you need it to use it.
so in this case, the only dependency is haml. if it were a more complicated gem, i don't know a good way to generate the whole tree.
Thats exactly the problem I had.
After searching around a while I found a Solution who works using Bundler https://bundler.io/
Getting Gem with Dependencies:
source "http://rubygems.org"
gem 'rails', '3.2.1'
Install Gem on Machine without internet connection:
gem install --local rails-3.2.1.gem