Mise en place d'un environnement de développement
Pré-requis : installer Fossil version 2.24 minimum. Sinon vous risquez d'avoir le message server did not reply à cause d'un bug avec les nouvelles versions de Apache.
Attention : les versions de Fossil fournies par Debian Bookworm et Ubuntu (jusqu'à la 24.04) sont trop anciennes et comportent un bug qui fait qu'elles ne fonctionnent pas avec le serveur de Paheko, suite à un correctif de sécurité par Apache (cf. les notes de version de Fossil).
Exécuter les commandes suivantes :
mkdir ~/fossil
cd ~/fossil
# Copier le repository Paheko dans "~/fossil/paheko.fossil" et ouvrir une copie de travail dans "~/fossil/paheko/"
fossil clone https://fossil.kd2.org/paheko/
cd paheko
# Activer les liens symboliques (nécessaire à l'installation)
fossil settings allow-symlinks on
fossil revert
# Télécharger et installer les dépendances
cd src
make deps
make htaccess
make modules
make plugins
Changer de branche
Par exemple pour utiliser la branche dev, lancer fossil update dev depuis le répertoire du repo Fossil.
Aller plus loin avec Fossil
- Fossil, une forge pour DVCS (article LinuxFR)
- Voir le Quickstart Guide
- Livre complet sur l'utilisation de Fossil (PDF, anglais)
- Plugin SublimeText pour voir les modifications d'un fichier dans la marge, compatible avec Fossil
Tester avec le serveur web de PHP
Pour tester Paheko avec le serveur web intégré à PHP lancer : make dev-server
Et se rendre à l'adresse http://localhost:8082/ avec son navigateur web.
Tester avec Apache2
Il est aussi possible de configurer un serveur de test en local avec Apache de cette manière :
cat <<EOF > /tmp/vhost
<Directory /home/$USER/fossil>
Require all granted
AllowOverride all
</Directory>
<VirtualHost *:80>
AssignUserId $USER $USER
ServerName paheko.localhost
DocumentRoot /home/$USER/fossil/paheko/src/www
</VirtualHost>
EOF
sudo su -
apt install libapache2-mpm-itk php-cli libapache2-mod-php php-curl php-mbtstring php-zip php-int php-sqlite3
echo "127.0.0.1 paheko.localhost" >> /etc/hosts
cp /tmp/vhost /etc/apache2/sites-available/paheko.conf
a2ensite paheko
apache2ctl restart
Vous devriez ensuite avoir accès à votre installation locale sur http://paheko.localhost/
Tester l'envoi de mail, avec Exim4
Pour tester l'envoi de mail en local, il est conseillé de configurer le serveur de mails afin de rediriger tous les mails vers votre boîte mail.
Voici un exemple pour que tous les mails envoyés de votre machine locale soient redirigés vers votre boîte mail en local, quel que soit leur destinataire.
- Installer Exim 4 :
sudo apt install exim4 exim4-config mutt - Lancer la configuration :
sudo dpkg-reconfigure exim4-config - Conserver les valeurs par défaut, sauf :
- "Type de configuration", choisir Distribution locale seulement
- "Méthode de distribution du courrier" choisir Format MailDir
- "Faut-il séparer la configuration en plusieurs fichiers ?", répondre Oui
- Exécuter la commande suivante :
cat <<EOF > /tmp/exim-conf
catch_all_outgoing:
driver = redirect
data = $USER
EOF
sudo cp /tmp/exim-conf /etc/exim4/conf.d/router/100_00_local_only
sudo update-exim4.conf
Maintenant, normalement tout mail envoyé depuis Paheko (ou autre appli PHP) devrait arriver dans votre boîte mail perso locale, consultable en lançant mutt, ou avec un autre client mail (KMail, Thunderbird, etc.) en utilisant les dossiers locaux.