Important Project Notes
- You will need this to get Ruby under RVM working on Ubuntu.
http://rubysource.com/installing-ruby-with-rvm-on-ubuntu/ (These worked pretty well for me -JLW)
We are current using http://xtremekforever.blogspot.com/2011/05/setup-rails-project-with-postgresql-on.html as our instructions on how to install Postgresql.
Instructions
Step one is to install Ruby and RubyGems; this is the appropriate incantation for my Linux distribution (Gentoo):
jmax@book ~ $ sudo emerge ruby rubygems ...package manager nattering while it installs ruby and rubygems...
Next, grab a copy of the MyTrack code:
jmax@book ~ $ cd projects/ jmax@book ~/projects $ git clone git@github.com:jmax315/MyTrack.git Cloning into MyTrack... remote: Counting objects: 84, done. remote: Compressing objects: 100% (60/60), done. remote: Total 84 (delta 11), reused 79 (delta 6) Receiving objects: 100% (84/84), 27.40 KiB, done. Resolving deltas: 100% (11/11), done.
Now we install rvm. rvm is a little weird, in that it is for use with Ruby, but is not itself a Ruby program (and hence, it isn't a gem). It's actually a clever shell hack (with both the good and bad implications of that). Anyway, install it like this:
jmax@book ~/projects $ bash -s stable < <(curl -s https://raw.github.com/wayneeseguin/rvm/master/binscripts/rvm-installer) ...rvm nattering while it installs...
Because rvm is a shell hack, we then need to update our current shell's environment (we could also just start a new shell).
jmax@book ~/projects $ source /home/jmax/.rvm/scripts/rvm
Now, whenever we change into the project's root directory, rvm will arrange for us to use the version of Ruby and the various gems specified in the project's .rvmrc file. This first time, it gets a little upset, because we haven't installed the correct version of Ruby or any of the gems:
jmax@book ~/projects $ cd MyTrack/ ============================================================================== = NOTICE = ============================================================================== = RVM has encountered a new or modified .rvmrc file in the current directory = = This is a shell script and therefore may contain any shell commands. = = = = Examine the contents of this file carefully to be sure the contents are = = safe before trusting it! ( Choose v[iew] below to view the contents ) = ============================================================================== Do you wish to trust this .rvmrc file? (/home/jmax/projects/MyTrack/.rvmrc) y[es], n[o], v[iew], c[ancel]> y Gemset 'MyTrack' does not exist, rvm gemset create 'MyTrack' first. Gemset doesn't exist, proceeding with default gemset ruby ruby-1.9.2-p290 is not installed. To install do: 'rvm install ruby-1.9.2-p290'
Following the nice program's suggestions, we create the gemset and install the necessary version of Ruby:
jmax@book ~/projects/MyTrack $ rvm gemset create 'MyTrack'
'MyTrack' gemset created (/home/jmax/.rvm/gems/ruby-1.9.2-p290@MyTrack).
jmax@book ~/projects/MyTrack $ rvm install ruby-1.9.2-p290
Fetching yaml-0.1.4.tar.gz to /home/jmax/.rvm/archives
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 460k 100 460k 0 0 261k 0 0:00:01 0:00:01 --:--:-- 296k
Extracting yaml-0.1.4.tar.gz to /home/jmax/.rvm/src
Prepare yaml in /home/jmax/.rvm/src/yaml-0.1.4.
Configuring yaml in /home/jmax/.rvm/src/yaml-0.1.4.
Compiling yaml in /home/jmax/.rvm/src/yaml-0.1.4.
Installing yaml to /home/jmax/.rvm/usr
Installing Ruby from source to: /home/jmax/.rvm/rubies/ruby-1.9.2-p290, this may take a while depending on your cpu(s)...
ruby-1.9.2-p290 - #fetching
ruby-1.9.2-p290 - #downloading ruby-1.9.2-p290, this may take a while depending on your connection...
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 8604k 100 8604k 0 0 414k 0 0:00:20 0:00:20 --:--:-- 361k
ruby-1.9.2-p290 - #extracting ruby-1.9.2-p290 to /home/jmax/.rvm/src/ruby-1.9.2-p290
ruby-1.9.2-p290 - #extracted to /home/jmax/.rvm/src/ruby-1.9.2-p290
ruby-1.9.2-p290 - #configuring
ruby-1.9.2-p290 - #compiling
ruby-1.9.2-p290 - #installing
Retrieving rubygems-1.8.17
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 246k 100 246k 0 0 429k 0 --:--:-- --:--:-- --:--:-- 587k
Extracting rubygems-1.8.17 ...
Removing old Rubygems files...
Installing rubygems-1.8.17 for ruby-1.9.2-p290 ...
Installation of rubygems completed successfully.
ruby-1.9.2-p290 - adjusting #shebangs for (gem irb erb ri rdoc testrb rake).
ruby-1.9.2-p290 - #importing default gemsets (/home/jmax/.rvm/gemsets/)
Install of ruby-1.9.2-p290 - #completeThe capybara-webkit gem, which we use for some of our testing, depends on having a QT development environment installed. This may already be present on your system; if not you need to install it. The appropriate incantation for doing this on Ubuntu (and probably other Debian-based distros) is:
apt-get install libqt4-dev
The last package that we will install manually is bundler, which will handle installing everything else for us:
jmax@book ~/projects/MyTrack $ gem install bundler Successfully installed bundler-1.0.22 1 gem installed Installing ri documentation for bundler-1.0.22... Installing RDoc documentation for bundler-1.0.22...
Finally we cd out of the project's root, then back in, so as to update rvm (If you don't, the next step will malfunction).
jmax@book ~/projects/MyTrack $ cd .. jmax@book ~/projects $ cd MyTrack/ Using /home/jmax/.rvm/gems/ruby-1.9.2-p290 with gemset MyTrack
And tell bundler to deal with everything else:
jmax@book ~/projects/MyTrack $ bundle install Fetching source index for https://rubygems.org/ Fetching source index for http://rubygems.org/ Installing rake (0.9.2.2) ...other gems... Installing uglifier (1.2.3) Your bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.
- If 'therubyracer' fails to install try using the edge version of bundler 'gem install bundler --pre'
And we're almost done. The final step is to get our database initialized:
jmax@book ~/projects/MyTrack $ rake db:create jmax@book ~/projects/MyTrack $ rake db:migrate
We now (should) have a working development environment.