first commit

This commit is contained in:
Johnny
2026-04-10 20:41:52 +02:00
commit 69b409f348

80
README.md Normal file
View File

@@ -0,0 +1,80 @@
# PSR2Linux
Clone du **Problem Steps Recorder** de Microsoft pour Linux.
Enregistre des étapes avec captures d'écran annotées et génère un rapport HTML standalone.
## Fonctionnalités
- Capture d'écran déclenchée par **Ctrl+Impr Écran** (raccourci GNOME global)
- Sélection d'une région ou d'une fenêtre à capturer
- Éditeur d'annotations : flèche, rectangle, ellipse, numéro, texte, crayon
- Export en rapport **HTML standalone** (images embarquées en base64)
- Interface graphique PySide6 (Qt6)
## Prérequis
- Linux avec session **X11** (Xorg) — pynput ne fonctionne pas en Wayland
- Python 3.10+
- Un outil de capture installé : `gnome-screenshot`, `flameshot`, `scrot` ou `import` (ImageMagick)
## Installation
```bash
./setup.sh
```
Le script :
1. Installe les dépendances système manquantes (`python3-tk`, `python3-venv`, `gnome-screenshot`)
2. Crée le virtualenv `.venv` et installe les paquets Python
3. Enregistre le raccourci **Ctrl+Impr Écran** dans GNOME (via `gsettings`)
Si `gsettings` n'est pas disponible (session sans D-Bus), enregistrer le raccourci manuellement :
`Paramètres → Clavier → Raccourcis personnalisés`
Commande : `<chemin>/psr2linux-trigger` — Touche : `Ctrl+Impr Écran`
## Utilisation
```bash
./run.sh
```
1. Lancer l'application avec `./run.sh`
2. Cliquer sur **Démarrer** pour commencer une session
3. Appuyer sur **Ctrl+Impr Écran** à chaque étape à capturer
4. Annoter chaque capture dans l'éditeur
5. Cliquer sur **Exporter HTML** pour générer le rapport
## Dépendances Python
| Paquet | Rôle |
|--------|------|
| `Pillow` | Traitement des images |
| `PySide6` | Interface graphique Qt6 |
| `pynput` | Écoute clavier/souris globale |
## Diagnostic
En cas de problème avec la capture ou les événements souris :
```bash
.venv/bin/python diag.py
```
Vérifie : serveur d'affichage (X11/Wayland), import pynput, détection des moniteurs, réception des clics.
## Structure du projet
```
psr2linux.py — Application principale
psr2linux-trigger — Script shell déclenché par le raccourci GNOME
diag.py — Outil de diagnostic
setup.sh — Installation et configuration
run.sh — Lancement de l'application
requirements.txt — Dépendances Python
```
## Notes
- Les rapports générés (`rapport_psr_*.html`) sont des fichiers HTML autonomes, sans dépendance externe.
- Le déclencheur crée le fichier `/tmp/psr2linux.trigger` que l'application surveille en polling.
- Sur Wayland, relancer la session en mode X11 (XOrg) ou utiliser `DISPLAY=:0`.