## Preparazione dell'ambiente di sviluppo

Questa è una guida veloce su come installare un ambiente di sviluppo in locale.

Se sei nuovo, ricordati di presentarti in mailing list e richiedere un account
sull'istanza GitLab!

### Installazione delle dipendenze per lo sviluppo su Ubuntu 16.04 o successivi

È possibile installare tutte le dipendenze richieste dal sito web con il
seguente comando, prendendole dai repository di Ubuntu. È necessario avere
Ubuntu 16.04 o superiori installato.

```
$ sudo apt install git python3 python3-pip python3-virtualenv python3-invoke nodejs nodejs-legacy npm
```

Inoltre, è necessario installare `yarn` tramite NPM:

```
$ sudo npm install -g yarn
```

### Installazione delle dipendenze per lo sviluppo su Ubuntu 14.04

Se si ha Ubuntu 14.04, è necessario installare alcune dipendenze fuori dai
repository: `invoke` e `nodejs`. Per prima cosa si installano le dipendenze
presenti:

```
$ sudo apt install git python3 python3-pip python3-virtualenv
```

Poi è possibile installare Invoke da PIP:

```
$ sudo python3 -m pip install invoke
```

È necessario anche installare Nodejs 4:

```
$ apt-key adv --keyserver keyserver.ubuntu.com --recv 68576280
$ apt-add-repository 'deb https://deb.nodesource.com/node_4.x trusty main'
$ apt update
$ apt install nodejs
```

Ed infine, installare `yarn`:

```
$ sudo npm install -g yarn
```

### Creare l'ambiente di sviluppo

Dopo aver installato tutte le dipendenze, è possibile clonare il repository con
il sorgente del sito:

```
$ git clone http://code.ubuntu-it.org/ubuntu-it-web/www.git
$ cd www
```

Dopo, è necessario eseguire Invoke per creare l'ambiente di sviluppo:

```
$ invoke devel
```

Invoke scaricherà tutte le dipendenze aggiuntive necessarie (isolandole nella
directory del sorgente) e creerà l'ambiente virtuale in `build/envs/devel`. Per
attivarlo, bisognerà dare il seguente comando ogni volta che si apre il
terminale (da dentro la directory):

```
$ source build/envs/devel/bin/activate
```
