SDB:Mise à jour avec changement de fournisseur
Sommaire
Aperçu
Version : 11.2+ Ce qui suit s'applique à openSUSE à partir de la version 11.2.
Le gestionnaire de paquet Zypp utilise le concept de vendor stickiness. Cela veut dire que, par défaut, un paquet installé n'est mis à jour automatiquement que vers des nouvelles versions distribuées par le même fournisseur.
Avantages du vendor stickiness :
- Vous ne risquez pas, lors d'une mise à jour, de remplacer accidentellement un logiciel en version stable par une version expérimentale d'un fournisseur différent.
- Vous ne risquez pas le va-et-vient entre différents dépôts à chaque mise à jour, dans le cas où le même paquet est présent chez plusieurs fournisseurs.
Inconvénients du vendor stickiness :
- Les mises à jour nécessitant un changement de fournisseur sont moins visibles dans YaST.
- Mettre à jour un paquet vers une version d'un fournisseur différent requiert un peu plus de travail.
- De temps en temps, le gestionnaire de paquet vous demandera si vous voulez autoriser un changement de fournisseur, ce qui peut être agaçant, inquiétant ou déroutant.
Effectuer des mises à jour avec changement de fournisseur
Il existe différentes méthodes pour effectuer une mise à jour avec changement de fournisseur.
Changement de fournisseur pour un seul paquet
En utilisant YaST
Cherchez le paquet que vous souhaitez mettre à jour, puis allez dans l'onglet Versions et sélectionnez la version que vous voulez installer.
En utilisant Zypper
Installez le paquet avec Zypper en spécifiant la version désirée. Par exemple :
zypper install 'amarok=2.8.0'
Ou en spécifiant un dépôt :
zypper install --from [dépôt] [paquet]
Changement de fournisseur pour un dépôt entier
En utilisant YaST
Si vous souhaitez migrer tous les paquets installés vers des versions d'un dépôt spécifique, ouvrez l’onglet Dépôts, sélectionnez le dépôt voulu et cliquez sur Remplacer les paquets système par les versions de ce dépôt.
En utilisant Zypper
Vous pouvez également changer de fournisseur tous les paquets d'un dépôt en utilisant Zypper :
zypper dup --from [dépôt]
Autoriser le changement de fournisseur de manière globale
Autoriser le changement de fournisseur pour certains dépôts
Vous pouvez définir comme « équivalents » des dépôts de différents fournisseurs. Pour ce faire, créez, dans le dossier /etc/zypp/vendors.d/, un fichier regroupant ces fournisseurs dans une liste. Par exemple :
[main] vendors = suse,opensuse,obs://build.suse.de,Packman,http://packman.links2linux.de
- Vous pouvez utiliser n'importe quel nom de fichier, mais chaque fichier dans ce dossier correspond à un groupe de fournisseurs équivalents.
- Libzypp fait une comparaison des chaînes de caractères (comme strncmp, insensible à la casse) mais seuls les débuts des chaînes sont comparés. Par exemple, le fournisseur « opensuse11.0 » est compatible avec le fournisseur « openSUSE ».
Autoriser le changement de fournisseur pour tous les dépôts
Si vous le souhaitez, vous pouvez désactiver complètement le vendor stickiness. Dans ce cas, le gestionnaire de paquets ne vous demandera pas la permission de changer le fournisseur des paquets et les mises à jour ne feront qu'installer les paquets avec les numéros de version les plus élevés, peu importe leur provenance.
En utilisant YaST
Il suffit de cocher l'option Autoriser le changement de fournisseur dans le menu Options. YaST indiquera alors quand une mise à jour est disponible avec du texte bleu, même si la mise à jour provient d'un fournisseur différent.
En utilisant Zypper
Dans /etc/zypp/zypp.conf, ajoutez la ligne suivante :
solver.allowVendorChange = true
Alors zypper up installera les versions les plus récentes disponibles depuis n'importe quel fournisseur.