Rétroportage

De Wiki de la communauté Mandriva.

Sommaire

Description

Les dépôts « backport » (rétroportage en français) sont une nouveauté depuis la 2007 (et ils sont utilisés pleinement depuis la 2007 Spring). Pour comprendre ce qu'est un logiciel Rétroporté, il faut savoir que Mandriva Linux est développée de manière ouverte grâce à une version particulière de la distribution : la version de développement appelée Cooker. Cette dernière version dispose généralement des tout derniers logiciels mais ils ne sont pas ou peu testés.

Les paquetages présents dans les dépôts backport ne font pas l'objet d'un support officiel de Mandriva.

On ne peut pas utiliser un paquetage prévu pour Cooker directement dans la version stable de la distribution, car généralement le paquetage dépend d'autres paquetages et de fonctionnalités qui ne sont présentes que dans Cooker (et même si ce n'est pas le cas, il n'est pas recommandé d'utiliser un paquetage instable sur une distribution stable, car cela pourrait mettre en péril tout le système).

C'est pourquoi on prend le paquetage provenant de Cooker et l'on recompile ce paquetage sur la version stable. Un tel paquet est appelé un rétroportage. Cela permet d'éliminer une partie des problèmes, notamment pour les différences de version des bibliothèques (et le risque de « symbole non trouvé ») et les dépendances vis-à-vis des autres paquetages seront adaptées à la version stable. Néanmoins, le logiciel n'a généralement pas eu le temps d'avoir été testé sur Cooker et des problèmes peuvent subsister. Ces problèmes sont plutôt bénins et installer un paquetage depuis les dépôts backport est considéré comme assez sûr pour un ordinateur de bureau. Pour un serveur, il n'est pas recommandé d'utiliser backport car on vise généralement avant tout la stabilité d'un tel système et même si les risques de problème sont minimes, il vaut mieux ne pas les prendre.

Plus d'informations sur les sources...

Installation

Installation paquetages rétroportés

Tout d'abord, il faut configurer les dépôts officiels (ce qui est peut-être déjà effectué). Ensuite, lancer l'outil d'installation de paquetages Mandriva Image:drakrpm-icon.png drakrpm. Choisissez dans la colonne de gauche (qui indique le type de paquetage à installer) l'entrée rétroportage, comme dans la capture d'écran ci-dessous :

Image:Drakrpm_backports.png

Depuis cette interface, vous pouvez installer n'importe quel rétroportage comme d'habitude : via la fonction de recherche ou en sélectionnant les différentes "vues" disponibles de l'outil et en naviguant.

Installation en tant que mise à jour

Note : cette méthode n'est pas conseillée car elle remplacera tous vos paquetages officiels par des rétroportages (lorsque ces derniers sont disponibles), il est préférable d'utiliser la méthode ci-dessus où vous aurez plus de contrôle sur de ce que vous installez.

Pour installer les dépôts backport, il suffit de configurer les dépôts officiels (ce qui est peut-être déjà effectué). Ensuite, activer les dépôts backports avec Image:drakrpm-edit-media-icon.png drakrpm-edit-media. Vous devez activer les dépôts et la mise à jour du dépôt en cochant les deux cases sur la gauche des dépôts nouvellement ajoutés, comme sur l'illustration ci-dessous :

Image:Backports_ok.png

Ensuite, mettez votre système à jour et tous les rétroportages seront installés à la place des versions officielles (rappel : les rétroportages ne sont pas supportés par Mandriva !). Vous serez avertis par l'application de mise à jour des nouveautés dans les dépôts backport, comme s'il s'agissait de mises à jour.

Créer ses propres rétroportages

Il est possible, moyennant quelques connaissances basiques de réaliser ses propres rétroportages

  • Dans son répertoire personnel, lancer
    mkdir -p ~/rpm/{BUILD,RPMS/{i586,noarch,x86_64},SOURCES,SRPMS,SPECS,tmp}
    afin de créer la hiérarchie de répertoires nécessaire
  • Créer le fichier ~/.rpmmacros comme suit :
%_topdir                %(echo $HOME)/rpm
%_tmppath               %(echo $HOME)/rpm/tmp

# Pour signer les paquetages automatiquement remplacer 'Mandrivalinux'
# avec votre nom GPG. Il est aussi possible d'utiliser
# rpm --resign pour signer les paquetages plus tard.
%_signature             gpg
%_gpg_name              Mandrivalinux
%_gpg_path              ~/.gnupg

%distribution           Mandriva Linux
%vendor                 Mandriva

# Si vous voulez utiliser votre propre suffixe à la place de "mdv"
# décommenter la ligne suivante
# %distsuffix             foo
  • Installer le paquetage rpm-build : il contient des scripts et des macros destinés à construire les paquetages.
  • Télécharger le paquetage src.rpm à rétroporter. Le placer dans ~/rpm/SRPMS/
  • Lancer la commande
    rpm -i ~/rpm/SRPMS/le_paquetage.src.rpm
    pour décompresser le fichier. N'ayez crainte, ça ne modifiera rien dans le système et il s'extraiera proprement dans la hiérarchie que vous avez créée précédemment. Si vous obtenez des avertissement sur un utilisateur qui n'existe pas ou qui n'a pas les droits nécessaires, vous pouvez les ignorer.
  • Un fichier .spec a été créé dans ~/SPECS/ : c'est lui qui indique la manière d'installer et de construire le RPM. Pour réaliser le rétroportage, lancer la commande
    rpm -ba ~/rpm/SPECS/le_paquetage.spec
    .
  • Le fichier RPM résultant sera dans RPMS/i586, RPMS/noarch ou RPMS/x86_64 suivant l'architecture supportée par le paquet. Si vous obtenez des erreurs, il vous faudra alors réparer le fichier SPEC. Normalement, vous ne devez pas avoir à faire cela car les fichier SPEC sont prévus pour n'importe quelle version stable (mais supportée) ou instable : vous êtes donc face à un bug que vous pouvez remonter sur bugzilla.
Ad (via La Vignette)
en recherche d’emploi ?