Ruby/Usage

From ALT Linux Wiki

Usage

You have to use system ruby generally for several purposes, so you have to:

  1. use application, which strictly requires ruby, like: foreman, gem-alexandria-book-collection-manager;
  2. use ruby for development only purposes on your local machine;

Usage system ruby for any other cases along with the specific production case is UNSUPPORTED.

Installation

You have to install ruby for use just type in console as root:

# apt-get install ruby

Post install

Since our ruby uses rvm even for both build process and for usage, s, for example, to install an additional ruby gems or side modules, you have to add a user into rvm group:

# usermod [USER] -aG rvm

or

$ sudo bash -c "usermod \$SUDO_USER  -aG rvm"

And then relogin as the user. From time of relogin, additional gems will be installed for the user in the default $GEM_HOME folder /var/cache/ruby/gemie.

For development

Development package for ruby is called as the libruby-devel, it contains all the prepequisites to build an other ruby with rvm or without, along with the development headers. Just install it as follows:

# apt-get install libruby-devel

Then you have to use either embedded system rvm, or cumtomized user version. To install user version rvm just download it, by running:

$ \curl -sSL https://get.rvm.io | bash -s stable

Then relogin and mount systems' or install required ruby as follows:

$ rvm install ruby-3.3.0

Cloning a custom project

With rvm and ruby you are able to both developing a custom project and even running it in production. For example to run redmine project in production you have to just execute the steps:

 $ git clone https://github.com/redmine/redmine.git
 $ cd redmine
 $ RAILS_ENV=production bundle
 $ yarn install

Then edit config/database.yml file properly according your requirements, and set the necessary database user/role for corresponding DB engine, run ceration, migration procedures for the database, and seeding if any.

 $ RAILS_ENV=production rake db:create db:migrate db:seed

And run application.

 $ RAILS_ENV=production rails s