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

Annonces, dépannage, évolution du projet yaourt
GnuTux
newbie
Messages : 6
Inscription : lun. 21 mars 2016, 19:11

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

Message par GnuTux » mar. 19 avr. 2016, 18:57

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.
Nouveau forum sur linux et le libre (y compris Archlinux biensûr) ICI

Avatar de l’utilisateur
benjarobin
Maître du Kyudo
Messages : 15127
Inscription : sam. 30 mai 2009, 15:48
Localisation : Lyon

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

Message par benjarobin » mar. 19 avr. 2016, 19:18

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é...
Zsh | KDE | PC fixe : core i7, carte nvidia | Portable : Asus ul80vt
Titre d'un sujet : [Thème] Sujet (état)

Avatar de l’utilisateur
lemust83
archer de cavalerie
Messages : 153
Inscription : ven. 11 déc. 2015, 21:20
Contact :

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

Message par lemust83 » mer. 20 avr. 2016, 01:18

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...
Tour: Arch (Xfce) 64 Testing: Dual core AMD A4-3300
Mobo: Gigabyte model: GA-A55M-S2HP
Bios: Award v: F2 date: 07/13/2011
Manjaro en Dual (grub).

Avatar de l’utilisateur
benjarobin
Maître du Kyudo
Messages : 15127
Inscription : sam. 30 mai 2009, 15:48
Localisation : Lyon

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

Message par benjarobin » mer. 20 avr. 2016, 08:16

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
Zsh | KDE | PC fixe : core i7, carte nvidia | Portable : Asus ul80vt
Titre d'un sujet : [Thème] Sujet (état)

Répondre