Newbie question - VirtualRails

Hi,

Have been trying to set up Linux on my Windows machine, using
VirtualBox…

Installed VirtualRails to give it a try as well…

I did notice VR was using Rails version 2.3.4 rather than 2.3.5 (rails
-v gives 2.3.4) as specified on Some of VR’s documentation (some
places mention rails 2.3.4 and some rails 2.3.5, like here:
http://groups.google.com/group/rubyonrails-talk/browse_frm/thread/9fcc04508132033d/d5e9a52f44764924?tvc=1#d5e9a52f44764924
)

Have been trying to update to rails 2.3.5 using gem install and gem
update, specifying the version… but so far didn’t manage to do so…
I’m not sure how as well, being a complete newbie to Linux, and also
afraid to cause any damage… was also afraid to update gems I do not
wish to update or to update rails to 2.3.8 while I wanted 2.3.5 and
don’t feel confident I know how to change it back yet…

Maybe it’s not an issue and I should do with rails 2.3.4… now I’m
also curious to know how and whether this should be done at all

Any comments and replies will be very much appreciated :slight_smile:

Thanks!

Best,
tino.

On Mon, Jul 5, 2010 at 10:40 AM, tinoD [email protected] wrote:

Have been trying to set up Linux on my Windows machine, using
VirtualBox…

Installed VirtualRails to give it a try as well…

Have been trying to update to rails 2.3.5 using gem install and gem
update, specifying the version… but so far didn’t manage to do so…

What did you try, and why do you think it didn’t work?

I’m not sure how as well, being a complete newbie to Linux, and also
afraid to cause any damage… was also afraid to update gems I do not
wish to update or to update rails to 2.3.8 while I wanted 2.3.5 and
don’t feel confident I know how to change it back yet…

  1. gem --help should show you how to update gems

  2. One of the whole points of using a VM like VirtualBox is the ability
    to take “snapshots” of the state of the system. Install a fresh
    version
    of VirtualRails, confirm it works, then take a snapshot.

    Now you can do anything you like, and worst case you revert to
    that snapshot. It’s like git for your OS :slight_smile:

FWIW,

Hassan S. ------------------------ [email protected]
twitter: @hassan

@Hassan - Thanks :slight_smile:

I’ll look into creating snapshots right away :slight_smile:
then will experiment with the gem update and all and in case I still
don’t get it till then - will rewrite the question in more detail,
including what I did and what I got in return…

thanks again :slight_smile:

tino

On Jul 5, 7:51 pm, Hassan S. [email protected]

i’ve been using virtual rails for about 10 days, and it’s been a easy
way to
jump back into Rails development. Only thing that confused me in the
beginning was the keyboard layout defaulted to French. no big deal, just
a
few minutes of work. Otherwise it’s a great setup, and I really
appreciate
the work.

Jason

tinoD wrote:

Hi,

Have been trying to set up Linux on my Windows machine, using
VirtualBox…

Installed VirtualRails to give it a try as well…

I did notice VR was using Rails version 2.3.4 rather than 2.3.5 (rails
-v gives 2.3.4) as specified on Some of VR’s documentation (some
places mention rails 2.3.4 and some rails 2.3.5, like here:
http://groups.google.com/group/rubyonrails-talk/browse_frm/thread/9fcc04508132033d/d5e9a52f44764924?tvc=1#d5e9a52f44764924
)

Have been trying to update to rails 2.3.5 using gem install and gem
update, specifying the version… but so far didn’t manage to do so…
I’m not sure how as well, being a complete newbie to Linux, and also
afraid to cause any damage… was also afraid to update gems I do not
wish to update or to update rails to 2.3.8 while I wanted 2.3.5 and
don’t feel confident I know how to change it back yet…

Maybe it’s not an issue and I should do with rails 2.3.4… now I’m
also curious to know how and whether this should be done at all

Any comments and replies will be very much appreciated :slight_smile:

Thanks!

Best,
tino.

Hi Tino,

