[Paheko] ERP for non profit organization

Autant que je me souvienne, la migration s’est mal passée car il y a eu une coupure de courant pendant cette opération.
J’ai repris l’installation et admin est resté en admin_legacy sous yunohost, mais toujours actif sur Debian.

Je pense avoir trouvé l’explication pour les messages d’erreur

/bin/sh: 1: paheko__2: not found

crontab demande l’utilisateur au moment d’éditer le cron ;
#crontab -u paheko__2 -e
et génère le fichier paheko__2 dans /var/spool/cron/crontabs contenant les tâches cron.
Ce fichier sera exécuté avec le nom de fichier comme nom d’utilisateur.
Donc paheko__2 entre les périodes et la commande est considérée comme une commande shell non trouvée.

Faut-il garder le fichier dans /etc/cron.d/APP ou utiliser crontab -u APP -e ?

Euh, je voulais écrire
__APP__

Je crois que c’était une grosse source de problème par la suite…

Je crois que ce n’est pas du tout r tout raisonnable tout cela…

~# ls /var/spool/cron/crontabs/ 
root
~# ls -l /var/spool/cron/crontabs/
total 4
-rw------- 1 root crontab 1364 Jun  4  2023 root

Je n’ai absolument aucun cron ici et cela appartient à root

Normalement le seul crontab qui est important est celui de l’application /etc/cron.d/paheko__2 et il devrait être exécuter par root et équivalent à la commande sudo -u paheko__2 /usr/bin/php8.2 /var/www/paheko__2/scripts/cron.php puisque elle et dans ce cron.

Je crois que le gros problème est d’avoir encore un utilisateur admin dans yunohost depuis la migration. C’est à mon avis la piste à creuser, car cela peux provoquer plusieurs incompatibilités.

Merci de ta réponse, et tu as absolument raison.
J’ai relu avec attentionles pages de manuel et j’en conclus que j’ai raconté n’importe quoi cette nuit (la fatigue sans aucun .doute).
J’ai rétabli la situation ce matin et tout est propre.

Après de longues tergiversations, un fichier config.local.user.php pour éditer et garder des configurations personnelles sera présent dès la version 1.3.5~ynh2 dans le dossier /home/yunohost.app/paheko(ou paheheko__x)/data/.

Pour une nouvelle installation, ce fichier sera pris en compte après une mise à jour de l’application, par exemple en forçant sa mise à jour:
sudo yunohost app upgrade paheko -F

Ce fichier ne sera pas écrasé après une mise à jour.
Prenez en compte aussi que le dossier /home/yunohost.app/paheko(ou paheheko__x) n’est pas supprimé, même après la suppression de l’application, il faut le faire manuellement.

Bonjour et bonne année à tous. J’ai remis en ordre de marche les enregistrememnts dns (il faut des enregistrements TEXT pour DKIM, DMARK et SPF… chez mon fournisseur)
Tout marche correctement maintenant. Maerci à Rodinux pour sa patience et son attention.

Merci @yves.33.54 , content que ce soit enfin résolu !! Bonne année à toi aussi.

Est-ce que certain d’entre vous ont réussi à l’utiliser ?

Chez moi, ça ne fonctionne pas, ni avec les jetons générés dans les paramètres supplémentaires, ni avec le jeton maître se trouvant dans /var/www/paheko/config.local.php (qui est pourtant bien lu car il apparaît dans /admin/config/server/, d’ailleurs le mot de passe y apparaît en clair, ce n’est pas judicieux à mon avis).

Dans les deux cas, avec une requete curl ou via la library requests de pyhton, dans les deux cas, j’ai une erreur 401:

<html>
<head><title>401 Authorization Required</title></head>
<body>
<center><h1>401 Authorization Required</h1></center>
<hr><center>nginx</center>
</body>
</html>

Salut,
fonction pas essayé encore. Peut-tu m’en dire en peu plus ?

Je viens de faire un essai de base. ajouté une API juste en lecture et télécahrgé la base de données avec la commande
https://user_api:password_api@paheko.domaine.tld/api/download -o association.sqlite

et ça a marché…

Chez moi non. J’ai peut-être un mauvais paramétrage.

Attention cela dit, avec l’option -o, on ne voit pas s’il y a une erreur, ça télécharge la réponse d’erreur dans le fichier association.sqlite. J’ai déjà mis du temps à comprendre ça…

Je vais essayer de comprendre mieux ça dans les prochains jours, j’aurai de quoi en dire +.

Oui, je confirme le même constat, donc en effet ça n’a pas marché comme voulu…
Je me demande si il ne faudrait pas simplement commenter le custom_portal.js dnas le fichier nginx.

1 Like

