Commit graph

46 commits

Author SHA1 Message Date
Cédrix
f64135a44d Retirer le wiki : il est passé dans le dépôt alpinux-wiki
Le contenu de wiki.alpinux.org a été rapatrié dans alpinux-wiki, qui est
désormais la source du site publié : le serveur en tire par webhook, plus rien
ici n'est construit ni déployé. Garder une copie ici ne pouvait que produire des
contributions perdues, ce qui est précisément arrivé entre mai et septembre.

wiki/ ne conserve qu'un README de renvoi, pour que quelqu'un qui arrive par un
vieux lien ou un vieux clone sache où aller. Le coffre Obsidian est déménagé en
même temps : ouvrir ~/Projects/org.alpinux.owni/wiki.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01PcZ7hL9aVvMhRuzxXLT2DG
2026-09-19 22:08:49 +02:00
Cédrix
3f21410d2f Obsidian : mise à jour automatique des liens
Active alwaysUpdateLinks, pour que les liens [[...]] suivent les fichiers
renommés ou déplacés. Utile après la réorganisation en monorepo, où les
articles ont changé de dossier.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-09-05 12:05:07 +02:00
Cédrix
38f4ec3b33 Article : créer des raccourcis d'application
Nouvel article sur l'ajout d'une application (AppImage notamment) au menu
« Démarrer » et son lancement depuis le terminal, référencé depuis la liste
des idées de présentations.

Rédigé avant la réorganisation du dépôt en monorepo, donc jamais versionné :
reporté depuis articles/ vers wiki/articles/.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-09-05 12:05:02 +02:00
Cédrix
ab5cc0958f Synchronisation automatique des certificats Let's Encrypt sur owni
ISPConfig ne recopie le certificat dans le répertoire ssl/ du site que
lorsqu'il le crée ou le recrée : un renouvellement par le cron certbot
passe inaperçu et le vhost continue de servir l'ancien jusqu'à son
expiration. Re-sauvegarder le site dans l'interface ne déclenche pas la
copie. static.alpinux.org et portail.alpinux.org ont ainsi servi un
certificat expiré à partir du 1er août 2026.

Le script audite en lecture seule par défaut et resynchronise avec --fix.
Il ne retient que les certificats réellement référencés par un vhost
activé ou un service : de nombreux répertoires ssl/ conservent des
certificats périmés dont plus personne ne se sert.

Déployé en /usr/local/sbin/owni-certs-sync.sh et lancé chaque jour à
04:20 par /etc/cron.d/owni-certs-sync, en complément du hook certbot
ispconfig-cert.sh généralisé à tous les sites.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-09-05 11:52:18 +02:00
3a8c23d7a6 Actualiser wiki/docs/alpinux/install-party.md
Mise à jour pour l'install party du 26/09/2026
2026-09-02 07:33:40 +00:00
1d67692028 typo 2026-06-04 16:55:08 +00:00
2211d566ab typo 2026-05-07 20:04:10 +00:00
Cédrix
762f0777e4 docs: corrige typo README + commit final avant migration multi-repo
Ce dépôt devient une archive. Chaque sous-dossier migre vers
son propre dépôt Gitea indépendant (public ou privé).

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-03 17:44:13 +02:00
Cédrix
e50eec1785 security: remplace les chemins système hardcodés par des variables d'env
admin/builds.py : STATE_FILE, LOG_FILE, DEPLOY_SCRIPT lus depuis l'environnement
dynamic/db.py   : supprime le fallback de chemin système pour DATABASE
admin/.env.example : documente les nouvelles variables STATE_FILE, LOG_FILE

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-03 17:34:38 +02:00
Cédrix
9328c852cc Suppression de la référence mastodon pour alpinux 2026-05-03 17:27:38 +02:00
Cédrix
bc7e9f601b security: retire les configs serveur du dépôt public
Supprime tous les fichiers *.vhost.conf et *.service du suivi git.
Ils révèlent l'architecture interne (ports, chemins, utilisateurs système)
et sont désormais conservés localement dans infra/ (hors dépôt).

