« Installation automatique d'un paquet Debian » : différence entre les versions

De Wiki doc

(Corrections de fautes + aération du code.)
(→‎Usage pratique : Ajout d'une bannière d'information listant les valeurs possibles de DEBIAN_FRONTEND)
 
Ligne 14 : Ligne 14 :
  apt -y install barpackage
  apt -y install barpackage
  unset DEBIAN_FRONTEND
  unset DEBIAN_FRONTEND
{{info|La variable [https://fr.linux-console.net/?p{{=}}17177 DEBIAN_FRONTEND] supporte les valeurs <code>noninteractive</code> : ne pose aucune questions et utilise les valeurs par défaut ; <code>dialogue</code> : pose les questions via une interface ''ncurses'' (valeur par défaut) ; <code>texte</code> : pose les questions via une interface teste simple ; <code>gtk</code> : pose les questions via une interface graphique ''GTK'' (nécessite les paquets cdebconf-gtk et gkdebconf).}}


=Configuration de debconf=
=Configuration de debconf=

Dernière version du 18 novembre 2023 à 20:09

Lors de l'installation de paquets avec APT, certain d'entre eux posent des questions via une interface ncurses, ce qui gène leur installation via des scripts (et ceux, même avec l'option -y). Pour y remédier, il faut soit désactiver complètement cette interaction ncurses afin d'utiliser les valeurs par défaut ou soit configurer debconf afin de préciser nous même les paramètres à appliquer par défaut pour un paquet.

Désactivation de l’interaction

Il faut définir la variable DEBIAN_FRONTEND comme suit

export DEBIAN_FRONTEND=noninteractive

et la réactiver quand on en a plus besoin

unset DEBIAN_FRONTEND

Usage pratique

export DEBIAN_FRONTEND=noninteractive
apt -y install foopackage
apt -y install barpackage
unset DEBIAN_FRONTEND

INFORMATION

La variable DEBIAN_FRONTEND supporte les valeurs noninteractive : ne pose aucune questions et utilise les valeurs par défaut ; dialogue : pose les questions via une interface ncurses (valeur par défaut) ; texte : pose les questions via une interface teste simple ; gtk : pose les questions via une interface graphique GTK (nécessite les paquets cdebconf-gtk et gkdebconf).

Configuration de debconf

Pour cette partie, il va falloir passer des arguments au programme debconf (qui définit les variables à passer à DPKG lors des installations). Afin de connaître les valeurs possibles, il faut installer le paquet debconf-utils (inutile si vous connaissez les valeurs à l'avance)

apt install debconf-utils

La commande debconf-get-selection permet de lister l'ensemble des variables possibles. On peut l'utiliser avec un pipe pour filtrer ce qui nous intéresse. Personnellement, je l'utilise avec less et sa fonction de recherche / afin de trouver ce qui m'intéresse.

debconf-get-selection | less

Pour définir une valeur personnalisé, on l'utilise comme suit (exemple avec Wireshark)

echo "wireshark-common wireshark-common/install-setuid boolean true" | debconf-set-selections

Il suffit ensuite d'installer le paquet (ici wireshark) et constater que le paquet ne pose plus la question qui faisait chier

apt install -y wireshark

Source