Dotfiles_ArchAP/firefox-extension/session-v2/README.md

57 lines
3.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Companion Firefox Session Restore V2
Sources de l’extension utilisée par la recette réelle validée. ID :
`session-v2@labfy.org`, version 1.0.0. Host : `org.labfy.session_v2_identity`.
Permissions limitées à `sessions` et `nativeMessaging` : aucun accès à la
navigation, aux cookies, à l’historique ou au contenu des onglets.
## Build et signature
Depuis la racine du dépôt, `python3 -B tools/build-session-v2.py` construit
`build/session-v2/labfy-session-v2-unsigned.xpi`. Le contenu du XPI est
déterministe ; le bundle backend tar.gz est seulement une sortie locale.
Aucun binaire ou XPI signé n’est versionné.
La distribution retenue est **AMO unlisted**, signée par Mozilla, puis installée
localement avec consentement explicite. Envoyer le XPI non signé via le portail
AMO de développement, choisir la distribution non répertoriée, récupérer le
package signé et l’installer depuis le gestionnaire d’extensions Firefox.
Les identifiants AMO restent hors du dépôt. Ne pas désactiver l’exigence de
signature Firefox Release. Firefox 157 est la version minimale du manifeste.
Sur le profil utilisateur validé, l’extension signée est déjà active et
`browser.startup.page=3` est déjà configuré. Le nettoyage V1 ne modifie ni
installation, ni permissions, ni préférence. Pour une nouvelle installation,
le propriétaire du profil doit choisir explicitement la réouverture des
fenêtres et onglets précédents.
## Native host
Après déploiement Stow, rendre le template `native-host.json.in` en remplaçant
`@ABSOLUTE_NATIVE_HOST_LAUNCHER@` par le chemin absolu de
`$HOME/.config/quickshell/labfy-sway/session-v2-native-host.py`.
Conserver le nom du host, le type `stdio` et l’allowlist exacte de l’extension.
Le wrapper doit rester exécutable.
Sur l’installation Linux validée, le manifeste est
`${XDG_CONFIG_HOME:-$HOME/.config}/mozilla/native-messaging-hosts/org.labfy.session_v2_identity.json`.
Le chemin historique `$HOME/.mozilla` pointe vers cette arborescence. Sur un
autre packaging Firefox, vérifier le répertoire Native Messaging utilisé avant
installation. Créer le manifeste avec permissions 0600 ; ne pas écraser un
host actif lors d’une simple mise à jour de documentation.
Le host accepte seulement le protocole `map-window` avec UUID et jeton runtime.
Les messages sont bornés à 4096 octets ; la sortie standard est réservée au
framing Native Messaging. Le host lit l’arbre Sway pour corréler le préfixe
éphémère, sans exécuter de commande Sway mutatrice. L’extension retire ce
préfixe après corrélation. Le provider exige des observations récentes et un
publisher vivant ; une identité absente ou ambiguë produit un échec explicite.
Les UUID persistants appartiennent aux fenêtres Firefox ; les observations et
identifiants de processus restent privés dans le runtime. Ne pas publier ces
fichiers. Le provider demeure le candidat validé pour le profil supporté ; le
multi-profil n’est pas pris en charge. Les fenêtres et onglets sont restaurés
par Firefox, pas par une lecture de sessionstore côté Labfy.
Voir [Session Restore V2](../../docs/session-restore-v2.md) pour le cycle complet,
les tests et les limites.