Dotfiles_ArchAP/tools/quickshell-qt-compat-v1/README.md

3.4 KiB

QuickShell 0.3.1 et Qt 6.12

Ce dossier conserve les sources de construction, jamais le binaire compilé. Il dérive du PKGBUILD officiel Arch extra/quickshell 0.3.1-1 : pkgrel=1.1 identifie la reconstruction locale, et prepare() applique le correctif amont fusionné dans Quickshell PR 1002. Le fichier changelog/next.md de cette PR n'existe pas dans l'archive v0.3.1 ; le patch conservé ici ne contient que ses changements de code applicables.

Pourquoi

Le paquet officiel du 21 août 2026 a été construit avec Qt 6.11.2. Après le passage du système à Qt 6.12.0, QuickShell signale ce décalage au démarrage. Une reconstruction sans correctif échoue aussi à la compilation moc sur des métatypes incomplets dans les modules Hyprland et I3/Sway. Le correctif amont résout ces erreurs sans désactiver de module.

Dépendances et construction

En plus des dépendances d'exécution déclarées dans PKGBUILD, la construction demande base-devel, cli11, cmake, ninja, qt6-shadertools, spirv-tools, vulkan-headers et wayland-protocols. Installer les dépendances de compilation par le gestionnaire de paquets selon la politique de la machine ; makepkg -s peut les demander. Ne pas utiliser une version de Qt différente de celle qui sera chargée à l'exécution.

Depuis ce dossier :

makepkg --verifysource
makepkg --cleanbuild --syncdeps
sha256sum quickshell-0.3.1-1.1-x86_64.pkg.tar
pacman -Qip quickshell-0.3.1-1.1-x86_64.pkg.tar

La construction du 8 octobre 2026 a utilisé les sources amont v0.3.1 (SHA-256 vérifié par makepkg) et le patch de ce dossier. cli11 2.7.2-1 était absent du système : son paquet Arch signé a été vérifié par gpgv, puis extrait dans un préfixe de construction utilisateur. Dans ce cas particulier, makepkg --nodeps a ignoré uniquement le contrôle de présence système de cli11 ; CMake a trouvé ses en-têtes dans ce préfixe. Ce contournement de construction ne s'applique jamais à l'installation du paquet QuickShell.

Le paquet produit a été conservé hors dépôt sous ~/.cache/quickshell-qt-compat-v1/, avec le SHA-256 68d75a1421d4d78ea1ab72f00194788298b275e58933b48dfa86aace596df2a5. Une reconstruction future peut produire un hash différent, même à partir des mêmes sources ; vérifier toujours les métadonnées et les dépendances du nouvel artefact. Installer uniquement par Pacman, sans copie manuelle de fichiers.

Maintenance et retour arrière

Après une mise à jour de Qt, vérifier d'abord si Arch fournit un paquet QuickShell plus récent construit pour cette version. Sinon, reconstruire avec le Qt installé et le correctif encore nécessaire. Si Arch intègre le correctif dans une nouvelle version, revenir au paquet officiel. La révision locale 0.3.1-1.1 ne sera pas remplacée automatiquement par l'ancien 0.3.1-1 ; surveiller les versions du dépôt.

Avant une installation, conserver le paquet officiel précédent dans le cache Pacman et relever l'état du service. Un retour à 0.3.1-1 est possible par Pacman, mais ce paquet reste compilé contre Qt 6.11.2 : sous Qt 6.12, il ne constitue pas un retour à la compatibilité. En cas de régression, garder les journaux, identifier la cause et ne réinstaller l'ancien paquet que si son fonctionnement est jugé plus sûr que celui du nouveau.