- Python 53.2%
- Shell 46.8%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
build_catalog.py régénère v3/apps.json depuis Forgejo, publish.sh le pousse, setup-server.sh ajoute le catalogue à un serveur YunoHost. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> |
||
| v3 | ||
| .gitignore | ||
| build_catalog.py | ||
| catalog.toml | ||
| publish.sh | ||
| README.md | ||
| setup-server.sh | ||
ynh_catalog
Catalogue d'applications YunoHost personnel : il permet à un serveur YunoHost de détecter tout seul les mises à jour des paquets hébergés sur ce Forgejo, et de les proposer dans l'interface web (Mises à jour), comme pour les applications officielles.
| App | Paquet |
|---|---|
affine |
cptcurk/affine_ynh |
vitransfer |
cptcurk/vitransfer_ynh |
cartourse |
cptcurk/cartourse_ynh |
Sur le serveur (une seule fois)
curl -fsSL https://forgejo.florentcurk.com/cptcurk/ynh_catalog/raw/branch/main/setup-server.sh -o setup-server.sh
sudo bash setup-server.sh
Le script ajoute ce catalogue en tête de /etc/yunohost/apps_catalog.yml
(avec une copie de sauvegarde), puis relit les catalogues.
Ensuite, rien à faire : YunoHost relit les catalogues une fois par jour.
Pour vérifier tout de suite : sudo yunohost tools update apps.
Bonus : ces apps peuvent aussi s'installer par leur simple nom
(sudo yunohost app install affine) et apparaissent dans le catalogue de
l'interface web.
Publier une mise à jour d'un paquet
- Dans le paquet, augmenter la version de
manifest.toml(0.27.4~ynh1→0.27.4~ynh2, ou nouvelle version upstream). Sans ça, le serveur considère l'app à jour. - Commiter et pousser le paquet.
- Ici :
bash publish.sh
publish.sh relit chaque paquet tel qu'il est sur Forgejo (dernier commit
de la branche + son manifest.toml), régénère v3/apps.json et le pousse. Le
serveur installera exactement ce commit-là.
Comment ça marche
YunoHost télécharge <url du catalogue>/v3/apps.json pour chaque catalogue
listé dans /etc/yunohost/apps_catalog.yml. Une mise à jour est proposée
quand l'app installée a le même id qu'une entrée du catalogue, que la
version du catalogue est plus grande, et que l'entrée a un niveau ≥ 5 et
l'état working. Le niveau 6 est fixé ici par nous : ce catalogue n'est pas
audité par l'intégration continue de YunoHost.