Plus complexe on dirait… Est-ce qu’il n’y aurait pas un problème du côté de nginx ???

Bonjour à l’équipe Paheko sur Yunohost.
Je viens de voir que la 1.3.6 est dans les starting-blocks pour Yunohost.
Je voudrais partager un config.local qui marche bien (après tous les pb que j’ai eu en fin 2023…)
Cela concerne essentiellement la gestion des couriers et les tâches cron.
Je précise que je n’ai sur le serveur de production qu’une seule instance de paheko et que RoundCube est la seule autre appli installée.
Voici un extrait du contenu
const SQLITE_JOURNAL_MODE = ‘WAL’;
const ENABLE_UPGRADES = false;
const USE_CRON = true;
const SMTP_HOST = false; ----> utilisation de localhost comme adresse de serveur de courrier dans Paheko (cf doc Paheko)
const SMTP_PORT = 25;
const SMTP_USER = ‘paheko’; —> C’est le user créé lors de l’installation de paheko
const SMTP_PASSWORD = ###hidden###‘’;
const SMTP_SECURITY = ‘STARTTLS’;
const SMTP_HELO_HOSTNAME = ‘bdd.amitiessmj.fr’;—> c’est le sous-domaine sur lequel eqt installé Paheko
const MAIL_RETURN_PATH = ‘paheko@bdd.amitiessmj.fr’;
const MAIL_SENDER = ‘paheko@amitiessmj.fr’;
Pour la gestion des rebonds (mails non distribués apparaissant dans l’onglet “Adresses rejetées”, j’ai créé un script qui lit toutes les secondes le contenu un dossier "Adresses rejetées et appelle le script correspondant de paheko. Utilisez-vous une solution plus simple ?
Bonne soirée et merci à tous les développeurs de Yunohost pour leur travail et la qualité des résultats.
Yves

1 Like

C’est là que ne comprends pas vraiment.
Le paquet est censé ajouter des règles pour postfix dans /etc/postfix/app_senders_login_maps et utiliser le nom de domaine de l’application. Si on ajoute bien les champs mails MX, DKIM et _dmarc du domaine, il utilise son serveur SMTP…

Salut et merci beaucoup pour votre contribution.
On m’a confié la gestion du site web d’une association à but scientifique.
Les besoins pour le site :

  • un site Web classique présentant l’association, ses activités, l’agenda, les événements, l’actualité scientifique, etc…
  • un espace membre où il est possible de s’autoenregistrer et payer la cotisation en ligne
  • pour les événements, tout le monde peut participer après paiement de frais d’inscription à cet événement
  • possibilité d’envoyer des articles scientifiques avec des reviewers qui vont évaluer ces travaux qui vont être présentés à ces événements (je pense que “ojs” est plus adaptée à cette tâche)

Ça revient à faire cohabiter 3 solutions (cms, paheko, ojs), mais je suis preneur d’autres propositions.

J’oublie des détails mais en gros, c’est le besoin principal. Je ne sais pas si paheko convient à ce projet. Je serais reconnaissant de m’éclairer. Merci encore

Pour paheko, il est possible de gérer les adhésions et des activités, mais ne gère pas le paiement en ligne…

1 Like

Bonjour à tous,
Rodinux a soulevé un souci concernant l’utilisation de l’API de Paheko.
J’ai le même souci, à savoir : tout appel à l’API génère le retour ci-dessous :

<html>
<head><title>401 Authorization Required</title></head>
<body>
<center><h1>401 Authorization Required</h1></center>
<hr><center>nginx</center>
</body>
</html>

Après plusieurs essais, j’ai trouvé une solution, mais elle ne me plaît pas beaucoup.

1 Dans Paheko, tu crées un utilisateur pour l’API.

2 Dans yunohost, tu crées un utilisateur avec l’identifiant et le mot de passe créé en 1

3 Tu lui donnes la permission Paheko (dans Groupes et Permissions).

Tu peux utiliser l’ API !!!

J’ai trouvé plus simple !

Pour que l’api fonctionne j’ajoute dans la webadmin => Comptes => Gérer les groupes et autorisations

Ajouter dans le groupe Tous les utilisateurs (all_users) Paheko (api), elle devrait déjà être dans le groupe Visiteurs, mais vous pouvez aussi l’ajouter là si elle n’y est pas…

En ligne de commande ce serait

yunohost user permission update paheko.api --add all_users

avec cela j’ai refait un test

https://user_api:password_api@paheko.domaine.tld/api/download -o association.sqlite
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   162  100   162    0     0    831      0 --:--:-- --:--:-- --:--:--   830

Ça a fonctionné !! Je précise que l’utilisateur a des droits lecture seule dans ma config