Sanitise les docs de déploiement et les .env.example :
- chemins système remplacés par des variables génériques
- ports internes retirés
- client IDs Keycloak remplacés par des placeholders

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-03 17:25:55 +02:00
Cédrix
58c8b2ea7c refactor: réorganise le monorepo en sous-dossiers par sous-domaine
Chaque site (wiki, home, dynamic, admin, static, portail, feedback)
a désormais son propre dossier autonome avec ses scripts de déploiement.
Ajoute README.md racine expliquant la structure et la convention git/Claude.
Met à jour .gitignore pour les nouveaux chemins (wiki/docs/assets/).

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-03 17:20:41 +02:00
Cédrix
80574a83f3 fix: admin.alpinux.org — sous-domaine dédié conforme à la convention ISPConfig
Remplace portail.alpinux.org.admin.conf (snippet incorrectement formaté)
par scripts/admin.alpinux.org.vhost.conf : VirtualHost complet HTTP+HTTPS,
reverse proxy Gunicorn port 5002, même structure que les autres vhosts.

admin/app.py : supprime x_prefix=1 du ProxyFix (plus de sous-chemin /admin/)
admin/.env.example : client Keycloak renommé admin-alpinux
scripts/alpinux-admin.service : description mise à jour

redirect_uri Keycloak attendu : https://admin.alpinux.org/auth/callback

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-03 16:01:47 +02:00
Cédrix
60eb8bc952 feat: interface admin portail.alpinux.org/admin/ — déclencher mkdocs build
Mini-app Flask (admin/) accessible à https://portail.alpinux.org/admin/ :
- Authentification AlpID OIDC, accès restreint au groupe « admins » Keycloak
- Bouton « Lancer mkdocs build » avec confirmation
- Exécution de deploy-wiki.sh en arrière-plan (thread), log capturé en direct
- Polling JS toutes les 2s pendant le build (status + log + historique)
- Affichage du journal en terminal sombre avec suivi automatique
- Historique des 20 derniers builds (date, déclencheur, résultat, durée)
- ProxyFix pour X-Forwarded-Proto / X-Script-Name (Apache reverse proxy)

Infrastructure :
- scripts/portail.alpinux.org.admin.conf : bloc ProxyPass pour ISPConfig
- scripts/alpinux-admin.service : systemd Gunicorn port 5002
- admin/.env.example, admin/requirements.txt

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-03 12:34:18 +02:00
Cédrix
00bd942110 feat: static.alpinux.org — images wiki récupérées, toutes les références migrées
- Logos et favicons sur static.alpinux.org/logo/
- 111 images DokuWiki récupérées depuis sauvegarde → static.alpinux.org/wiki/
- Toutes les références technique:namespace:fichier.png → https://static.alpinux.org/wiki/
- Suppression syntaxe DokuWiki (<WRAP>, liens cassés, URLs malformées)
- overrides/partials/logo.html pointe sur static.alpinux.org (plus de PNG dans git)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-03 12:31:53 +02:00
Cédrix
27847dfad3 feat: dynamic.alpinux.org — quiz interactifs Flask + AlpID OIDC
App Flask complète pour https://dynamic.alpinux.org :
- 10 quiz Linux, 5 niveaux (Découverte → Expert), 50+ questions
- Public : Découverte, Débutant, Intermédiaire (6 quiz)
- Membres AlpID : Avancé, Expert (4 quiz — Git, Admin, Sécurité, Bash)
- Navigation question par question avec avance automatique après choix
- Score calculé côté serveur, enregistré en SQLite si connecté
- Page profil : meilleurs scores par quiz + historique des tentatives

Authentification :
- OIDC via authlib + AlpID (Keycloak), SSO partagé avec Gitea/Nextcloud
- Décorateur @login_required, redirection post-login sur l'URL d'origine
- /auth/login, /auth/callback, /auth/logout

