Table of Contents
Paheko
Ayant co-fondé une association il y a peu (fin août 2024) je me suis penché sur sa gestion administrative et notamment comptable, ayant envie de faire les choses proprement. Je me voyais mal utiliser un tableur, un outil de compta personnelle libre (Grisbi, GNUCash et autre c'est assez imbuvable je trouve. Et pourtant j'ai un BEP Métiers de la Comptabilité 😁).
Kécécé Paheko
Paheko (ex Garradin) est un logiciel libre de gestion d'association. Il permet de gérer les membres, les activités, la gestion des documents, la comptabilité et le site web d'une association. Écrit en PHP, il fonctionne sur un serveur Apache2 et une base SQLite.
Comme souvent sur les solutions libres, deux possibilités :
- Un hébergement fourni par Paheko, essai libre avec des fonction limités ou avec une contribution équivalente à 0,4% des recettes annuelles de l'association.
- En auto-hébergement, soit “hors ligne” (assistant d'installation pour Linux (Debian et consorts) et Windows) ou sur un serveur.
Étant du métier, j'ai essayé le logiciel en “hors ligne” puis installé sur un serveur Proxmox à mon domicile.
Liens
Installation de Paheko sous Debian 12
Installation réalisée sous Proxmox 8.2.4 dans un conteneur LXC Debian 12. Peut-être que les plus barbus préfèrerons Docker, moi je fais avec ce que je connais.
Procédure issue des documentations suivantes :
Installation des pré-requis
Paheko a besoin de PHP 7.4 ou supérieur, SQLite3, d'Apache et d'un certains nombres de paquets supplémentaires.
Je vous épargne les apt update et upgrade de bonne mesure, vous n'êtes pas des sauvages.
apt install apache2 php php-{sqlite3,intl,cli,imagick,mbstring,gnupg} libapache2-mod-php -y
Optionnellement vous pouvez installer mupdf-tools
et gnupg
:
apt install mupdf-tools gnupg -y
Installation de Paheko
Trois choix s'offre à vous :
- Le paquet Debian.
- La méthode automatisée avec un fichier
install.php
qui télécharge tous les fichiers - Installer à la mano comme un barbu.
Toutes ces méthodes sont détaillées sur la page Installer Paheko.
Ici, je vais partir sur le paquet Debian parce que flemme. Je verrais peut-être plus tard pour faire quelque chose de propre, si le logiciel sort de l'usage interne à mon domicile.
On récupère donc le paquet Debian depuis la page Installer Paheko et on l'installe :
wget https://fossil.kd2.org/paheko/uv/paheko-x.x.xx.deb
dpkg -i paheko*.deb
Les trucs de serveur web
On vérifie que les modules PHP sont bien activés :
phpenmod sqlite3 imagick intl gnupg
On active les modules Apache :
a2enmod "php*" rewrite
systemctl restart apache2
Le module rewrite
n'est pas indiqué dans la procédure officielle mais j'ai eu des surprises (ça déconnait grave) avant son activation.
On créé le vHost pour Apache, par exemple paheko.conf
dans /etc/apache2/site-available/paheko.conf
en prenant soin de modifier le domaine :
<VirtualHost *:80>
ServerName paheko.domaine.truc
DocumentRoot /usr/share/paheko/www
Include /usr/share/paheko/apache-vhost.conf
<Directory /usr/share/paheko/www>
AllowOverride None
Require all granted
</Directory>
</VirtualHost>
A noter que pour ma config qui fonctionne pour l'instant uniquement sur mon réseau local, j'ai ajouté la un ServerAlias
suivi de l'IP de la VM, ce qui donne :
<VirtualHost *:80>
ServerName asso.paheko.local
ServerAlias 192.168.1.245
DocumentRoot /usr/share/paheko/www
Include /usr/share/paheko/apache-vhost.conf
<Directory /usr/share/paheko/www>
AllowOverride None
Require all granted
</Directory>
</VirtualHost>
Et on peut vérifier la config pour voir si Apache ne hurle pas puis on active le vHost :
apache2ctl configtest
a2ensite paheko
systemctl reload apache2
Et hop ! Si tout se passe bien vous devriez arriver sur la page d'accueil de Paheko !
Envoi des mails
Sur cette maquette de prod, je suis passé par DMA, sur les conseils d'un copainternet, pour l'envoi des mails. Moins pénible à paramétrer que postfix
.
apt install dma mailutils
Dans /etc/dma/dma.conf
:
# Serveur SMTP
SMARTHOST mail.trucmuche.com
# Port à adapter
PORT 465
# Le fichier d'authentification SMTP
AUTHPATH /etc/dma/auth.conf
# TLS/SSL
SECURETRANFER
# Si STARTTLS
STARTTLS
# Si modif du MAILNAME lancer dpkg-reconfigure dma
MAILNAME /etc/mailname
# Pour masquer l'identifiant du serveur serveur par un vrai mail
MASQUERADE adresse@ledomaine.truc
Et dans '/etc/dma/auth.conf
' :
# Format : Compte|Serveur SMTP:Mot de passe
adresse@ledomaine.truc|mail.trucmuche.com:MotDePasseTopSecure
Par exemple pour Infomaniak j'ai dans dma.conf
:
SMARTHOST mail.infomaniak.com
PORT 465
# Le fichier d'authentification SMTP
AUTHPATH /etc/dma/auth.conf
SECURETRANFER
MAILNAME /etc/mailname
MASQUERADE mail@mondomaine.tld
et dans auth.conf
:
mail@mondomaine.tld|mail.infomaniak.com:Motdepasse123!
Tester avec mail -s “Test” destinataire@truc.tld «< “Wow un super mail !”
et depuis Paheko.