- Shell 100%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
Installation native sans Docker : les fichiers compilés sont extraits de l'image officielle ghcr.io (empreintes vérifiées), pgvector est compilé pour PostgreSQL, le premier administrateur est créé pendant l'installation et les inscriptions libres sont fermées par défaut. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> |
||
| conf | ||
| doc | ||
| scripts | ||
| tools | ||
| .gitignore | ||
| manifest.toml | ||
| README.md | ||
| tests.toml | ||
affine_ynh
Paquet YunoHost (packaging v2, helpers 2.1) pour installer AFFiNE nativement, sans Docker.
AFFiNE réunit documents, tableaux blancs et bases de données dans un même espace de travail collaboratif : une alternative auto-hébergée à Notion et Miro.
Installation
Depuis l'interface d'administration YunoHost → Applications → Installer → « Installer une application personnalisée », ou en ligne de commande :
yunohost app install https://forgejo.florentcurk.com/cptcurk/affine_ynh
YunoHost demande le domaine, l'utilisateur qui devient administrateur AFFiNE (seule son adresse email sert) et son mot de passe AFFiNE (8 à 32 caractères).
Un domaine ou sous-domaine dédié est obligatoire (ex.
affine.example.tld).
Comment c'est fait
AFFiNE n'est distribué que sous forme d'image Docker. Plutôt que de compiler
le monorepo (Rust + Node, plus de 8 Go de RAM et près d'une heure), le paquet
télécharge directement les couches de l'image officielle sur ghcr.io et en
extrait /app (serveur compilé, frontends, moteurs Prisma). Chaque objet est
vérifié : le manifeste par l'empreinte épinglée dans scripts/_common.sh, puis
les couches par les empreintes du manifeste.
| Composant | Détail |
|---|---|
affine (systemd) |
node dist/main.js (Node 22 + jemalloc), port interne, derrière nginx |
| PostgreSQL | Base dédiée + pgvector compilé depuis les sources (absent de Debian 12) + pgcrypto |
| Redis | Instance YunoHost partagée, base logique réservée |
| Emails | Postfix de YunoHost, compte SMTP propre à l'app |
| Données | /home/yunohost.app/affine/.affine/{config,storage} |
Différences avec le Docker Compose upstream
| Docker (upstream) | Ce paquet | |
|---|---|---|
| Premier admin | Créé par le premier visiteur de /admin |
Créé pendant l'installation |
| Inscriptions | Ouvertes | Fermées par défaut (réactivables dans le panneau) |
| Emails | À configurer | Branchés sur Postfix |
| Indexeur plein texte | Désactivé | Désactivé |
Mettre à jour vers une nouvelle version d'AFFiNE
bash tools/bump-upstream.sh --apply
Le script récupère la dernière release, les empreintes amd64/arm64 de l'image
et réécrit scripts/_common.sh et manifest.toml. Lisez les notes de version
avant de pousser : une nouvelle variable d'environnement ou une nouvelle
dépendance demande d'adapter le paquet.
Licence
Le client AFFiNE est sous licence MIT, le serveur sous licence AFFiNE Enterprise Edition, qui autorise l'auto-hébergement.