Page 1 sur 1

[Yaourt] Comment automatiser l'installation de paquet AUR dans un script ?

Publié : mar. 19 avr. 2016, 18:57
par GnuTux
Bonjour,

J'ai crée un script pour automatiser l'installation de certains paquets sous ArchLinux pour gagner du temps et il y a certains paquets qui doivent être installé depuis AUR, par exemple avec yaourt. Prenons par exemple "teamviewer".

Bien-sûr je peux tout a fais mettre un yaourt -S teamviewer dans le script mais l'inconvénient c'est qu'il va me demander une confirmation a chaque fois pour les différentes étapes (voulez vous éditer ? voulez vous compiler ? voulez vous installer ?) et le principe c'est d'automatiser sans que l'utilisateur ai besoin de confirmer. Auriez vous une solution pour cette automatisation ?

Vous pouvez faire un test avec teamviewer par exemple, il faut qu'il soit installé sans intervention de votre part avec le lancement du script.

Autre difficulté : le script est lancé avec les droits administrateurs car il y a aussi pleins d'autres manips pour installer des paquets des dépots et autres modifs (pacman --noconfirm -S firefox etc...) or par défaut avec yaourt, il faut pas que la commande soit lancé en administrateur, là encore il faut trouver une solution.


merci d'avance.

Re: [Yaourt] Comment automatiser l'installation de paquet AUR dans un script ?

Publié : mar. 19 avr. 2016, 19:18
par benjarobin
Bonjour,
Ce n'est pas yaourt qui interdit de lancer l'opération en root mais makepkg. C'est très dangereux de construire un paquet en root ! Et en quoi c'est couteux de se connecter à un utilisateur pour réaliser la construction du paquet. Sinon ce que tu demandes reste assez trivial faire il faut juste avoir 5 minutes (et ne pas forcément utiliser yaourt, mais tout simplement les outils de base d'Arch Linux)
Sinon un truc comme cela devrait faire l'affaire :

Code : Tout sélectionner

#!/bin/bash

pkg="$1"
builduser=benjarobin

mkdir -p build
chown ${builduser}:users build
cd build
su - "$builduser" -c "cd \"$PWD\"; ../b.sh $pkg"
pacman -U "$pkg"*.pkg.tar*
avec b.sh

Code : Tout sélectionner

#!/bin/bash

pkg="$1"

yaourt -G "$pkg"
cd "$pkg"
makepkg
Attention ce code est assez moche, mais tu as l'idée

Il y a bien sûr ici aucune gestion des dépendances... Et les gérer deviendrait un poil plus compliqué...

Re: [Yaourt] Comment automatiser l'installation de paquet AUR dans un script ?

Publié : mer. 20 avr. 2016, 01:18
par lemust83
Dans le code "moche", (+1) l'option makepkg -si installera les dépendances requises, mais cette fonction requiert que tu sois conscient de ce que tu fais, ce qui n'est pas évident dans un script...

Re: [Yaourt] Comment automatiser l'installation de paquet AUR dans un script ?

Publié : mer. 20 avr. 2016, 08:16
par benjarobin
Sauf que cette commande ne peut être lancé en root. Après il suffit d'avoir un compte sudo bien paramétré pour que cela marche