Thanks for using VirtualRails :slight_smile:
you’re right, there was a mistake in our documentation, now the Rails
version mentioned vor virtualrails 1.1 will be everywhere 2.3.4, and we
will soon release a new version with rails 2.3.5 rails.

with the actual 1.1 version, you can open a terminal and run the
following command :
sudo gem install rails --version 2.3.5

it works just fine, and you will have the followinf output :

virtualrails@jay ~ $ sudo gem install rails --version 2.3.5
[sudo] password for virtualrails:

Successfully installed activesupport-2.3.5
Successfully installed activerecord-2.3.5
Successfully installed actionpack-2.3.5
Successfully installed actionmailer-2.3.5
Successfully installed activeresource-2.3.5
Successfully installed rails-2.3.5
6 gems installed
Installing ri documentation for activesupport-2.3.5…
Installing ri documentation for activerecord-2.3.5…
Installing ri documentation for actionpack-2.3.5…
Installing ri documentation for actionmailer-2.3.5…
Installing ri documentation for activeresource-2.3.5…
Installing ri documentation for rails-2.3.5…
Installing RDoc documentation for activesupport-2.3.5…
Installing RDoc documentation for activerecord-2.3.5…
Installing RDoc documentation for actionpack-2.3.5…
Installing RDoc documentation for actionmailer-2.3.5…
Installing RDoc documentation for activeresource-2.3.5…
Installing RDoc documentation for rails-2.3.5…

hope it will help :slight_smile:
please feel free to send me support questions if you have troubles using
VirtualRails !

Jérôme Fillioux
VirtualRails Team

jason white wrote:

i’ve been using virtual rails for about 10 days, and it’s been a easy
way to
jump back into Rails development. Only thing that confused me in the
beginning was the keyboard layout defaulted to French. no big deal, just
a
few minutes of work. Otherwise it’s a great setup, and I really
appreciate
the work.

Jason

Hi Jason,

thank you for your comment, we’re glad you appreciate VirtualRails !

the very next version will have the US keyboard layout as default :slight_smile:

Jérôme Fillioux
VirtualRails team

Hi Jerome,

Thank you for your comment.
I realise now this was what I was supposed to do.
Let me describe what I did and your feedback can help me decide
whether I can continue with what I’ve done or should go back to the
backup I made before starting my experiments, using clonevdi (using
VBoxManage).

So…
What I did was:

  1. sudo gem update --system
  2. sudo gem update
  3. sudo gem install -v=2.3.5 rails --include-dependencies

In more detail, what happened, including some problems on the way:


virtualrails@jay ~ $ sudo gem update --system
[sudo] password for virtualrails:
Updating RubyGems
Updating rubygems-update
Successfully installed rubygems-update-1.3.7
Updating RubyGems to 1.3.7
Installing RubyGems 1.3.7
RubyGems 1.3.7 installed

=== 1.3.7 / 2010-05-13

NOTE:

http://rubygems.org is now the default source for downloading gems.

You may have sources set via ~/.gemrc, so you should replace
http://gems.rubyforge.org with http://rubygems.org

http://gems.rubyforge.org will continue to work for the forseeable
future.

New features:

  • gem commands
    • gem install and gem fetch now report alternate platforms when
      a
      matching one couldn’t be found.
    • gem contents --prefix is now the default as specified in –
      help. Bug
      #27211 by Mamoru T…
    • gem fetch can fetch of old versions again. Bug #27960 by Eric
      Hankins.
    • gem query and friends output now lists platforms. Bug #27856 by
      Greg
      Hazel.
    • gem server now allows specification of multiple gem dirs for
      documentation. Bug #27573 by Yuki S…
    • gem unpack can unpack gems again. Bug #27872 by Timothy Jones.
    • gem unpack now unpacks remote gems.
    • –user-install is no longer the default. If you really liked it,
      see
      Gem::ConfigFile to learn how to set it by default. (This change
      was made
      in 1.3.6)
  • RubyGems now has platform support for IronRuby. Patch #27951 by
    Will G…

