Aller au contenu

AUR ou Flatpak

Ditana prend en charge les paquets natifs d’Arch, les paquets AUR compilés localement avec paru et les applications Flatpak de Flathub isolées dans un bac à sable. L’ordre de priorité est d’abord les paquets natifs, puis Flatpak, puis l’AUR – et la raison de se tourner vers autre chose qu’un paquet natif n’est jamais que Flatpak offre une meilleure expérience, mais qu’aucun paquet natif n’est disponible.

Lorsque Arch elle-même ne fournit pas de paquet, préférez Flatpak à l’AUR pour une application de bureau dont une version Flathub est maintenue.

  • Isolation en bac à sable. Les applications Flatpak s’exécutent dans un bac à sable bubblewrap dont l’accès au système de fichiers et à la communication interprocessus (IPC) est restreint. Pour les navigateurs, les lecteurs multimédias et les autres logiciels exposés à Internet, c’est une véritable couche de défense en profondeur.
  • Pas de temps de compilation. La compilation des paquets AUR à partir des sources peut prendre des minutes (ou des heures, pour de grosses applications comme LibreOffice). Les déploiements Flatpak téléchargent depuis Flathub des binaires déjà compilés.
  • Aucun risque lié à l’ABI. Les paquets AUR binaires cassent parfois lorsque les bibliothèques du système sont mises à jour et que le binaire amont attend une autre interface binaire d’application (ABI). Les Flatpak embarquent leur environnement d’exécution et sont à l’abri de ce risque.
  • Mises à jour prévisibles. Les versions publiées sur Flathub sont numérotées, et il est facile de revenir à une version antérieure. L’AUR évolue en publication continue, sans coordination.

Il y a trois cas où Ditana préfère – ou exige – l’AUR plutôt que Flatpak.

Ditana recompile et signe déjà 45 des recettes de l’AUR dont elle a besoin, si bien que paru -S les trouvera souvent dans le dépôt Ditana plutôt que dans l’AUR. Chacune d’elles a été classée avant d’être compilée : une modification d’une URL source, d’une fonction de compilation ou d’une somme de contrôle sans changement de version arrête toute l’exécution pour qu’une personne l’examine. Les recettes que Ditana ne fournit pas sont installées par paru directement depuis l’AUR, sans revue, et c’est de cette différence que traite le reste de cette page.

Navigateurs basés sur Chromium et durcissement par défaut de Ditana

Section intitulée « Navigateurs basés sur Chromium et durcissement par défaut de Ditana »

Ditana ne donne pas à chaque programme accès aux espaces de noms utilisateur non privilégiés. Ils ont servi de base à plusieurs élévations locales de privilèges publiées, et sur les seize entrées concernant le noyau Linux que compte en trois ans le catalogue Known Exploited Vulnerabilities de la CISA, six sont exploitables par leur biais – décompte établi sur la version 2026.09.04 du catalogue ; la désignation de ces six-là est notre propre lecture, elle mérite donc d’être vérifiée plutôt que crue. C’est pourquoi Ditana les autorise programme par programme : un programme BPF minimal attaché au crochet userns_create du noyau lui-même refuse un espace de noms à tout exécutable pour lequel aucun paramètre n’en a fait la demande. bwrap en a fait la demande, si bien que chaque Flatpak construit son bac à sable extérieur comme d’habitude.

Brave provient néanmoins de l’AUR, sous la forme de brave-bin, pour deux raisons qui n’ont rien à voir avec le bac à sable extérieur. Son Flatpak contient zypak, qui crée des espaces de noms supplémentaires à partir d’un binaire qui lui est propre, situé au plus profond du bac à sable, et, faute de tests, nul ne sait si une liste d’autorisation par exécutable s’étend à ceux-ci. En outre, un exécutable situé dans un Flatpak est remplacé par flatpak update, ce que ne voit pas le crochet chargé de maintenir la liste d’autorisation synchronisée ; l’autorisation expirerait donc sans avertissement à la prochaine mise à jour.

Le paquet AUR brave-bin n’a besoin de rien de tout cela. Il apporte son propre programme auxiliaire setuid chrome-sandbox et construit son bac à sable sans aucun espace de noms utilisateur – c’est pourquoi ce paquet-là reste en place, même si la règle fait passer Flatpak avant l’AUR.

Si un bac à sable que vous avez installé vous-même est refusé

Section intitulée « Si un bac à sable que vous avez installé vous-même est refusé »

Si un espace de noms utilisateur est refusé à un bac à sable que vous avez installé vous-même, c’est le gardien qui l’a refusé. Ajoutez l’exécutable à /etc/ditana/userns-allow.conf, un chemin absolu par ligne, puis rechargez :

Fenêtre de terminal
sudo ditana-userns-guard --reload

sudo ditana-userns-guard --status indique combien d’espaces de noms ont été autorisés et refusés depuis le chargement du gardien, et liste les programmes qu’il a refusés, du plus récent au plus ancien, en précisant pour chacun l’utilisateur qui l’a lancé et combien de fois. sudo ditana-userns-guard --observe cesse de refuser et continue de tenir la liste, si bien que la commande montre ce qu’un programme demanderait pendant que celui-ci continue de s’exécuter ; sudo ditana-userns-guard réactive les refus.

Une part non négligeable des logiciels Linux utiles ne se trouve que dans l’AUR – outils de niche pour les développeurs, pilotes propres à un fabricant, utilitaires matériels, polices. Pour ceux-ci, l’AUR est la seule option, et paru en rend l’installation simple.

Si vous voulez participer à l’écosystème de l’AUR

Section intitulée « Si vous voulez participer à l’écosystème de l’AUR »

Si vous utilisez Arch et souhaitez suivre les flux de commits de l’AUR, apporter vos votes ou maintenir vos propres paquets AUR, vous en tenir à l’AUR pour vos applications quotidiennes vous permet de rester impliqué dans cet écosystème.

La configuration KDL permet à chaque paramètre de déclarer côte à côte arch-packages, flatpak-packages et aur-packages, ainsi que userns-allow pour un exécutable dont le bac à sable a besoin d’un espace de noms utilisateur. Lorsque plusieurs sources sont disponibles, le choix est fait délibérément, paquet par paquet, avec une explication consignée dans le fichier .kdl concerné. Parcourez ditana-config pour voir le raisonnement dans son contexte.

Conseil pratique : passer régulièrement en revue les Flatpak installés

Section intitulée « Conseil pratique : passer régulièrement en revue les Flatpak installés »

Les environnements d’exécution Flatpak s’accumulent. Exécutez de temps en temps sudo flatpak uninstall --unused pour récupérer de l’espace disque – et sudo flatpak update pour garder les applications à jour. Ces deux opérations sont sûres. Ditana installe les Flatpak dans l’installation système plutôt que dans une installation propre à chaque utilisateur ; c’est pourquoi les deux commandes nécessitent les droits root.

Cette traduction a été réalisée par une machine. Les lecteurs l’améliorent sur Weblate.