Introduzione

Ruby è uno dei linguaggi di programmazione più popolari oggi. Ha una sintassi elegante e si concentra su semplicità e produttività. Ruby è il linguaggio dietro il potente framework Ruby on Rails.

In questo tutorial ti mostreremo tre diversi modi per installare Ruby su Ubuntu 20.04 LTS Focal Fossa:

  • Dai repository Ubuntu standard. Questo è il modo più semplice per installare Ruby su Ubuntu e dovrebbe essere sufficiente per la maggior parte dei casi d'uso. La versione inclusa nei repository Ubuntu è 2.7.0.
  • Utilizzando Rbenv. Uno script che ti consente di avere più versioni di Ruby installate sullo stesso computer.
  • Utilizzando RVM (ruby enVironment manager). Uno script più pesante e ricco di funzionalità che ti consente di installare, gestire e lavorare con più versioni di ruby.

Scegli il metodo di installazione appropriato per il tuo ambiente. Se stai sviluppando applicazioni Ruby e lavori su più ambienti Ruby, il modo migliore è installare Ruby usando Rbenv o RVM.

Se non si è sicuri della versione di Ruby da installare, consultare la documentazione dell'applicazione che si intende distribuire.

Se desideri installare Ruby su un server in remoto continua a leggere, altrimenti salta il primo paragrafo "Connessione al Server" e leggi il successivo.

Connessione al Server

Per accedere al server, è necessario conoscere l'indirizzo IP. Avrai anche bisogno dell'username e della password per l'autenticazione. Per connettersi al server come utente root digitare il seguente comando:

ssh [email protected]_DEL_SERVER

Successivamente sarà necessario inserire la password dell'utente root.

Se non utilizzate l'utente root potete connettervi con un'altro nome utente utilizzando lo stesso comando, quindi modificare root con il vostro nome_utente:

ssh [email protected]_DEL_SERVER

Successivamente vi verrà chiesto di inserire la password del vostro utente.

La porta standard per connettersi tramite ssh è la 22, se il vostro server utilizza una porta diversa, sarà necessario specificarla utilizzando il parametro -p, quindi digitare il seguente comando:

ssh [email protected]_DEL_SERVER -p PORTA

Installare Ruby dai repository Ubuntu

Il modo più semplice per installare Ruby su Ubuntu è usando il gestore pacchetti apt. Al momento in cui scrivo, la versione nei repository Ubuntu è 2.7.0, che potrebbe non essere sempre l'ultima versione stabile.

L'installazione è piuttosto semplice. Esegui i seguenti comandi come utente root o utente con privilegi sudo per aggiornare l'indice del pacchetto e installare Ruby:

sudo apt update
sudo apt install ruby-full

Una volta completato, verificare l'installazione stampando la versione di Ruby:

ruby --version

L'output sarà simile al seguente:

ruby 2.7.0p0 (2019-12-25 revision 647ee6f091) [x86_64-linux-gnu]

La tua versione di Ruby potrebbe essere diversa da quella mostrata sopra.

Questo è tutto! Hai installato Ruby con successo sul tuo computer Ubuntu e puoi iniziare a usarlo.

Installare Ruby utilizzando Rbenv

Rbenv è uno strumento da riga di comando leggero che consente di cambiare facilmente le versioni di Ruby.

Per impostazione predefinita, rbenv non gestisce l'installazione di Ruby. Useremo ruby-build per installare Ruby. È disponibile come programma autonomo e come plugin per rbenv.

Lo script ruby-build installa Ruby dal sorgente. Per poter costruire Ruby, installa le librerie e i compilatori richiesti:

sudo apt update
sudo apt install git curl autoconf bison build-essential libssl-dev libyaml-dev libreadline6-dev zlib1g-dev libncurses5-dev libffi-dev libgdbm6 libgdbm-dev libdb-dev

Il modo più semplice per installare lo strumento rbenv è usare lo script della shell di installazione. Eseguire il comando curl per scaricare ed eseguire lo script:

curl -fsSL https://github.com/rbenv/rbenv-installer/raw/master/bin/rbenv-installer | bash

Lo script clona i repository rbenv e ruby-build da GitHub alla directory ~/.rbenv.

Lo script di installazione chiama anche un altro script che verifica l'installazione. L'output dello script sarà simile al seguente:

Running doctor script to verify installation...
Checking for `rbenv' in PATH: not found
  You seem to have rbenv installed in `/home/vagrant/.rbenv/bin', but that
  directory is not present in PATH. Please add it to PATH by configuring
  your `~/.bashrc', `~/.zshrc', or `~/.config/fish/config.fish'.

