Ceci est une ancienne révision du document !
Odoo
Installation
Comme je compte développer pour Odoo, j'ai voulu mettre en place un chroot et compiler Odoo dedans. Pour avoir quelque chose de facilement sauvegardable et réplicable.
chroot
Les détails sur la configuration d'une Debian dans un chroot sont sur cette page. Voici un résumé :
# debootstrap --arch=amd64 --include=locales-all stretch chroot/debian-stretch http://ftp.be.debian.org/debian/
$ vim launch-debian-stretch.sh
#!/bin/bash
cd /home/simon/chroot/debian-stretch
sudo mount --bind /proc proc
sudo mount --bind /sys sys
sudo chroot . /bin/bash
sudo umount sys
sudo umount proc
$ chmod +x launch-debian-stretch.sh
Pour se connecter à l'installation “chrootée” :
# ./launch-debian-stretch.sh
Configuration avant d'installer Odoo
Une fois sur la Debian “chrootée”, il faut installer “sudo” (utilisé dans les exemples du livre “Odoo 10 Development Essentials”)
# apt install sudo
Création d'un user “odoo” et initialisation du mot de passe :
# useradd -m -g sudo -s /bin/bash odoo
# passwd odoo
Entrez le nouveau mot de passe UNIX :
Retapez le nouveau mot de passe UNIX :
passwd: password updated successfully
Connexion sur le compte “odoo” et vérifications :
root@laptop:/# su odoo
odoo@laptop:/$ whoami
odoo
odoo@laptop:/$ echo $HOME
/home/odoo
Installer les prérequis à Odoo
Donc, sur notre installation “chroot”, on installe les prérequis pour commencer à travailler avec Odoo.
# apt install git curl
Installation de NPM :
# curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
## Installing the NodeSource Node.js v8.x repo...
## Populating apt-get cache...
+ apt-get update
Ign:1 http://ftp.be.debian.org/debian stretch InRelease
Atteint:2 http://ftp.be.debian.org/debian stretch Release
Lecture des listes de paquets... Fait
## Installing packages required for setup: apt-transport-https lsb-release...
+ apt-get install -y apt-transport-https lsb-release > /dev/null 2>&1
## Confirming "stretch" is supported...
+ curl -sLf -o /dev/null 'https://deb.nodesource.com/node_8.x/dists/stretch/Release'
## Adding the NodeSource signing key to your keyring...
+ curl -s https://deb.nodesource.com/gpgkey/nodesource.gpg.key | apt-key add -
OK
## Creating apt sources list file for the NodeSource Node.js v8.x repo...
+ echo 'deb https://deb.nodesource.com/node_8.x stretch main' > /etc/apt/sources.list.d/nodesource.list
+ echo 'deb-src https://deb.nodesource.com/node_8.x stretch main' >> /etc/apt/sources.list.d/nodesource.list
## Running `apt-get update` for you...
+ apt-get update
Ign:1 http://ftp.be.debian.org/debian stretch InRelease
Atteint:2 http://ftp.be.debian.org/debian stretch Release
Réception de:4 https://deb.nodesource.com/node_8.x stretch InRelease [4.647 B]
Réception de:5 https://deb.nodesource.com/node_8.x stretch/main Sources [762 B]
Réception de:6 https://deb.nodesource.com/node_8.x stretch/main amd64 Packages [1.008 B]
6.417 o réceptionnés en 0s (7.096 o/s)
Lecture des listes de paquets... Fait
## Run `apt-get install nodejs` (as root) to install Node.js v8.x and npm
# apt install nodejs
Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances
Lecture des informations d'état... Fait
The following additional packages will be installed:
libpython-stdlib libpython2.7-minimal libpython2.7-stdlib python
python-minimal python2.7 python2.7-minimal
Paquets suggérés :
python-doc python-tk python2.7-doc binutils binfmt-support
Les NOUVEAUX paquets suivants seront installés :
libpython-stdlib libpython2.7-minimal libpython2.7-stdlib nodejs
python python-minimal python2.7 python2.7-minimal
0 mis à jour, 8 nouvellement installés, 0 à enlever et 0 non mis à jour.
Il est nécessaire de prendre 16,6 Mo dans les archives.
Après cette opération, 74,3 Mo d'espace disque supplémentaires seront utilisés.
Souhaitez-vous continuer ? [O/n]
Réception de:1 http://ftp.be.debian.org/debian stretch/main amd64 libpython2.7-minimal amd64 2.7.13-2 [389 kB]
Réception de:2 http://ftp.be.debian.org/debian stretch/main amd64 python2.7-minimal amd64 2.7.13-2 [1.383 kB]
Réception de:3 https://deb.nodesource.com/node_8.x stretch/main amd64 nodejs amd64 8.7.0-1nodesource1 [12,5 MB]
Réception de:4 http://ftp.be.debian.org/debian stretch/main amd64 python-minimal amd64 2.7.13-2 [40,5 kB]
Réception de:5 http://ftp.be.debian.org/debian stretch/main amd64 libpython2.7-stdlib amd64 2.7.13-2 [1.895 kB]
Réception de:6 http://ftp.be.debian.org/debian stretch/main amd64 python2.7 amd64 2.7.13-2 [285 kB]
Réception de:7 http://ftp.be.debian.org/debian stretch/main amd64 libpython-stdlib amd64 2.7.13-2 [20,0 kB]
Réception de:8 http://ftp.be.debian.org/debian stretch/main amd64 python amd64 2.7.13-2 [154 kB]
16,6 Mo réceptionnés en 11s (1.488 ko/s)
E: Impossible d'écrire le journal (Est-ce que /dev/pts est monté ?) - posix_openpt (19: Aucun périphérique de ce type)
Sélection du paquet libpython2.7-minimal:amd64 précédemment désélectionné.
(Lecture de la base de données... 20634 fichiers et répertoires déjà installés.)
Préparation du dépaquetage de .../0-libpython2.7-minimal_2.7.13-2_amd64.deb ...
Dépaquetage de libpython2.7-minimal:amd64 (2.7.13-2) ...
Sélection du paquet python2.7-minimal précédemment désélectionné.
Préparation du dépaquetage de .../1-python2.7-minimal_2.7.13-2_amd64.deb ...
Dépaquetage de python2.7-minimal (2.7.13-2) ...
Sélection du paquet python-minimal précédemment désélectionné.
Préparation du dépaquetage de .../2-python-minimal_2.7.13-2_amd64.deb ...
Dépaquetage de python-minimal (2.7.13-2) ...
Sélection du paquet libpython2.7-stdlib:amd64 précédemment désélectionné.
Préparation du dépaquetage de .../3-libpython2.7-stdlib_2.7.13-2_amd64.deb ...
Dépaquetage de libpython2.7-stdlib:amd64 (2.7.13-2) ...
Sélection du paquet python2.7 précédemment désélectionné.
Préparation du dépaquetage de .../4-python2.7_2.7.13-2_amd64.deb ...
Dépaquetage de python2.7 (2.7.13-2) ...
Sélection du paquet libpython-stdlib:amd64 précédemment désélectionné.
Préparation du dépaquetage de .../5-libpython-stdlib_2.7.13-2_amd64.deb ...
Dépaquetage de libpython-stdlib:amd64 (2.7.13-2) ...
Paramétrage de libpython2.7-minimal:amd64 (2.7.13-2) ...
Paramétrage de python2.7-minimal (2.7.13-2) ...
Linking and byte-compiling packages for runtime python2.7...
Paramétrage de python-minimal (2.7.13-2) ...
Sélection du paquet python précédemment désélectionné.
(Lecture de la base de données... 21380 fichiers et répertoires déjà installés.)
Préparation du dépaquetage de .../python_2.7.13-2_amd64.deb ...
Dépaquetage de python (2.7.13-2) ...
Sélection du paquet nodejs précédemment désélectionné.
Préparation du dépaquetage de .../nodejs_8.7.0-1nodesource1_amd64.deb ...
Dépaquetage de nodejs (8.7.0-1nodesource1) ...
Traitement des actions différées (« triggers ») pour mime-support (3.60) ...
Paramétrage de nodejs (8.7.0-1nodesource1) ...
Paramétrage de libpython2.7-stdlib:amd64 (2.7.13-2) ...
Paramétrage de python2.7 (2.7.13-2) ...
Paramétrage de libpython-stdlib:amd64 (2.7.13-2) ...
Paramétrage de python (2.7.13-2) ...
Odoo a apparemment besoin de “less” (qui n'a rien à voir avec less…).
# npm install -g less less-plugin-clean-css
/usr/bin/lessc -> /usr/lib/node_modules/less/bin/lessc
+ less@3.0.0-alpha.3
+ less-plugin-clean-css@1.5.1
added 17 packages in 8.182s
Installer Odoo
root@laptop:/# su odoo
odoo@laptop:/$ cd $HOME/
odoo@laptop:~$ ls
odoo@laptop:~$ mkdir ~/odoo-dev
odoo@laptop:~$ cd odoo-dev/
odoo@laptop:~/odoo-dev$ git clone https://github.com/odoo/odoo.git -b 10.0 --depth=1
Clonage dans 'odoo'...
remote: Counting objects: 23386, done.
remote: Compressing objects: 100% (18552/18552), done.
remote: Total 23386 (delta 7413), reused 11138 (delta 4087), pack-reused 0
Réception d'objets: 100% (23386/23386), 111.17 MiB | 420.00 KiB/s, fait.
Résolution des deltas: 100% (7413/7413), fait.
Extraction des fichiers: 100% (21207/21207), fait.