Hyprland : ordonner la preparation des portails avant le lancement des applications #5

Open
opened 2026-09-05 16:41:34 +00:00 by silex · 0 comments
Collaborator

Point 2 de la revue. Course de demarrage etablie par la semantique des appels ; aucun echec utilisateur de portail reproduit.

Constat

Dans hypr/sessions/quickshell/autostart.lua:18-35 et hypr/sessions/waybar/autostart.lua:19-38, hl.exec_cmd est asynchrone. Import d'environnement, arret/redemarrage des portails et lancement des applications se chevauchent. Une application peut contacter un ancien portail avant son arret ou declencher une activation pendant la reinitialisation.

La chaine A && B; C poursuit aussi les demarrages apres un echec d'import. Les sorties des commandes spawnnees sont redirigees vers /dev/null, ce qui limite le diagnostic. L'import automatique complementaire de Hyprland est lui aussi asynchrone.

Correction attendue

Un coordinateur commun aux deux sessions, non bloquant pour le compositeur mais ordonne en interne : import explicite des variables utiles, preparation des services, puis lancement des consommateurs. Politique d'erreur et logs explicites, sans delai fixe. Seule la commande de barre doit differer. Coordonner avec le point 3 sur l'environnement et le cycle de vie.

Validation

  • Tester login froid et reconnexions Waybar/Quickshell et apres Qtile.
  • Verifier dialogues de fichiers, partage d'ecran et authentification polkit.
  • Simuler un echec d'import ou de demarrage de service et verifier son signalement.
  • Conserver le lancement unique des applications et l'absence de relancement sur reload.
  • Ne pas redemarrer greetd ni interrompre une session de travail pour ces tests.

References

Point 2 de la revue. Course de demarrage etablie par la semantique des appels ; aucun echec utilisateur de portail reproduit. ## Constat Dans `hypr/sessions/quickshell/autostart.lua:18-35` et `hypr/sessions/waybar/autostart.lua:19-38`, `hl.exec_cmd` est asynchrone. Import d'environnement, arret/redemarrage des portails et lancement des applications se chevauchent. Une application peut contacter un ancien portail avant son arret ou declencher une activation pendant la reinitialisation. La chaine `A && B; C` poursuit aussi les demarrages apres un echec d'import. Les sorties des commandes spawnnees sont redirigees vers `/dev/null`, ce qui limite le diagnostic. L'import automatique complementaire de Hyprland est lui aussi asynchrone. ## Correction attendue Un coordinateur commun aux deux sessions, non bloquant pour le compositeur mais ordonne en interne : import explicite des variables utiles, preparation des services, puis lancement des consommateurs. Politique d'erreur et logs explicites, sans delai fixe. Seule la commande de barre doit differer. Coordonner avec le point 3 sur l'environnement et le cycle de vie. ## Validation - [ ] Tester login froid et reconnexions Waybar/Quickshell et apres Qtile. - [ ] Verifier dialogues de fichiers, partage d'ecran et authentification polkit. - [ ] Simuler un echec d'import ou de demarrage de service et verifier son signalement. - [ ] Conserver le lancement unique des applications et l'absence de relancement sur reload. - [ ] Ne pas redemarrer greetd ni interrompre une session de travail pour ces tests. ## References - [Revue complete et sources versionnees](https://git.2027a.net/mathieu/Clankers/src/commit/d45ad9c432548a1bf75fefe9c09d38a2939961d4/analyses/hyprland-rationalisation--2026-09-05.md). - [Configuration auditee, commit 818a0b1](https://git.2027a.net/mathieu/dotfiles/src/commit/818a0b142931fb439c4e620c258cb1b05dd8cdf8/). - Versions examinees : Hyprland 0.56.2 et Quickshell 0.3.1.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
mathieu/dotfiles#5
No description provided.