Per iniziare a usare rbenv, devi aggiungere $HOME/.rbenv/bin al tuo PATH.

Se stai usando Bash:

echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc
echo 'eval "$(rbenv init -)"' >> ~/.bashrc
source ~/.bashrc

Se stai usando Zsh:

echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.zshrc
echo 'eval "$(rbenv init -)"' >> ~/.zshrc
source ~/.zshrc

Eseguire il comando rbenv -v per assicurarsi che l'installazione abbia avuto esito positivo:

rbenv -v
rbenv 1.1.2-30-gc879cb0

Per ottenere un elenco di tutte le versioni di Ruby che è possibile installare con rbenv, digitare:

rbenv install -l
2.5.8
2.6.6
2.7.1
jruby-9.2.11.1
maglev-1.0.0
mruby-2.1.0
rbx-4.15
truffleruby-20.1.0

Only latest stable releases for each Ruby implementation are shown.
Use 'rbenv install --list-all' to show all local versions.

Ad esempio, per installare Ruby versione 2.7.1 e impostarlo come versione globale, digitare:

rbenv install 2.7.1

Rbenv funziona inserendo una directory denominata shim nella parte anteriore del tuo PATH. Questa directory contiene script (shim) il cui compito è intercettare i comandi di Ruby ed eseguire i binari corrispondenti.

Rbenv ti permette di impostare la versione Ruby shell, locale e globale:

  • La versione della shell viene utilizzata nella shell corrente e ha la massima priorità. Può essere definito impostando la variabile d'ambiente RBENV_VERSION usando il comando rbenv shell <ruby-version>.
  • La versione locale è impostata su una base per-directory. Questa versione è scritta nel file .ruby-version. Quando si esegue uno script Ruby, rbenv cerca il file nelle directory corrente e in tutte le directory parenti. Utilizza la versione di Ruby memorizzata nel primo file trovato. Per impostare una versione locale, accedere alla directory ed eseguire il comando rbenv local <ruby-version>.
  • La versione globale viene utilizzata in tutte le shell quando non è impostata alcuna versione locale o shell. Utilizzare rbenv global <ruby-version> per impostare una versione globale.

Non usare sudo per installare le Gems quando Ruby è gestito con rbenv. Ogni versione di Ruby è installata nella directory ~/.rbenv/versions e scrivibile dall'utente.

Installare Ruby tramite RVM

RVM è uno strumento da riga di comando che è possibile utilizzare per installare, gestire e lavorare con più ambienti Ruby.

Installa le dipendenze richieste per compilare Ruby dall'origine:

sudo apt update
sudo apt install curl g++ gcc autoconf automake bison libc6-dev libffi-dev libgdbm-dev libncurses5-dev libsqlite3-dev libtool libyaml-dev make pkg-config sqlite3 zlib1g-dev libgmp-dev libreadline-dev libssl-dev

Esegui i seguenti comandi per aggiungere la chiave GPG e installare RVM:

gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB
curl -sSL https://get.rvm.io | bash -s stable

Per iniziare a utilizzare RVM, caricare le variabili di ambiente di script utilizzando il comando source:

source /etc/profile.d/rvm.sh

Per ottenere un elenco di tutte le versioni di Ruby che è possibile installare con questo strumento, digitare:

rvm list known

Installa l'ultima versione stabile di Ruby con RVM e impostala come versione predefinita:

rvm install ruby
rvm --default use ruby

Verifica che Ruby sia stato installato correttamente stampando il numero di versione:

ruby -v
ruby 2.7.0p0 (2019-12-25 revision 647ee6f091) [x86_64-linux]

Se desideri installare una versione specifica di Ruby, inserisci i comandi seguenti. Sostituisci x.x.x con la versione di Ruby che desideri installare:

rvm install ruby-x.x.x
rvm --default use ruby-x.x.x

Per passare a un'altra versione senza impostarla come Ruby predefinito, immettere:

rvm use ruby-x.x.x

Per ulteriori informazioni su come gestire le installazioni di Ruby con RVM, consultare la relativa pagina della documentazione.

Conclusione

Ti abbiamo mostrato tre modi diversi per installare Ruby su Ubuntu 20.04 LTS Focal Fossa. Il metodo scelto dipende dalle tue esigenze e preferenze. Anche se l'installazione della versione in pacchetto dal repository Ubuntu è più semplice, gli script Rbenv e RVM offrono una maggiore flessibilità nell'uso di diverse versioni di Ruby in base all'utente.