Recherche de site Web

RUA : encore une autre façon d’installer des packages AUR dans Arch


Un assistant AUR écrit en Rust mais avec sa propre structure de sous-commandes, plus facile à suivre.

Aimez-le ou détestez-le, un utilisateur d'Arch ne peut pas ignorer AUR, un référentiel communautaire où les utilisateurs d'Arch Linux peuvent partager leurs propres packages. Après tout, la liste des packages officiels dans Arch Linux peut être considérée comme un peu restrictive. Vous y trouverez probablement cette application obscure que vous recherchez depuis des semaines dans AUR.

Bien que vous puissiez créer des packages à partir de l'AUR, la plupart des gens se sentent plus à l'aise avec les assistants AUR comme yay, Paru, pikaur, etc.

L'installateur AUR le plus utilisé est yay, Yet Another Yogurt. yay suit la même API que Pacman, ce qui est très pratique pour les utilisateurs d'Arch Linux : vous n'avez pas besoin d'apprendre une nouvelle API pour gérer les packages AUR.

D'accord, puisque oui est un outil suffisant, nous n'en avons pas besoin d'un autre, ok, fin de l'histoire, n'est-ce pas ?

Non… 😁

Je n’écrirais pas cet article si je n’avais pas une alternative intéressante à vous montrer !

Rencontrez RUA : assistant AUR écrit en Rust

Vous souvenez-vous de mon article UPT ? Si tel est le cas, je considère que vous êtes ce genre de personne qui préfère s’en tenir à une interface commune plutôt que d’en utiliser une différente pour chaque système. L'interface UPT ressemble beaucoup plus à APT ou Homebrew qu'à Pacman.

Si vous avez aimé UPT, je suppose que vous préférerez peut-être également un programme d'installation AUR avec une interface similaire.

Il existe et il s’appelle RUA qui est AUR épelé à l’envers.

C'est un outil de construction pour AUR, tout comme yay, mais avec des sous-commandes comme install, upgrade et search au lieu de -S, -U, -Syu, -R, -Q, et ainsi de suite.

En fait, je préfère les options normales d'installation, de mise à niveau et de recherche dans la commande, puis j'essaie et me souviens de la permutation et de la combinaison des lettres S, Y, U, R, etc.

Et c'est la raison pour laquelle j'aime RUA. Laissez-moi vous montrer comment l'installer et l'utiliser.

Installation de RUA

Il est nécessaire d'installer certaines dépendances avant d'installer RUA :

sudo pacman -S --needed --asdeps git base-devel bubblewrap-suid libseccomp xz shellcheck rustup
sudo rustup install stable

🚧
style="white-space: pre-wrap;">NE PAS installer RUA en tant que root, il est destiné à être exécuté UNIQUEMENT en tant que sudoer, pas directement par root.

Puisque RUA est un outil créé en Rust, et qu'il peut être facilement installé par cargo :

rustup default stable
cargo install rua

Utilisation de RUA pour les packages AUR

Installons le navigateur Brave sur Arch Linux avec RUA. Recherchez-le d'abord, puis installez le package :

rua search brave
rua install brave-bin

Compte tenu du déroulement heureux, vous pouvez répondre à la plupart des questions :

  • m ([M]=accepter/fusionner)

  • o ([O]=ok, utiliser le package et [O]=ok, continuer)

  • s (Entrez S pour « sudo » l'installer)

  • y (toute question demandant un « oui »)

Maintenant, j'ai décidé de ne pas le conserver, alors désinstallons-le à l'aide de la commande Pacman ou UPT.

upt remove brave-bin

Forfaits de mise à niveau

Pacman et UPT n'ont aucune information sur la source de mise à niveau des packages AUR ! Néanmoins, vous pouvez utiliser RUA lui-même pour les mettre à niveau.

La commande suivante met à jour tous les packages installés par rua :

rua upgrade

Une liste de toutes les capacités du RUA peut être obtenue à partir de la commande :

rua --help

Sécurité

Lors de la création de packages, RUA utilise l'isolation du système de fichiers suivante :

  • Le répertoire de construction est monté en lecture-écriture.

  • Les fichiers "$GNUPGHOME"/pubring.kbx et "$GNUPGHOME"/pubring.gpg sont montés en lecture seule (s'ils existent). Cela permet à la vérification de la signature de fonctionner.

  • Le reste de ~ n'est pas visible par le processus de construction, monté sous tmpfs.

  • /tmp et /dev et /proc sont remontés avec tmpfs vide, devtmpfs et procfs en conséquence.

  • Le reste de / est monté en lecture seule.

  • Vous pouvez ajouter/ajouter vos points de montage à la liste blanche en configurant wrap_args. Voir l'exemple dans ~/.config/rua/.system/wrap_args.sh.example.

Toutes les builds sont exécutées dans une prison d'espace de noms, avec seccomp activé et user, ipc, pid, uts, et cgroup n'étant pas partagés par défaut.

Conclusion

Si vous êtes à l'aise avec UPT, vous pouvez utiliser la paire UPT+RUA pour gérer tous vos forfaits, officiels et AUR.

Mais ce n'est que ma suggestion. J'aime Rust et j'aime explorer divers outils CLI plus récents écrits en Rust. Et dernièrement, j'aime les partager avec vous.

Alors, dites-moi si vous aimez découvrir de tels outils. Quelles fonctionnalités aimez-vous ou n’aimez-vous pas dans RUA ?

✍️
Rodrigo Montegasppα Cacilhας est un vétéran de Linux avec plus de 25 ans d'expérience avec les systèmes Linux et l'écriture de code.

Articles connexes: