Manuel d'apprentissage
⁂
Installation
Dans ce chapitre, nous nous intéressons à l'installation de Hoa, ainsi qu'à l'installation de PHP (normalement pas nécessaire sur tout système digne de ce nom).
Table des matières
Installer Hoa
Nous nous intéressons à l'installation de Hoa à travers de multiples mécanismes.
Confort maximal
Pour les systèmes respectants le
Filesystem Hierarchy
Standard (dans sa version 2.2 minimum), Hoa préfèrera
s'installer dans le dossier /usr/local/lib/hoa. Pour les
autres systèmes, comme par exemple Windows, Hoa préfèrera s'installer dans
le dossier C:\Program Files\Hoa.
Depuis un dépôt Mercurial
Mercurial est un logiciel puissant pour gérer les sources. C'est le choix qu'a fait Hoa pour gérer ses sources et ses outils. Tous les dépôts, ainsi que leur description, sont visibles sur l'index des dépôts.
Pour installer Hoa à partir de Mercurial, il suffit de faire :
$ hg clone http://hg.hoa-project.net/Central /usr/local/lib/hoa
Et c'est terminé !
Pour mettre à jour Hoa, deux commandes suffisent :
$ cd /usr/local/lib/hoa
$ hg pull
$ hg update
Depuis une archive compressée
Hoa propose des archives compressées sous plusieurs formats : 7z, tar.bz2, tar.gz et zip. Ces archives sont accessibles de deux manières :
- via HTTP : http://download.hoa-project.net/ ;
- via WebDAV : http://dav.hoa-project.net/ (en invité et en lecture seule).
Les archives sont rangées suivant l'ordre établit par les dépôts. Les
archives en *.next.format contiennent le tronc, sinon
elles correspondent à une version étiquettées. Plusieurs archives sont
produites par jours concernant le tronc.
Depuis une archive Phar
PHP fournit son propre système d'archive : PHP Archive (Phar), afin de distribuer plus uniformément ses programmes écrits en PHP (ou avec d'autres langages). Ce format est devenu standard avant PHP5.3, qui est la version minimum pour utiliser Hoa. Il est donc naturel de le proposer.
Ce format d'archive est disponible aux mêmes endroits que les archives compressées, toutefois, l'archive est exécutable :
$ mkdir -p /usr/local/lib/hoa
$ cd !!$
$ wget http://download.hoa-project.net/Central/Hoa.next.phar
$ php Hoa.next.phar
Usage : Hoa.next.phar <options>
Options :
-m, - -metadata : Print all metadata.
-t, - -test : Test if Hoa is in this Phar.
-s, - -signature : Print signature.
-p, - -phar : Phar informations.
-e, - -extract : Extract Hoa in the current directory.
-h, - -help : This help.
-?, - -help : This help.
Si le résultat obtenu n'est pas celui escompté, il faudra modifier le
paramètre detect_unicode dans votre fichier
php.ini pour le passer à 0. Ou sinon,
directement :
$ php -d detect_unicode=0 Hoa.next.phar
Usage : Hoa.next.phar <options>
Options :
…
Il est conseillé d'extraire Hoa avec l'option -e ou
--extract. Cela va extraire Hoa au même niveau que
l'archive :
$ php Hoa.next.phar --extract
Extracted in /usr/local/lib/hoa
Tester l'installation
Pour tester l'installation de Hoa, rien de plus simple :
<?php
require '/usr/local/lib/hoa/Core/Core.php';
var_dump(HOA);
ou directement en ligne de commande :
$ php -r "require '/usr/local/lib/hoa/Core/Core.php'; var_dump(HOA);"
À l'exécution, nous devons voir bool(true). Si c'est le cas,
c'est que Hoa est correctement installé.
Installer PHP
Toutes les informations sont présentes dans le manuel de PHP : Installation and Configuration.
Architecture de Hoa
L'architecture de Hoa est très simple :
Bin, les outils ;Core, le noyau ;Library, les bibliothèques standards (la famille Hoa) ;Module, les bibliothèques utilisateurs (la famille Hoathis) ;Stub, permet d'exporter Hoa sous différents formats.
Hoa est conçu selon le principe un ensemble de bibliothèques pour plusieurs applications, i.e. nous plaçons le dossier Hoa a un seul endroit et toutes les applications vont travailler dessus.
Nous allons ainsi commencer par explorer un peu les fonctionnalités du noyau avant d'installer notre première application.
Hoa en ligne de commande
Lorsque nous exécutons le script hoa (ou
hoa.bat), un écran d'accueil apparaît :
$ cd Bin/
$ ./hoa
// Homescreen.
Sur toutes les commandes, nous trouverons les options -h,
--help ou encore -?, pour obtenir de l'aide. Ainsi,
nous apprendrons que les commandes sont constituées d'un groupe et d'un nom en
exécutant :
$ ./hoa --help
Par exemple, pour afficher l'arbre du protocole hoa://, nous
ferons :
$ ./hoa protocol:tree
hoa://
Application
Public
Bin
Data
Etc
Configuration
Locale
…
Il sera plus confortable de placer le script hoa (ou
hoa.bat) dans le $PATH afin qu'il soit
accessible depuis n'importe où sur le disque. En effet, comme Hoa
s'installe une fois pour être utilisé plusieurs fois, il est logique que
son script soit accessible partout. Pour cela, sous Unix, il faudra
modifier la variable $PATH dans
~/.shellrc (par exemple : ~/.bashrc,
~/.zshrc etc.) :
export PATH=/usr/local/lib/hoa/Bin:$PATH
Nous rechargeons notre profil et le script sera disponible partout :
$ source ~/.zshrc
$ hoa
// Homescreen.
Pour Windows, il faudra consulter Microsoft TechNet car la manipulation est moins triviale.
