Files
scripts-bash/DEVELOPER.md
T
cedricAbonnel 647e1ae4ad feat: Makefile remplace install.sh / prep.sh / uninstall.sh
- make install  : déploie tout dans ~/.local/ (aucune dépendance externe)
- make build    : génère les pages man via Pandoc (développeur uniquement)
- make uninstall: supprime les fichiers installés
- make clean    : supprime les pages man locales

Plus de fichiers de listing .config/files_local-* intermédiaires.
Plus de dépendance Pandoc côté utilisateur (pages man pré-buildées dans le dépôt).

README : liste des scripts avec liens vers la documentation, embed Obsidian supprimé.
DEVELOPER.md : workflow mis à jour.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-17 21:42:44 +02:00

50 lines
2.0 KiB
Markdown

# DEVELOPER.md
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
## Workflow de développement
**Toujours lancer depuis la racine du projet** (vérifié par le Makefile).
### Ajouter un nouveau script
1. Placer le script dans `local/bin/<nom>.sh`
2. Créer la documentation dans `local/share/doc/scripts-bash/<nom>.1.md` (format man Markdown)
3. Lancer `make build` — génère la page man dans `local/share/man/man1/<nom>.1` via Pandoc
4. Committer les trois fichiers (`local/bin/`, `local/share/doc/`, `local/share/man/`)
5. Pousser
### Commandes
```bash
make build # Développeur : génère les pages man depuis les .1.md (nécessite Pandoc)
make install # Utilisateur : déploie tout dans ~/.local/
make uninstall # Supprime les fichiers installés
make clean # Supprime les pages man générées localement
```
## Architecture
```
local/bin/ → scripts déployés dans ~/.local/bin (.sh retiré à l'install)
local/share/doc/ → documentation source en Markdown (format man)
local/share/man/ → pages man pré-générées via Pandoc (ne pas éditer manuellement)
local/share/ytdll/ → config et libs pour le script ytdll
ecoleA/ → scripts d'administration pour déploiements école
servers/linux/ → scripts serveur Linux
```
### Makefile
`make install` lit les sources directement avec `$(wildcard ...)` — pas de fichiers de listing intermédiaires. Les scripts `.sh` sont installés sans extension dans `~/.local/bin`. Les autres (PHP, sans extension) sont copiés tels quels.
`make build` est une cible développeur (nécessite Pandoc). Les pages man générées sont committées dans le dépôt pour que `make install` fonctionne sans Pandoc côté utilisateur.
### Documentation
Chaque script doit avoir une fiche `local/share/doc/scripts-bash/<nom>.1.md` avec au minimum les sections `# NOM`, `# SYNOPSIS`, `# DESCRIPTION`.
### Remote Git
Le remote `origin` utilise HTTPS avec le token Gitea intégré dans l'URL (`https://user:TOKEN@git.abonnel.fr/...`).