1 .. -*- coding: utf-8 -*- |
1 .. -*- coding: utf-8 -*- |
2 |
2 |
3 Installation |
3 Installation |
4 ============ |
4 ============ |
5 |
5 |
6 Installation de Cubicweb et de ses dépendances |
6 Installation of `Cubicweb` and its dependancies |
7 ---------------------------------------------- |
7 ----------------------------------------------- |
8 |
8 |
9 `CubicWeb` est disponible via un entrepôt Mercurial utilisant l'extension forest. |
9 `CubicWeb` is available as a Mercurial repository using the forest extension. |
10 Vous devez donc dans un premier temps vous assurer que Mercurial est bien installé |
10 First make sure Mercurial is installed and that the forest extension is |
11 et que vous avez l'extension forest. |
11 available. |
12 |
12 |
13 Installation de Mercurial |
13 Mercurial installation |
14 ````````````````````````` |
14 `````````````````````` |
15 Veuillez vous référer a la documentation en ligne du projet Mercurial_. |
|
16 |
15 |
|
16 Please refer to the project online documentation Mercurial_. |
17 .. _Mercurial: http://www.selenic.com/mercurial/wiki/ |
17 .. _Mercurial: http://www.selenic.com/mercurial/wiki/ |
18 |
18 |
19 Installation de l'extension forest |
19 We also provide in this book a quick guide on how to use |
20 `````````````````````````````````` |
20 Mercurial (:ref:`Mercurial`). |
21 Dans un premier temps, récupérez une copie des sources via: http://hg.akoha.org/hgforest/. |
21 |
22 Ensuite, ajoutez a votre ``~/.hgrc`` les lignes suivantes :: |
22 |
|
23 Installation of the forest extension |
|
24 ```````````````````````````````````` |
|
25 |
|
26 Set up the forest extension by getting a copy of the sources |
|
27 from http://hg.akoha.org/hgforest/ and adding the following |
|
28 lines to your ``~/.hgrc``: :: |
23 |
29 |
24 [extensions] |
30 [extensions] |
25 hgext.forest= |
31 hgext.forest= |
26 # or, if forest.py is not in the hgext dir: |
32 # or, if forest.py is not in the hgext dir: |
27 # forest=/path/to/forest.py |
33 # forest=/path/to/forest.py |
28 |
34 |
29 Récupération des sources |
35 Get `CubicWeb` source code |
30 ```````````````````````` |
36 `````````````````````````` |
31 Clonez la foret dans votre répertoire de travail. |
37 |
|
38 Clone the forest in you working directory. |
32 |
39 |
33 :: |
40 :: |
34 |
41 |
35 hg fclone http://www.logilab.org/hg/forests/cubicweb |
42 hg fclone http://www.logilab.org/hg/forests/cubicweb |
36 |
43 |
37 .. note:: |
44 .. note:: |
38 Nous vous recommandons de créer un lien symbolique vers l'outil ``cubicweb-ctl`` |
45 We recommand you to create a symbolic link to the command ``cubicweb-ctl`` |
39 que vous allez etre amené a utiliser. |
46 as you will use it pretty often. |
40 |
47 |
41 :: |
48 :: |
42 |
49 |
43 $ ln -s /path/to/forest/cubicweb/bin/cubicweb-ctl ~/bin |
50 $ ln -s /path/to/forest/cubicweb/bin/cubicweb-ctl ~/bin |
44 |
51 |
45 Installation de Postgres |
52 Postgres installation |
46 ```````````````````````` |
53 ````````````````````` |
47 Veuillez vous référer a la documentation en ligne du projet Postgres_. |
54 |
|
55 Please refer to the project online documentation Postgres_. |
48 |
56 |
49 .. _Postgres: http://www.postgresql.org/ |
57 .. _Postgres: http://www.postgresql.org/ |
50 |
58 |
51 Vous allez devoir installer les trois paquets suivants: `postgres-8.3`, |
59 You need to install the three following packages: `postgres-8.3`, |
52 `postgres-contrib-8.3` and `postgresql-plpython-8.3`. |
60 `postgres-contrib-8.3` and `postgresql-plpython-8.3`. |
53 |
61 |
54 |
62 |
55 On pourra ensuite installer les paquets suivants : |
63 Then you can install: |
56 |
64 |
57 * `pyro` si vous voulez que l'entrepôt soit accessible via Pyro ou si le client |
65 * `pyro` if you wish the repository is accessible through Pyro |
58 et le serveur ne sont pas sur la même machine (auquel cas il faut installer ce |
66 or if the client and the server are not running on the same machine |
59 paquet sur les machines clientes et serveur) |
67 (in suche case the packages will have to be isntalled on both |
|
68 machines) |
60 |
69 |
61 * `python-ldap` si vous voulez utiliser une source ldap sur le serveur |
70 * `python-ldap` if you plan to use a LDAP source on the server |
62 |
|
63 |
71 |
64 .. _ConfigurationEnv: |
72 .. _ConfigurationEnv: |
65 |
73 |
66 Configuration de l'environnement |
74 Environment configuration |
67 -------------------------------- |
75 ------------------------- |
68 |
76 |
69 [FIXME] |
77 [FIXME] |
70 Ces variables ne sont plus requises pour le bon fonctionnement de `CubicWeb`, non? |
78 Ces variables ne sont plus requises pour le bon fonctionnement de `CubicWeb`, non? |
71 A part rajouter la foret dans le PYTHONPATH, rien de plus ne doit etre fait? |
79 A part rajouter la foret dans le PYTHONPATH, rien de plus ne doit etre fait? |
72 |
80 |
73 Mettez à jour votre variable d'environemment PYTHONPATH afin d'y ajouter |
81 Update the environment variable PYTHONPATH to add to it the path to |
74 le chemin d'acces a votre foret ``cubicweb``. |
82 the forest ``cubicweb``. |
75 |
83 |
76 Ajouter les lignes suivantes à son `.bashrc` ou `.bash_profile` pour configurer |
84 Add the following lines to either `.bashrc` or `.bash_profile` to configure |
77 votre environnement de développement :: |
85 your development environment :: |
78 |
86 |
79 export PYTHONPATH=/full/path/to/cubicweb-forest |
87 export PYTHONPATH=/full/path/to/cubicweb-forest |
80 |
88 |
|
89 //deprecated?? |
81 export ERUDI_REGISTRY=~/etc/erudi.d/ |
90 export ERUDI_REGISTRY=~/etc/erudi.d/ |
82 export ERUDI_TEMPLATES=~/hg/ |
91 export ERUDI_TEMPLATES=~/hg/ |
83 export ERUDI_RUNTIME=/tmp/ |
92 export ERUDI_RUNTIME=/tmp/ |
84 |
93 |
85 Cela suppose que le composant erudi que vous développez est dans un |
94 Cela suppose que le composant erudi que vous développez est dans un |
86 sous-répertoire de *~/hg/* et que vous avez créé le répertoire *~/etc/erudi.d/* |
95 sous-répertoire de *~/hg/* et que vous avez créé le répertoire *~/etc/erudi.d/* |
87 pour que `cubicweb-ctl` y place vos instances de test. |
96 pour que `cubicweb-ctl` y place vos instances de test. |
88 |
97 |
89 .. _ConfigurationPostgres: |
98 .. _ConfigurationPostgres: |
90 |
99 |
91 Configuration Postgres |
100 Postgres configuration |
92 ---------------------- |
101 ---------------------- |
93 * Tout d'abord vous devez initialiser votre base de données Postgres via la |
102 |
94 commande ``initidb``. |
103 * First you have to initialize the database Postgres with the command ``initdb``. |
95 :: |
104 :: |
96 |
105 |
97 $ initdb -D /path/to/pgsql |
106 $ initdb -D /path/to/pgsql |
98 |
107 |
99 Une fois ces paquets installés vous pouvez lancer votre server de base de |
108 Once initialized, you can launch the database server Postgres |
100 données Postgres avec la commande suivante: :: |
109 with the command: :: |
101 |
110 |
102 $ postgres -D /path/to/psql |
111 $ postgres -D /path/to/psql |
103 |
112 |
104 Si vous ne pouvez exécuter cette commande pour des raisons de permissions |
113 If you cannot execute this command due to permission issues, please |
105 assurez-vous que votre utilisateur a droit d'écriture sur les la base de données. |
114 make sure that your username has write access on the database. |
106 |
|
107 :: |
115 :: |
108 |
116 |
109 $ chown username /path/to/pgsql |
117 $ chown username /path/to/pgsql |
110 |
118 |
111 * Création d'un super utilisateur pour la création d'instance (**root**) :: |
119 * Create a superuser for `CubicWeb` instance (**root**) :: |
112 |
120 |
113 createuser -s username |
121 createuser -s username |
114 |
122 |
115 Initialisez le mot de passe de ce superutilisateur ``username`` via |
123 Initialize the password of the superuser you juste created with |
116 ``su - postgres`` puis ``psql``. |
124 ``su - postgres`` and ``psql``. |
117 |
125 |
118 Un mot de passe de connection pour cet utilisateur vous sera demandé. Il |
126 This password will be asked to you later on where you will create an |
119 faudra utiliser ce login / mot de passe à la création d'instance via |
127 instance with `cubicweb-ctl create` |
120 `cubicweb-ctl` |
|
121 |
128 |
122 [XXX] |
129 [XXX] |
123 Est-ce que ces etapes sont vraiment necessaires? |
130 Est-ce que ces etapes sont vraiment necessaires? |
124 sand : lors de l'installation de ma bdd cela n'a pas ete fait |
131 sand : lors de l'installation de ma bdd cela n'a pas ete fait |
125 et il semble que tout aille bien. Doit etre verifie avec les experts. |
132 et il semble que tout aille bien. Doit etre verifie avec les experts. |
126 |
133 |
127 * installation des extensions pour l'index plein texte :: |
134 * installation of plain-text index extension :: |
128 |
135 |
129 cat /usr/share/postgresql/8.1/contrib/tsearch2.sql | psql -U pgadmin template1 |
136 cat /usr/share/postgresql/8.3/contrib/tsearch2.sql | psql -U username template1 |
130 |
137 |
131 * installation du langage plpythonu par défaut :: |
138 * installation of plpythonu language by default :: |
132 |
139 |
133 createlang -U pgadmin plpythonu template1 |
140 createlang -U pgadmin plpythonu template1 |
134 |
141 |
135 |
142 |
136 Configuration Pyro |
143 Pyro configuration |
137 ------------------ |
144 ------------------ |
138 Si vous utilisez Pyro, il est nécessaire d'avoir un serveur de noms Pyro |
|
139 tournant sur votre réseau (par défaut celui-ci est repéré par une requête |
|
140 broadcast). Pour cela il faut soit : |
|
141 |
145 |
142 * le lancer à la main avant le démarrage de erudi avec la commande `pyro-ns` |
146 If you use Pyro, it is required to have a name server Pyro runing on your |
|
147 network (by default it is identified by a broadcast request). |
143 |
148 |
144 * le lancer à la main avant le démarrage de erudi sous forme d'un serveur avec |
149 To do so, you need to : |
145 la commande `pyro-nsd start` |
|
146 |
150 |
147 * éditer le fichier */etc/default/pyro-nsd* pour que le serveur de nom pyro soit |
151 * launch the server manually before starting cubicweb with `pyro-ns` |
148 lancé automatiquement au démarrage de la machine |
152 |
|
153 * launch the server manually before starting cubicweb as a server with |
|
154 `pyro-nsd start` |
|
155 |
|
156 * edit the file ``/etc/default/pyro-nsd`` so that the name server pyro |
|
157 will be launched automatically when the macine fire up |
149 |
158 |
150 |
159 |