Structure :
- dynamic/app.py, db.py, quiz.py, auth_utils.py
- dynamic/routes/ (public.py, auth.py, protected.py)
- dynamic/templates/ (base, index, quiz/*, profil/)
- dynamic/static/ (style.css thème Alpinux, quiz.js vanilla)
- dynamic/data/quizzes.json (source de vérité des questions)
- dynamic/.env.example

Infrastructure :
- scripts/dynamic.alpinux.org.vhost.conf (Apache reverse proxy)
- scripts/dynamic.alpinux.org.service (systemd Gunicorn)
- docs/technique/deploiement-dynamic.md (procédure complète)
- mkdocs.yml : page de déploiement ajoutée à la nav Technique
- .gitignore : exclut venv/ et .env

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-03 12:09:37 +02:00
Cédrix
557e363480 fix: références cassées evenements.md + lien retour alpinux.org
- Correction liens DokuWiki (alpinux:, * au lieu de //, .md en trop)
- Suppression liens vers pages inexistantes (events-logs, dates-cles)
- Bandeau de retour vers www.alpinux.org sur toutes les pages wiki

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-03 10:11:11 +02:00
Cédrix
a580d98518 feat: widget événements dynamiques depuis le calendrier Nextcloud
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-03 10:05:34 +02:00
Cédrix
14cb68c4c5 fix: logo wiki servi depuis docs/assets/ (hors git, généré par build-assets.py)
overrides/partials/logo.html : remplace l'URL static.alpinux.org par
{{ base_url }}/assets/alpinux-logo.png — le logo est inclus dans le
build MkDocs, pas servi depuis le CDN.

scripts/build-assets.py : sépare les deux destinations :
- docs/assets/alpinux-logo.png (200×200, pour le wiki)
- /tmp/alpinux-static-assets/ (512px + favicons → static.alpinux.org/logo/)
Plus d'argument --out ; les chemins sont fixes et documentés.

docs/technique/deploiement-wiki.md :
- schéma mis à jour (SVG → build-assets.py → PNG → mkdocs build)
- ajout de l'étape 3 "Générer le logo" dans la procédure manuelle
- script deploy-wiki.sh inclut python3 scripts/build-assets.py
- tableau résumé mis à jour
- prérequis : ajout pillow et chromium

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-03 10:05:12 +02:00
Cédrix
096edc378e docs: procédure de déploiement du wiki (git pull + mkdocs build)
Nouveau fichier docs/technique/deploiement-wiki.md :
- schéma du flux Gitea → build → Apache
- prérequis serveur (pip install mkdocs-material, clone du dépôt)
- procédure manuelle pas à pas (git pull, mkdocs build --strict)
- script deploy-wiki.sh prêt à l'emploi
- automatisation via webhook Gitea + démon webhook
- tableau des erreurs courantes et mkdocs serve pour tests locaux

mkdocs.yml : page ajoutée en tête de la section Technique
docs/contribuer.md : lien vers la page de déploiement depuis l'étape 5

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-03 10:05:12 +02:00
Cédrix
da8b6e7fee docs: guide de contribution pas à pas (AlpID, Gitea, pull request, MkDocs)
Nouveau fichier docs/contribuer.md :
- création de compte AlpID et connexion SSO à Gitea
- modifier une page existante via l'éditeur web Gitea
- créer un nouvel article (nommage, structure, choix du dossier)
- ouvrir une pull request et comprendre le cycle de relecture
- explication du pipeline de publication MkDocs (build → deploy)
- mini-référence Markdown (titres, listes, liens, code, admonitions, tableaux)

mkdocs.yml : entrée "Contribuer" ajoutée en deuxième position dans la nav
docs/index.md : section Contribuer enrichie avec lien direct vers le guide
docs/alpinux/faq.md : corrige le lien DokuWiki cassé alpinux:install-party.md

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-03 10:05:12 +02:00
Cédrix
40bf40cec2 Install Party Printemps 2026 clôturée — présentation reportée en septembre
install-party.md : marque l'Install Party du 28 mars comme terminée,
annonce une présentation en septembre 2026 (date à confirmer).

SEO & métadonnées (home/index.html, overrides/main.html) :
- Open Graph, Twitter Card, structured data Schema.org (Organization / WebSite)
- canonical, rel="me" Mastodon, aria-label nav, dimensions logo explicites

Wiki (docs/) :
- meta description sur index.md et alpinux/index.md
- boutons MkDocs Material sur alpinux/index.md, liens corrigés

Infra :
- robots.txt pour alpinux.org et wiki.alpinux.org
- sitemap.xml home
- configs vhost Apache alpinux.org et wiki.alpinux.org
- suppression alpinux-logo.png (binaire servi depuis static.alpinux.org)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-03 10:05:12 +02:00
59795da35c Supprimer docs/assets/alpinux-logo.svg 2026-05-03 07:33:20 +00:00
Cédrix
565165cc70 Architecte static.alpinux.org : assets binaires hors git
- Logo SVG (source texte) ajouté dans docs/assets/alpinux-logo.svg
- .gitignore : exclut *.png, *.ico, docs/assets/images/ (binaires → static.alpinux.org)
- overrides/partials/logo.html : logo depuis https://static.alpinux.org/logo/
- overrides/main.html : favicons depuis static.alpinux.org via {% block extrahead %}
- mkdocs.yml : logo → SVG, ajout pymdownx.emoji (icônes Material)
- home/index.html : page d'accueil alpinux.org (logo + favicon depuis static.alpinux.org, carte dynamic.alpinux.org)
- scripts/build-assets.py : génère PNG/favicon depuis le SVG source
- scripts/static.alpinux.org.vhost.conf : template vhost Apache

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-03 08:46:06 +02:00
Wiki Alpinux
2fa0fe0da9 Ajout logo Alpinux, page communication, typographie A[l]p[inux] Segoe UI 2026-05-02 22:39:54 +02:00
Wiki Alpinux
8e6345aaba Migration vers MkDocs Material — contenu DokuWiki converti, thème Alpinux 2026-05-02 22:29:17 +02:00
Cédrix
2c60acb55d doc whisper : suppression d'informations non essentielles 2026-03-29 17:17:11 +02:00
Cédrix
127f63e836 désactivtation de brasero 2026-03-27 00:49:05 +01:00
Cédrix
5c489d9117 ajout d'outils OCR, mp3TAG, affichage photos 2026-03-27 00:45:17 +01:00
Cédrix
db639b82f6 keepassxc conseillé d'etre en flatpack 2026-03-27 00:44:06 +01:00
Cédrix
3ad3f05a75 precision surle script local et celui dispo sur git 2026-03-26 01:10:35 +01:00
Cédrix
658bdb0fb5 erreur de syntaxe 2026-03-26 01:09:14 +01:00
Cédrix
9c621a61ac adresse de récupération du scritp post-install 2026-03-26 01:07:48 +01:00
Cédrix
8039f09ec2 -destruction sécurisée 2026-03-26 00:42:10 +01:00
Cédrix
bd99a2896e ajout d'un disque par défaut 2026-03-26 00:37:29 +01:00
Cédrix
59a3154d15 restauration firefox pour le user et non root 2026-03-26 00:34:01 +01:00
Cédrix
1e102a22a4 init install.sh 2026-03-25 23:51:36 +01:00
Cédrix
8b8ab7a5dc correction typo / ajout de la prestation openOffice / ajout idées presentations: 2026-03-25 12:08:16 2026-03-25 12:08:16 +01:00
Cédrix
bcae83ed22 vault backup: 2026-03-19 20:12:15 2026-03-19 20:12:15 +01:00
763ea3ad13 Actualiser articles/Guide d'installation - Linux Mint (depuis Windows).md 2026-03-19 19:11:18 +00:00
Cédrix
553fd347dd vault backup: 2026-03-19 19:56:57 2026-03-19 19:56:57 +01:00
Cédrix
5fc1231145 vault backup: 2026-03-19 19:56:47 2026-03-19 19:56:47 +01:00
Cédrix
39bf53751c Nettoyage de l'historique selon le .gitignore 2026-03-19 19:35:04 +01:00
Cédrix
e55fcd9e23 vault backup: 2026-03-19 19:07:57 2026-03-19 19:07:57 +01:00
Cédrix
11f072e3a1 vault backup: 2026-03-19 19:07:07 2026-03-19 19:07:07 +01:00
Cédrix
165a3e16c1 premier commit 2026-03-19 19:05:09 +01:00