-- 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 : port = 8081 listen = 0.0.0.0 docroot = /euphorik allowed_scripts = [yaws] appmods = c) Editer '/etc/init.d/yaws' et remplacer cette ligne : script="$DAEMON -I $YAWS_ID $@" par celle ci : script="$DAEMON --erlarg \"-smp auto\" --sname yaws --mnesiadir '\"/euphorik/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/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. Administrer le site Euphorik a) Connexion au noeud "yaws" - 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]} b) Utiliser les outils des modules - Par exemple : >euphorik_minichat:messages(10). pour voir les 10 derniers messages