--- Description de l'installation de euphorik --\r
-\r
-Voici les différentes étapes décrivant l'installation du site euphorik. Certaines données sont a adaptées en fonction des besoins. L'installation est décrite pour le système d'exploitation Debian.\r
-\r
-* On admet que le dossier de base est "/euphorik".\r
-* On admet que l'utilisateur courant est "toto" et qu'il possède "/euphorik"\r
-* Tout ce qui commence par un '$' correspond à une ligne de commande tapée dans le shell de l'OS.\r
-* Tout ce qui commence par un '>' correspond à une instruction dans le shell de erlang.\r
-\r
-\r
-1. Installer Yaws\r
- a) $apt-get install yaws\r
-\r
-2. Configurer Yaws\r
- a) Ajouter les lignes suivantes dans /etc/yaws/yaws.conf :\r
- - "ebin_dir = /euphorik/modules/ebin"\r
- - "include_dir = /euphorik/modules/include"\r
- b) Le serveur virtuel est définit comme ceci dans /etc/yaws/conf.d/localhost.conf :\r
- <server localhost>\r
- port = 8081\r
- listen = 0.0.0.0\r
- docroot = /euphorik\r
- allowed_scripts = [yaws]\r
- appmods = <request, euphorik_requests>\r
- </server>\r
- c) Editer '/etc/init.d/yaws' et remplacer cette ligne :\r
- script="$DAEMON -I $YAWS_ID $@"\r
- par celle ci :\r
- script="$DAEMON --erlarg \"-smp auto\" --sname yaws --mnesiadir '\"/euphorik/BD\"' -I $YAWS_ID $@"\r
- FIXME : trouver une méthode plus élégante.\r
-\r
-3. Créer la base de donnée\r
- TODO\r
+-- Description de l'installation de Euphorik --
+
+Voici les différentes étapes décrivant l'installation du site euphorik. Certaines données sont a adaptées en fonction des besoins. L'installation est décrite pour le système d'exploitation Debian.
+
+* On admet que le dossier de base est "/euphorik".
+* On admet que l'utilisateur courant est "toto" et qu'il possède "/euphorik"
+* Tout ce qui commence par un '$' correspond à une ligne de commande tapée dans le shell de l'OS.
+* Tout ce qui commence par un '>' correspond à une instruction dans le shell de erlang.
+
+
+1. Installer Yaws
+ a) $apt-get install yaws
+
+2. Configurer Yaws
+ a) Ajouter les lignes suivantes dans /etc/yaws/yaws.conf :
+ - "ebin_dir = /euphorik/modules/ebin"
+ - "include_dir = /euphorik/modules/include"
+ b) Le serveur virtuel est définit comme ceci dans /etc/yaws/conf.d/localhost.conf :
+ <server localhost>
+ port = 8081
+ listen = 0.0.0.0
+ docroot = /euphorik
+ allowed_scripts = [yaws]
+ appmods = <request, euphorik_requests>
+ start_mod = euphorik_daemon
+ </server>
+ c) Editer '/etc/init.d/yaws' et remplacer cette ligne :
+ script="$DAEMON -I $YAWS_ID $@"
+ par celle ci :
+ script="$DAEMON --sname yaws --mnesiadir \"/euphorik/var/BD\" -I $YAWS_ID $@"
+ FIXME : trouver une méthode plus élégante.
+
+3. Créer la base de donnée
+ a) Arreter Yaws (en root) :
+ $/etc/init.s/yaws stop
+ b) Lancer un noeud Erlang
+ - Se placer dans le répertoire /euphorik/modules/ebin
+ - Executer :
+ $erl -sname yaws -mnesia dir '"/euphorik/var/BD"'
+ c) Charger le module :
+ >l(euphorik_bd).
+ d) Créer la base :
+ >euphorik_bd:create().
+ e) Démarrer Yaws (en root) :
+ $/etc/init.s/yaws start
+
+4. Adminisatration du site Euphorik
+ a) Connexion au noeud "yaws"
+ erl -sname gb
+ puis dans la console :
+ CTRL-G
+ r yaws@overnux
+ c 2
+ Pour plus d'infos : http://www.ejabberd.im/interconnect-erl-nodes
+ Il est possible de connecter un shell directement sur le noeud de yaws comme ceci :
+ erl -sname gb -remsh yaws@overnux
+
+ b) Utiliser les outils des modules
+ - Par exemple :
+ >euphorik_minichat:messages(10).
+ pour voir les 10 derniers messages
+
+ c) Ancienne méthode de connexion (plus compliqué)
+ - Le cookie de Yaws (/var/run/yaws/.erlang.cookie ou /var/cache/yaws/.erlang.cookie) et celui de l'utilisateur courant (~/.erlang.cookie) doit être le même.
+ (si le cookie de yaws est modifié il faut relancer yaws).
+ - Se placer dans le répertoire /euphorik/modules/ebin
+ - Executer :
+ $erl -sname toto
+ où "toto" est le nom du noeud (tout sauf "yaws")
+ - Charger le module du minichat :
+ >l(euphorik_minichat)
+ - Se connecter au noeud yaws :
+ >euphorik_minichat:connect()
+ la valeur retournée doit être : {ok,[yaws@overnux]}
+
+ d) Informations sur la mémoire consommée :
+ Mémoire totale (ko) :
+ trunc(element(2, lists:nth(1, memory())) / 1024).
+ voir c:i() également