Yaourt sur Archlinux ARM

Salut,

Après avoir cherché à installer Yaourt sur mon Raspberry Pi, j’ai un peu galéré à le faire, et je n’ai rien documenté à ce sujet… Ce outil étant bien pratique, voir addictif pour l’utilisateur que je suis, je me retrouve à nouveau confronté à son installation pour l’image Archlinux du cloud ARM de Online, je fais donc un petit article rapidement pour ne pas répéter à nouveau cette erreur. La méthode est donc transposable à tous les autres matériels ARM.

Avant propos

Si jamais vous êtes en root, ce n’est pas bien et l’installation vous préviendra de votre erreur ultérieurement. Pensez à créer un utilisateur avec useradd -g users -m -s /bin/bash
Il vous sera probablement utile de faire un visudo pour décommenter la ligne autorisant le groupe wheel à utiliser la commande sudo. De même, l’ajout de votre utilisateur au groupe wheel se fait avec gpasswd -a wheel

Configuration de pacman

Dans un premier temps, il faut ajouter le dépot arm de archlinuxFR à pacman.
Pour cela, ajoutez les lignes suivantes à la fin de /etc/pacman.conf avec votre éditeur préféré (vim est disponible sans installation sur l’image de Online). Pensez à avoir les droits root.

  1. [archlinuxfr]
  2. Server = http://repo.archlinux.fr/arm
[archlinuxfr]
Server = http://repo.archlinux.fr/arm

A ce moment, un pacman -S yaourt ne fonctionnera pas à cause d’un problème de dépendances ne pouvant être satisfaite.

Installation de package-query depuis AUR

Pour installer package-query, il faut une dépendance nommée yajl. Cette dépendance n’est pas officiellement compatible ARMv7 mais en réalité le code C le permet, sous peine de compiler nous même le package.
Dans un premier temps il vous faudra installer gcc, cmake, et fakeroot (sudo pacman -S gcc cmake fakeroot).
Une fois ceci fait, nous allons récupérer le fichier de build x86_x64 de yajl ici (à droite « Source files ») et prendre le PKGBUILD.
Certaines modifications sont nécessaires pour pouvoir le compiler. Il faut ajouter « armv7 » dans arch=(). J’ai également du ajouter la dépendance de GCC et make pour ma part. Je vous laisse mon fichier PKGBUILD sur gist. Vous pourrez ainsi directement le récupérer.
Une fois ceci fait, placer le dans un dossier et faites makepkg -Acs.

Pour les non initiés, par convention, le $ devant une ligne signifie que la commande a été executée en tant qu’utilisateur et le # signifie qu’elle l’a été en root. (Utilisez sudo)

  1. $ curl -LO https://aur.archlinux.org/cgit/aur.git/snapshot/package-query.tar.gz
  2. $ tar -xvf package-query.tar.gz
  3. $ cd package-query
  4. $ makepkg -Acs
  5. # pacman -U package-query-1.7-1-armv7h.pkg.tar.xz
$ curl -LO https://aur.archlinux.org/cgit/aur.git/snapshot/package-query.tar.gz
$ tar -xvf package-query.tar.gz
$ cd package-query
$ makepkg -Acs
# pacman -U package-query-1.7-1-armv7h.pkg.tar.xz

Installation de Yaourt

Une fois que tout cela est fait, vous avez droit à votre récompense : installer yaourt !

  1. pacman -Syu yaourt
pacman -Syu yaourt
  1. Salut Nainterceptor,

    J’installe à plusieurs reprise arch sur mon rasp, et chaque fois je bataille un peu pour l’installer one shot.

    Franchement, merci beaucoup pour ton tuto simple et efficace.

    Je pense que tu devrais le proposer dans le wiki Archlinux section raspberry. Rien trouvé de super propre excepté ton lien 🙂 💡

  2. Merci pour ce guide!

    Il a une chose que je n’ai pas trop compris, mais qui fonctionne.
    Pourquoi lorsqu’on crée le package yajl avec makepkg, et qu’on poursuit avec package-query, il détecte yajl. Est-ce que makepkg le copie quelque part qu’il reconnait?

    Petites corrections à apporter
    1. duplication de header «Installation de package-query depuis AUR»

    2. Modifier le lien
    curl -LO https://aur.archlinux.org/packages/pa/package-query/package-query.tar.gz
    pour
    curl -LO https://aur.archlinux.org/cgit/aur.git/snapshot/package-query.tar.gz

    3. Modifier la commande
    pacman -U package-query-1.5-2-armv7h.pkg.tar.xz
    pour
    pacman -U package-query-1.7-1-armv7h.pkg.tar.xz

  3. Merci beaucoup pour l’astuce !
    Par contre l’URL donnée pour package-query n’est plus valable (‘flagged out of date’).
    J’ai pu le recup en version snapshot ici: https://aur.archlinux.org/cgit/aur.git/snapshot/package-query.tar.gz
    Et le reste de la manip à fonctionné.

    Merci encore pour l’article,
    doug

Laisser un commentaire


NOTE - Vous pouvez utiliser les éléments et attributs HTML tags and attributes:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code lang=""> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <pre lang="" extra="">