Bug fixes:

  • Require rubygems/custom_require if --disable-gem was set. Bug
    #27700 by
    Roger P…
  • RubyGems now protects against exceptions being raised by plugins.
  • rubygems/builder now requires user_interaction. Ruby Bug #1040 by
    Phillip
    Toland.
  • Gem::Dependency support #version_requirements= with a warning. Fix
    for old
    Rails versions. Bug #27868 by Wei Jen Lu.
  • Gem::PackageTask depends on the package dir like the other rake
    package
    tasks so dependencies can be hooked up correctly.

RubyGems installed the following executables:
/opt/rubystack-2.0-0/ruby/bin/gem

virtualrails@jay ~ $ gem -v
1.3.7


OK: This seemed to upgrade successfully RubyGems from 1.3.5 to
Version 1.3.7


virtualrails@jay ~ $ sudo gem update
Updating installed gems
Updating RedCloth
Building native extensions. This could take a while…
Successfully installed RedCloth-4.2.3
Updating ZenTest
Successfully installed ZenTest-4.3.3
Updating after_commit
tcmalloc: large alloc 1349521408 bytes == (nil) @
tcmalloc: large alloc 2428973056 bytes == (nil) @
tcmalloc: large alloc 3574456320 bytes == (nil) @
tcmalloc: large alloc 4021641216 bytes == (nil) @
Successfully installed after_commit-1.0.7
Updating capistrano
Successfully installed capistrano-2.5.19
Updating cucumber
Building native extensions. This could take a while…

(::slight_smile: (::slight_smile: (::slight_smile: (::slight_smile: (::slight_smile: (::slight_smile: (::slight_smile: (::slight_smile: (::slight_smile: (::slight_smile: (::slight_smile: (::slight_smile: (::slight_smile: (::slight_smile:
(::slight_smile:

                 (::)   U P G R A D I N G    (::)

Thank you for installing cucumber-0.8.3.
Please be sure to read
http://wiki.github.com/aslakhellesoy/cucumber/upgrading
for important information about this release. Happy cuking!

(::slight_smile: (::slight_smile: (::slight_smile: (::slight_smile: (::slight_smile: (::slight_smile: (::slight_smile: (::slight_smile: (::slight_smile: (::slight_smile: (::slight_smile: (::slight_smile: (::slight_smile: (::slight_smile:
(::slight_smile:

Successfully installed trollop-1.16.2
Successfully installed gherkin-2.0.2
Successfully installed json_pure-1.4.3
Successfully installed cucumber-0.8.3
Updating daemons
Successfully installed daemons-1.1.0
Updating delayed_job
Successfully installed delayed_job-2.0.3
Updating echoe

========================================================================

       Thanks for installing Gemcutter! You can now run:

gem push merged into RubyGems 1.3.6
gem owner merged into RubyGems 1.3.6
gem webhook register urls to be pinged when gems are pushed
gem yank remove a specific version of a gem from RubyGems.org

========================================================================

Successfully installed gemcutter-0.5.0
Successfully installed echoe-4.3.1
Updating god
Building native extensions. This could take a while…
Successfully installed god-0.11.0
Updating highline
Successfully installed highline-1.5.2
Updating hoe
Successfully installed rubyforge-2.0.4
Successfully installed hoe-2.6.1
Updating memcache-client
Successfully installed memcache-client-1.8.5
Updating net-sftp
Successfully installed net-sftp-2.0.4
Updating net-ssh
Successfully installed net-ssh-2.0.23
Updating nokogiri
Building native extensions. This could take a while…
ERROR: Error installing nokogiri:
ERROR: Failed to build gem native extension.

/opt/rubystack-2.0-0/ruby/bin/ruby extconf.rb
checking for iconv.h… yes
checking for libxml/parser.h… no

libxml2 is missing. please visit
Installing Nokogiri - Nokogiri
for help with installing dependencies.

*** extconf.rb failed ***
Could not create Makefile due to some reason, probably lack of
necessary libraries and/or headers. Check the mkmf.log file for more
details. You may need configuration options.

Provided configuration options:
–with-opt-dir
–without-opt-dir
–with-opt-include
–without-opt-include=${opt-dir}/include
–with-opt-lib
–without-opt-lib=${opt-dir}/lib
–with-make-prog
–without-make-prog
–srcdir=.
–curdir
–ruby=/opt/rubystack-2.0-0/ruby/bin/ruby
–with-zlib-dir
–without-zlib-dir
–with-zlib-include
–without-zlib-include=${zlib-dir}/include
–with-zlib-lib
–without-zlib-lib=${zlib-dir}/lib
–with-iconv-dir
–without-iconv-dir
–with-iconv-include
–without-iconv-include=${iconv-dir}/include
–with-iconv-lib
–without-iconv-lib=${iconv-dir}/lib
–with-xml2-dir
–without-xml2-dir
–with-xml2-include
–without-xml2-include=${xml2-dir}/include
–with-xml2-lib
–without-xml2-lib=${xml2-dir}/lib
–with-xslt-dir
–without-xslt-dir
–with-xslt-include
–without-xslt-include=${xslt-dir}/include
–with-xslt-lib
–without-xslt-lib=${xslt-dir}/lib

Gem files will remain installed in /opt/rubystack-2.0-0/ruby/lib/ruby/
gems/1.8/gems/nokogiri-1.4.2 for inspection.
Results logged to /opt/rubystack-2.0-0/ruby/lib/ruby/gems/1.8/gems/
nokogiri-1.4.2/ext/nokogiri/gem_make.out
Updating passenger
ERROR: While executing gem … (Zlib::DataError)
invalid stored block lengths


Here, nokogiri didn’t upgrade… so tried the following:


  1. sudo apt-get install libxslt-dev libxml2-dev
    sudo gem install nokogiri

Err… don’t find the trace for it but then it started complaining Zlib
and didn’t install nokogiri

  1. Anyway, I don’t know whether nokogiri should be of a problem…
    I decided to go ahead and try to install rails 2.3.5 since as I
    suspected,
    sudo gem update install rails 2.3.8.

Now, wanting to give the trace here I retyped step 3
and it caused some problems…

What I’m going to do now I think is go back to my backup anyway… I’m
leaving the beginning of my message here, thinking maybe the
information about nokogiri is relevant for your information…

Anyway, since it seems I’m going to go back to my backup-version - I’m
re-asking my question:

Should I just follow your instructions and update to rails 2.3.5?

Should I refrain from doing sudo gem update --system and sudo gem
update?

Should rails 2.3.8 or any other updates cause me any trouble?

Do you recommend me to stick with rails 2.3.5 rather than 2.3.8?

Thanks!!
Sorry for the confusion in my message… my terminal seems to have
crashed from retyping step 3… as I’m really a beginner I wasn’t aware
of the fact I was doing something obviously wrong here… [blush]

Also, talking about being a newbie reminded me of another question I
have, not related to VirtualRails but to being a Linux beginner and
that is the following:
Where should I put my files and directories? and, more spcifically,
where should I put my RoR development libraries? should I create a
directory under /home/virtualrails/ or is there a different place I
should be aiming and looking into?

Many thanks,
Appreciate the answers here…

Best,
tino

ok… back to my backup…

sorry for the long last message…
this one continues the previous one :slight_smile:

I currently have:

virtualrails@jay ~ $ gem list

*** LOCAL GEMS ***

actionmailer (2.3.8, 2.3.4)
actionpack (2.3.8, 2.3.4)
activerecord (2.3.8, 2.3.4)
activeresource (2.3.8, 2.3.4)
activesupport (2.3.8, 2.3.4)
after_commit (1.0.2)
bson (1.0.3)
builder (2.1.2)
capistrano (2.5.18, 2.5.9)
cgi_multipart_eof_fix (2.5.0)
cucumber (0.4.3)
daemons (1.0.10)
delayed_job (1.8.4)
diff-lcs (1.1.2)
echoe (3.2)
eventmachine (0.12.10)
fastthread (1.0.7)
gem_plugin (0.2.3)
git (1.2.5)
god (0.7.18)
gruff (0.3.6)
highline (1.5.1)
hoe (2.3.3)
hpricot (0.8.2)
jnunemaker-validatable (1.8.4)
json_pure (1.1.9)
memcache-client (1.7.5)
mongo (1.0.3)
mongo_mapper (0.8.2)
mongrel (1.1.5)
mongrel_cluster (1.0.5)
mysql (2.8.1)
needle (1.3.0)
net-scp (1.0.2)
net-sftp (2.0.2)
net-ssh (2.0.15)
net-ssh-gateway (1.0.1)
nokogiri (1.4.0)
passenger (2.2.5)
plucky (0.3.2)
polyglot (0.2.9)
rack (1.1.0, 1.0.1)
rails (2.3.8, 2.3.4)
rails_analyzer_tools (1.4.0)
rake (0.8.7)
rcov (0.8.1.2.0)
RedCloth (4.2.2)
riddle (1.0.0)
rmagick (2.12.2)
rspec (1.2.9)
rspec-rails (1.2.9)
rubyforge (2.0.3)
SyslogLogger (1.4.0)
term-ansicolor (1.0.4)
thin (1.2.4)
treetop (1.4.2)
webrat (0.5.3)
ZenTest (4.1.4)


Should this config cause me any trouble?

Should I move to rails 2.3.5?

Should I begin fresh and only install rails 2.3.5?

I’m repeating here a few of my question from previous post, just now
have the gem list (before installing rails 2.3.5 that is… was
surprised to find here rails 2.3.8 as I was pretty sure I did a backup
before updating all gems… but there might be something here I missed
or don’t fully understand yet… anyway, this is what I’ve got now…
please let me know if you will)

thank you again,

tino.

ok… back to my backup…

sorry for the long last message…
this one continues the previous one :slight_smile:

I currently have:

virtualrails@jay ~ $ gem list

*** LOCAL GEMS ***

actionmailer (2.3.8, 2.3.4)
actionpack (2.3.8, 2.3.4)
activerecord (2.3.8, 2.3.4)
activeresource (2.3.8, 2.3.4)
activesupport (2.3.8, 2.3.4)
after_commit (1.0.2)
bson (1.0.3)
builder (2.1.2)
capistrano (2.5.18, 2.5.9)
cgi_multipart_eof_fix (2.5.0)
cucumber (0.4.3)
daemons (1.0.10)
delayed_job (1.8.4)
diff-lcs (1.1.2)
echoe (3.2)
eventmachine (0.12.10)
fastthread (1.0.7)
gem_plugin (0.2.3)
git (1.2.5)
god (0.7.18)
gruff (0.3.6)
highline (1.5.1)
hoe (2.3.3)
hpricot (0.8.2)
jnunemaker-validatable (1.8.4)
json_pure (1.1.9)
memcache-client (1.7.5)
mongo (1.0.3)
mongo_mapper (0.8.2)
mongrel (1.1.5)
mongrel_cluster (1.0.5)
mysql (2.8.1)
needle (1.3.0)
net-scp (1.0.2)
net-sftp (2.0.2)
net-ssh (2.0.15)
net-ssh-gateway (1.0.1)
nokogiri (1.4.0)
passenger (2.2.5)
plucky (0.3.2)
polyglot (0.2.9)
rack (1.1.0, 1.0.1)
rails (2.3.8, 2.3.4)
rails_analyzer_tools (1.4.0)
rake (0.8.7)
rcov (0.8.1.2.0)
RedCloth (4.2.2)
riddle (1.0.0)
rmagick (2.12.2)
rspec (1.2.9)
rspec-rails (1.2.9)
rubyforge (2.0.3)
SyslogLogger (1.4.0)
term-ansicolor (1.0.4)
thin (1.2.4)
treetop (1.4.2)
webrat (0.5.3)
ZenTest (4.1.4)


Should this config cause me any trouble?

Should I move to rails 2.3.5?

Should I begin fresh and only install rails 2.3.5?

I’m repeating here a few of my question from previous post, just now
have the gem list (before installing rails 2.3.5 that is… was
surprised to find here rails 2.3.8 as I was pretty sure I did a backup
before updating all gems… but there might be something here I missed
or don’t fully understand yet… anyway, this is what I’ve got now…
please let me know if you will)

thank you again,

tino.

Hi Jerome,

Thank you for replying… I appreciate the detailed response and being
patient for my beginner’s questions :slight_smile:

Also, I want to apologise as I seems my last message was sent a couple
of times :stuck_out_tongue:

I’m very excited with my shift to Linux and very happy about
VirtualRails… and no doubt it’s worth it :wink:

Since I think any projects I started on Windows should now anyway be
re-written on Linux (also since I’m planning to deploy on a linux
host, which was mainly what made me shift at this point of time to
Linux… but it was anyway just a matter of time till I do move… just
made things quicker…) - I’ll begin using rails 2.3.8 :slight_smile:
Glad nokogiri not updating successfully is not going to cause me any
problems, and right now I’m not using it anyway, though it seems nice
after doing some reading…

about environment.rb - I realised this is where I should mention the
rails version… but thanks for mentioning it and validating what I
thought… same goes for my virtualrails’ home directory, it really
helped me you answered this very basic question for me :slight_smile:

Many thanks and thank you for your VirtualRails project.

Best,

tino

Hi Tino,
I think your problems are simple than you think :slight_smile:

first, don’t bother upgrading successfully nokogiri until you really
need to
use it in your project. and don’t worry about the failed update, on
won’t
have any side effect.

about the rails version, there is only one thing to consider IMO :

  • if you start a new rails application, use the last “stable”
    version,
    i.e 2.3.8 : less bugs, more speed, more security.
  • if you work on an existing rails app, use the rails version that has
    been
    used to create and developp this application. Until you have a real good
    reason to migrate your app to a newer version of rails, don’t :slight_smile:

one interessant thing you have to know is that you can have several
rails
versions installed on your system, and choose the one to use in the
configuration file of your rails project. In the
/config/environnement.rb
file, add somthing like that :

Specifies gem version of Rails to use when vendor/rails is not present

RAILS_GEM_VERSION = ‘2.3.5’ unless defined? RAILS_GEM_VERSION

regarding all this, I think you can stay with your original snapshop,
and
choose the rails version you want to use.
but you can also use a fresh downloaded virtualrails and upgrade only
rails
if you want, it takes only 5 minutes and you will be more confortable
with
the idea that only rails have been upgraded :slight_smile:

about the place you should put your files, your right :
the “/home/virtualrails/” is like the “My Documents” for MS Windows,
“virtualrails” being the name of the connected user.
for exemple you can create a folder named “rails_apps” or “dev”, or
what
you want under the “/home/virtualrails/” directory, and put here all
your
future rails projects.

cheers up,
keep learning Linux and Rails, it really worth the price :slight_smile:

Jérôme Fillioux
VirtualBox Team

hello again, Tino :slight_smile:

I missed a point in my answer :

Since I think any projects I started on Windows should now anyway be
re-written on Linux (also since I’m planning to deploy on a linux
host, which was mainly what made me shift at this point of time to
Linux… but it was anyway just a matter of time till I do move… just
made things quicker…) - I’ll begin using rails 2.3.8 :slight_smile:

if you are talking about rails projects, that’s not true :slight_smile:
and if your projects where written for rails 2 or greater, there is
likely nothing to do to run them under linux :slight_smile:

the rails and ruby code is “OS agnostic”, since it is executed on a ruby
VM. That ruby layer depend on the OS you use, but allow a transversal
compatibility of your ruby and rails code.

so again, if your apps used to run correctly on windows with rails 2.x
and ruby 1.8.6 or 1.8.7, then you just have to settle them on your
virtualrails and that’s it !

let me know the details of all of that and if it works.
if you have troubles, trust the ruby/rails guys around here (including
myself) to try to help you :slight_smile:

best

Jérôme Fillioux
VirtualRails Team

you’re welcome :slight_smile:

happy that everything seems to look shiny for you now
please keep asking if you have any question about VirtualRails

good louck for your projects, enthousiasm is half of the path :slight_smile:

best regards

Jérôme Fillioux
VirtualBox Team