Paquets RPMNotre quatrième article dans la série sur la découverte d’OpenSUSE Leap est consacré à la gestion des paquets, et plus exactement à la configuration des différents dépôts de paquets. Le nouveau venu s’y perd facilement, et il est impératif de se documenter un minimum sur les dépôts de paquets divers et variés avant de mettre la main à la pâte. J’ai donc tenté de présenter les informations sur ce sujet d’une manière synthétique.

Introduction

Un dépôt de paquets, c’est l’endroit où le gestionnaire de paquets (zypper en l’occurrence) va récupérer les paquets logiciels. La disponibilité des paquets (applications, bibliothèques, pilotes, traductions, polices, etc.) dépend donc de la configuration correcte des dépôts en question. Concrètement, un dépôt logiciel consiste en une collection de paquets RPM ainsi que des métadonnées associées à ces derniers. Un dépôt de paquets peut se trouver sur un DVD, sur un serveur local ou en ligne. Dans cet article, nous traiterons essentiellement les dépôts en ligne.

Les dépôts officiels

La distribution OpenSUSE supporte officiellement quatre dépôts logiciels.

  • OSS (Open Source Software) : le dépôt de paquets principal, qui fournit uniquement des logiciels Open Source.
  • Non-OSS (Non Open Source Software) : dépôt contenant des logiciels non libres comme unrar, Steam ou Opera.
  • Update : mises à jour officielles de sécurité et de correction de bugs pour les logiciels libres.
  • Update Non-OSS : mises à jour officielles de sécurité et de correction de bugs pour les logiciels non libres.

Ces quatre dépôts de base devront toujours être configurés et activés.

Ajouter un dépôt

L’ajout d’un dépôt s’effectue avec la commande suivante.

# zypper addrepo [options] <uri> <alias>

L’URI (Uniform Resource Identifier) décrit le dépôt de paquets. Voici un exemple.

http://download.opensuse.org/distribution/leap/15.0/repo/oss

Quant à l’alias, c’est le nom que l’on donnera au dépôt en question, par exemple oss.

Les dépôt de paquets tiers

Les dépôts de paquets officiels fournissent déjà un nombre important de paquets. Ils sont complétés par un certain nombre de paquets tiers. Pour l’instant, j’ai eu recours à deux de ces dépôts supplémentaires. J’imagine que j’en découvrirai d’autres par la suite, lorsque l’occasion se présentera.

  • Le dépôt Packman fournit notamment les paquets multimédia dont la redistribution est problématique.
  • Le dépôt NVidia permet d’installer facilement les pilotes propriétaires pour les cartes vidéo NVidia, en remplacement des pilotes libres.
  • Le dépôt DVDCSS fournit la bibliothèque libdvdcss2 requise pour lire le contenu de certains DVD protégés.

La priorité des dépôts

Un paquet peut être fourni par deux dépôts différents, et il peut être préférable de privilégier un dépôt plutôt qu’un autre. Concrètement, si l’on a configuré le dépôt Packman, il est préférable que les paquets multimédia proviennent de ce dépôt.

Le gestionnaire de paquets d’OpenSUSE permet l’affectation de priorités aux dépôts. Voici ce que dit la page man zypper(8).

-p, --priority positive-integer
  Set the priority of the repository. Priority of 1 is the highest, 
  the higher the number  the  lower  the priority. -p 0 will set 
  the priority back to the default (99). Packages from repositories 
  with higher priority will be preferred even  in case  there  is a
  higher installable version available in the repository with a 
  lower priority.

Changer de fournisseur

Dans la configuration par défaut, un paquet installé depuis un certain dépôt ne va pas être mis à jour par un paquet fourni par un dépôt concurrent, même si ce dernier a été configuré de manière prioritaire.

Concrètement, les bibliothèques multimédia installées par défaut depuis le DVD d’installation ne vont pas être remplacées par les paquets correspondants fournis par le dépôt Packman, même si ce dernier est prioritaire par rapport aux dépôts officiels.

Pour forcer le remplacement des paquets installés par ceux fournis par le dépôt Packman, on pourra utiliser l’option --allow-vendor-change.

Configuration automatique des dépôts

Étant donné que je dois configurer les dépôts de paquets sur chacun de mes postes de travail, j’ai automatisé la procédure en écrivant un petit script qui gère tout cela proprement. Dans notre précédent article, nous avons récupéré les scripts post-installation de mon dépôt Github vers le répertoire /root. À présent, nous allons exécuter le deuxième script dans la série.

# cd opensuse/15.0/scripts
# ./02-configurer-depots.sh

OpenSUSE Leap 15.0

Sous le capot, le script se charge de gérer les opérations suivantes.

  • Supprimer la configuration existante.
  • Configurer les quatre dépôts de paquets officiels.
  • Configurer le dépôt tiers NVidia.
  • Configurer le dépôt tiers DVDCSS.
  • Configurer le dépôt tiers Packman de manière prioritaire.
  • Configurer une poignée de dépôts tiers additionnels.
  • Importer les clés GPG des dépôts.
  • Mettre à jour le système.
  • Remplacer les paquets multimédia par les versions améliorées fournies par le dépôt Packman.

Notez que la présence du dépôt NVidia n’est en aucun cas gênante si l’on ne dispose pas d’une telle carte graphique ou si l’on souhaite conserver les pilotes libres. Dans ce cas, il suffit de ne pas installer explicitement les pilotes propriétaires correspondants. Cette opération fera d’ailleurs l’objet de notre prochain article.


0 commentaire

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.