Compare commits
No commits in common. "9d2c931a929338fc745e596cbff35c2647421b90" and "c52652f07efc5cba13a37ff2e7ce3635f595a04a" have entirely different histories.
9d2c931a92
...
c52652f07e
2 changed files with 16 additions and 45 deletions
|
|
@ -14,21 +14,15 @@ Ce wiki appartient à toute la communauté Alpinux. Si vous repérez une faute,
|
|||
## Vue d'ensemble du processus
|
||||
|
||||
```
|
||||
Compte AlpID → Bifurcation → Branche → Pull request → Mainteneurs → Wiki
|
||||
Vous connecte Votre copie Vos Vous la Relisent et MkDocs
|
||||
à la forge personnelle modifs proposez fusionnent publie
|
||||
du wiki y sont au wiki la fusion
|
||||
isolées
|
||||
Vous → AlpID → Gitea → Mainteneurs → Wiki en ligne
|
||||
Créez un compte Vous connecte Vous éditez Relisent et MkDocs publie
|
||||
sur AlpID à Gitea la page acceptent automatiquement
|
||||
+ ouvrez une votre
|
||||
pull request contribution
|
||||
```
|
||||
|
||||
Le point important : **vous n'écrivez jamais dans le dépôt du wiki**. Vous écrivez dans
|
||||
votre bifurcation — votre copie personnelle, où vous ne risquez rien — puis vous
|
||||
proposez ce travail par une pull request. Un mainteneur relit, fusionne, et le site se
|
||||
met à jour tout seul dans les secondes qui suivent.
|
||||
|
||||
!!! note "Et si j'ai les droits d'écriture sur le dépôt ?"
|
||||
La règle reste la même : une branche, puis une pull request, même pour les
|
||||
mainteneurs. La bifurcation devient alors facultative, rien d'autre ne change.
|
||||
En résumé : vous proposez une modification, un mainteneur la valide, et le wiki se met à
|
||||
jour tout seul — en quelques secondes, sans intervention de personne.
|
||||
|
||||
!!! note "Deux façons de contribuer"
|
||||
Ce guide décrit la voie **depuis le navigateur**, celle qui ne demande aucune
|
||||
|
|
@ -116,29 +110,6 @@ C'est la façon la plus simple de contribuer : corriger une faute, compléter un
|
|||
|
||||
Vous avez rédigé un guide ou un compte-rendu et souhaitez l'ajouter au wiki.
|
||||
|
||||
### Partir de sa bifurcation
|
||||
|
||||
Un nouvel article ne se crée pas dans le dépôt du wiki, mais dans **votre bifurcation**.
|
||||
Si vous n'en avez pas encore, créez-la : sur
|
||||
[le dépôt du wiki](https://gitea.alpinux.org/alpinux.cedrica5l/alpinux-wiki), bouton
|
||||
**« Bifurcation »** (*Fork*) en haut à droite. Vous obtenez une copie complète du wiki
|
||||
dans votre espace personnel sur la forge, sur laquelle vous avez tous les droits.
|
||||
|
||||
!!! warning "Une bifurcation vieillit"
|
||||
Votre copie ne se met pas à jour toute seule : elle reste figée au jour où vous
|
||||
l'avez créée. **Avant d'écrire, récupérez l'état actuel du wiki**, sinon votre
|
||||
article partira d'une version dépassée et la pull request risque le conflit.
|
||||
|
||||
- **Depuis la forge** : sur votre bifurcation, le bandeau
|
||||
*« Cette branche est en retard de N commits »* propose un bouton de
|
||||
synchronisation — cliquez-le.
|
||||
- **Depuis votre ordinateur** : `git pull upstream main`, après avoir déclaré le
|
||||
dépôt du wiki comme `upstream`. La marche à suivre complète est dans
|
||||
[Rédiger en ligne de commande](ligne-de-commande.md#1-bifurquer-puis-cloner).
|
||||
|
||||
Pour un article un peu long, travailler depuis son ordinateur est nettement plus
|
||||
confortable que l'éditeur du navigateur — et c'est la même pull request au bout.
|
||||
|
||||
### Choisir le bon dossier
|
||||
|
||||
Avant de créer votre fichier, identifiez dans quelle section il a sa place :
|
||||
|
|
@ -152,8 +123,7 @@ Avant de créer votre fichier, identifiez dans quelle section il a sa place :
|
|||
|
||||
### Créer le fichier
|
||||
|
||||
1. Dans **votre bifurcation** (et non dans le dépôt du wiki), naviguez vers le bon
|
||||
dossier (ex. `docs/guides/`).
|
||||
1. Naviguez dans le dépôt vers le bon dossier (ex. `docs/guides/`).
|
||||
|
||||
2. Cliquez sur le bouton **« + »** ou **« Nouveau fichier »** en haut à droite de la liste des fichiers.
|
||||
|
||||
|
|
|
|||
|
|
@ -23,7 +23,7 @@ Apache (reverse proxy, SSL)
|
|||
Gunicorn (2 workers)
|
||||
│
|
||||
▼
|
||||
Flask app (alpinux-dynamic)
|
||||
Flask app (dynamic/)
|
||||
│ │
|
||||
▼ ▼
|
||||
SQLite AlpID OIDC
|
||||
|
|
@ -38,14 +38,14 @@ SQLite AlpID OIDC
|
|||
|
||||
```bash
|
||||
ssh <user>@alpinux.org
|
||||
git clone https://gitea.alpinux.org/alpinux.cedrica5l/alpinux-dynamic.git \
|
||||
git clone https://gitea.alpinux.org/alpinux.cedrica5l/alpinux.site.2026.git \
|
||||
$APP_DIR
|
||||
```
|
||||
|
||||
### 2. Créer l'environnement Python
|
||||
|
||||
```bash
|
||||
cd $APP_DIR
|
||||
cd $APP_DIR/dynamic
|
||||
python3 -m venv venv
|
||||
venv/bin/pip install -r requirements.txt gunicorn
|
||||
```
|
||||
|
|
@ -54,7 +54,7 @@ venv/bin/pip install -r requirements.txt gunicorn
|
|||
|
||||
```bash
|
||||
sudo mkdir /etc/dynamic-alpinux
|
||||
sudo cp $APP_DIR/.env.example /etc/dynamic-alpinux/config.env
|
||||
sudo cp $APP_DIR/dynamic/.env.example /etc/dynamic-alpinux/config.env
|
||||
sudo nano /etc/dynamic-alpinux/config.env
|
||||
```
|
||||
|
||||
|
|
@ -96,7 +96,7 @@ Dans la console d'administration Keycloak (`https://alpid.alpinux.org`) :
|
|||
Les fichiers de configuration systemd et Apache sont conservés **hors dépôt** (`infra/` local).
|
||||
|
||||
```bash
|
||||
sudo cp infra/services/dynamic.alpinux.org.service \
|
||||
sudo cp infra/dynamic/dynamic.alpinux.org.service \
|
||||
/etc/systemd/system/dynamic-alpinux.service
|
||||
sudo systemctl daemon-reload
|
||||
sudo systemctl enable --now dynamic-alpinux
|
||||
|
|
@ -128,6 +128,7 @@ ISPConfig gère le VirtualHost et le renouvellement automatique du certificat.
|
|||
ssh <user>@alpinux.org
|
||||
cd $APP_DIR
|
||||
git pull
|
||||
cd dynamic
|
||||
venv/bin/pip install -r requirements.txt # si requirements.txt a changé
|
||||
sudo systemctl restart dynamic-alpinux
|
||||
```
|
||||
|
|
@ -149,7 +150,7 @@ sudo systemctl restart dynamic-alpinux
|
|||
## Structure de l'application
|
||||
|
||||
```
|
||||
alpinux-dynamic/
|
||||
dynamic/
|
||||
├── app.py ← point d'entrée Flask
|
||||
├── auth_utils.py ← décorateur @login_required
|
||||
├── db.py ← SQLite (scores)
|
||||
|
|
@ -196,7 +197,7 @@ Les quiz avancés (niveau 4) et experts (niveau 5) ont `"members_only": true` da
|
|||
|
||||
## Ajouter un quiz
|
||||
|
||||
Éditez `data/quizzes.json` et ajoutez un objet au tableau :
|
||||
Éditez `dynamic/data/quizzes.json` et ajoutez un objet au tableau :
|
||||
|
||||
```json
|
||||
{
|
||||
|
|
|
|||
Loading…
Reference in a new issue