This commit is contained in:
Johnny
2026-07-13 09:51:56 +02:00
parent 55684ec37c
commit 0a6737add5
5 changed files with 136 additions and 42 deletions

View File

@@ -1,4 +1,10 @@
# Lecteur de sessions — Assembly Session Player
# 🎬 Lecteur de sessions — Assembly Session Player
![Version](https://img.shields.io/badge/version-1.2.0-blue)
![Python](https://img.shields.io/badge/python-3-yellow)
![Plateforme](https://img.shields.io/badge/plateforme-GNOME_%2F_Wayland-4A90D9)
![Paquet](https://img.shields.io/badge/paquet-.deb_disponible-success)
![Statut](https://img.shields.io/badge/statut-projet_non_officiel-orange)
Application de bureau (GNOME / Wayland) **très simple à utiliser**, qui lit
automatiquement, **dans l'ordre**, toutes les sessions vidéo disponibles sur un
@@ -11,34 +17,35 @@ https://stream.jw.org/9021-8224-3277-8078
Elle retient où vous en étiez (session + position exacte) pour reprendre la
lecture pile où vous vous êtes arrêté·e, y compris après un redémarrage du PC.
> **Projet non officiel**, réalisé pour un usage personnel. Il n'est ni
> ⚠️ **Projet non officiel**, réalisé pour un usage personnel. Il n'est ni
> développé, ni approuvé, ni affilié à watchtower.org / jw.org / stream.jw.org.
> Il se contente d'afficher la page officielle telle quelle dans une fenêtre
> (WebKitGTK) et de l'automatiser via le DOM — aucun contenu n'est téléchargé,
> copié ou redistribué par l'application.
## Fonctionnalités
## Fonctionnalités
- Lien d'assemblée **configurable** (Paramètres, ou menu de l'icône de la
- 🔗 Lien d'assemblée **configurable** (Paramètres, ou menu de l'icône de la
barre des tâches).
- Détection automatique de la liste des sessions et **lecture dans le bon
- 📋 Détection automatique de la liste des sessions et **lecture dans le bon
ordre**, enchaînement automatique d'une session à l'autre.
- **Reprise de lecture** exacte (session + position en secondes), même après
- ⏯️ **Reprise de lecture** exacte (session + position en secondes), même après
fermeture complète de l'application ou redémarrage du PC.
- **Démarrage automatique** au démarrage du PC (option dans les Paramètres ou
- **Démarrage automatique** au démarrage du PC (option dans les Paramètres ou
le menu de l'icône), en arrière-plan (fenêtre réduite dans la barre des
tâches), avec reprise automatique.
- **Mode plein écran** (bouton dédié, touche `F11`, ou menu de l'icône) ; `F10`
ouvre les Paramètres même en plein écran.
- **Icône dans la barre des tâches** (system tray / AppIndicator, compatible
- 🖥️ **Mode plein écran** (bouton dédié, touche `F11`, ou menu de l'icône) ;
`F10` ouvre les Paramètres même en plein écran.
- 🔔 **Icône dans la barre des tâches** (system tray / AppIndicator, compatible
GNOME sur Wayland) avec Lecture/Pause, session précédente/suivante, plein
écran, démarrage automatique et changement de lien.
- Icône d'application dédiée, utilisée dans la fenêtre, le lanceur et la
- 🎨 Icône d'application dédiée, utilisée dans la fenêtre, le lanceur et la
barre des tâches.
- Bouton discret « À propos » (barre du haut ou menu de l'icône) : nom,
- Bouton discret « À propos » (barre du haut ou menu de l'icône) : nom,
version et rappel du caractère non officiel de l'application.
- 📦 Paquet `.deb` prêt à l'emploi (`make deb`).
## Limitation connue (sécurité navigateur, pas un bug)
## ⚠️ Limitation connue (sécurité navigateur, pas un bug)
Les navigateurs (et WebKitGTK) bloquent le démarrage automatique du son/vidéo
tant qu'aucun **clic réel** n'a eu lieu dans la page. Concrètement : **au
@@ -49,7 +56,7 @@ suivante) sans autre action, tant que la fenêtre reste ouverte. C'est une
protection standard des navigateurs contre la lecture automatique intempestive
— l'application ne peut pas (et ne doit pas) la contourner.
## Prérequis
## 📋 Prérequis
Testé sur Ubuntu/GNOME (Wayland). Paquets système nécessaires :
@@ -66,7 +73,7 @@ Installation en une commande :
make deps
```
## Installation
## 📥 Installation
```
make install
@@ -82,7 +89,17 @@ Pour une installation système (tous les utilisateurs) :
sudo make install PREFIX=/usr/local
```
## Utilisation
### 📦 Paquet .deb
```
make deb
sudo apt install ./dist/assembly-player_*.deb
```
Génère un paquet Debian autonome (`dist/assembly-player_<version>_all.deb`)
avec toutes les dépendances déclarées, prêt à installer ou à partager.
## ▶️ Utilisation
Lancez `assembly-player` depuis le terminal, le menu d'applications, ou
cliquez sur l'icône **Lecteur de sessions**.
@@ -99,12 +116,12 @@ cliquez sur l'icône **Lecteur de sessions**.
utilisez « Masquer la fenêtre » dans le menu de l'icône (au lieu de la
croix) ; « Afficher la fenêtre » la fait réapparaître.
### Changer le lien de l'assemblée
### 🔗 Changer le lien de l'assemblée
Bouton ☰ dans la fenêtre, ou clic droit sur l'icône de la barre des tâches →
« Changer le lien de l'assemblée… ».
### Démarrage automatique au démarrage du PC
### Démarrage automatique au démarrage du PC
Cochez « Lancer automatiquement au démarrage du PC » dans les Paramètres (ou
le menu de l'icône), ou en ligne de commande :
@@ -118,7 +135,7 @@ Au démarrage du PC, l'application se lance réduite dans la barre des tâches e
reprend automatiquement à l'endroit où vous vous étiez arrêté (un clic sur ▶
reste nécessaire, voir plus haut).
### Plein écran
### 🖥️ Plein écran
Bouton dédié dans la fenêtre, touche `F11`, ou menu de l'icône.
@@ -132,29 +149,30 @@ revenir en fenêtré ou ouvrir les Paramètres sans repasser par la souris :
Une notification rappelle ces deux raccourcis à chaque entrée en plein écran.
## Emplacement des données
## 🗂️ Emplacement des données
- Configuration (lien, options) : `~/.config/assembly-player/config.json`
- Progression de lecture (par assemblée) : `~/.local/state/assembly-player/state.json`
- Démarrage automatique : `~/.config/autostart/assembly-player.desktop`
## Désinstallation
## 🗑️ Désinstallation
```
make uninstall
```
## Développement
## 💻 Développement
```
make test # vérifie que le code Python compile
make run # lance l'application depuis les sources
make icons # régénère les icônes PNG depuis le SVG source
make deb # génère un paquet .deb dans dist/
```
Icône source (vecteur) : `assembly_player/icons/assembly-player.svg`.
## Dépannage
## 🛠️ Dépannage
- **L'icône n'apparaît pas dans la barre des tâches** : sur GNOME/Wayland,
l'extension GNOME Shell « AppIndicator and KStatusNotifierItem Support »