Hi there,
just to introduce my problem: because I have a bad internet connection I
want to
create a local repository on one of my PCs here in the office, and
install gems
from this PC (instead of rubygems).
I looked to a lot of blogs, manuals, etc., but I can not get it working.
This is what I did:
On my PC (which should be my local gem repository) - Linux system
- mkdir /var/www/localhost/htdocs/gems
- cp /usr/local/lib64/ruby/gems/1.9.1/cache/*.gem
/var/www/localhost/htdocs/gems - gem generate_index -d /var/www/localhost/htdocs
This creates the following in /var/www/localhost/htdocs:
Marshal.4.8
Marshal.4.8.Z
latest_specs.4.8
latest_specs.4.8.gz
prerelease_specs.4.8
prerelease_specs.4.8.gz
quick
specs.4.8
specs.4.8.gz
-
Starting the server with
gem server --dir /var/www/localhost/htdocs/
This ends up with the following error message:
ERROR: While executing gem … (ArgumentError)
/var/www/localhost/htdocs does not appear to be a gem repository
When I start gem server (which is linked to
/usr/local/lib64/ruby/gems/1.9.1 by
default) the gem server starts perfect.
Comparing these directories the /usr/local/lib64/ruby/gems/1.9.1
directory
contains bin, cache, doc, gems, specifications
Not so for my “new” directory: /var/www/localhost/htdocs. Also the
gemspec files
are hold different (in /var/www/localhost/htdocs under quick/Marshal.4.8
they are inflated with gemspec.rz)
So the question is: how can I create a repository like under
/usr/local/lib64/ruby/gems/1.9.1 . Is there a special command?
Thanks for any advice,
Holm