Vous êtes ici : Accueil / Debian GNU/Linux / Système / Logiciels / Backporter un packet Debian de testing vers stable

Backporter un packet Debian de testing vers stable

Par Pierre-Yves Landuré Dernière modification 11/11/2017 09:40

Cet article facilite la mise à jour un logiciel par création d'un paquet Debian à partir des sources disponibles dans les dépôts testing.

Ce guide est testé sur:

  • Debian 7.0 Wheezy

Ce guide est testé avec ces logiciels:

  • iproute2
  • openvpn (dépend de iproute, iproute2)

Avertissement

Le succès d'un backport de paquet dépends grandement des dépendances du paquet backporté. Cet article n'est pas un guide exact pas à pas de backport. C'est un aide mémoire des étapes à passer pour créer un backport. Il n'y a aucune garantie de résultat.

Prérequis

Ce guide nécessite:

Paramètres

Renseignez le nom du paquet à backporter:

PACKAGE="openvpn"

Mise en place

Détectez le nom du paquet des sources du paquet à backporter:

SRC_PACKAGE="$(command apt-cache show "${PACKAGE}" \
    | command grep --max-count=1 "Source:" \
    | command cut --delimiter=' ' --fields=2)"
test -z "${SRC_PACKAGE}" && SRC_PACKAGE="${PACKAGE}"

Préparation de l'environnement

Installez les logiciels nécessaires:

command apt-get install build-essential fakeroot

Installez les dépendances de construction du paquet backporté:

command apt-get build-dep "${SRC_PACKAGE}"

Remarque: En cas d'échec de la commande ci-dessus, essayez de backporter les paquets bloquants.

Obtention des sources

Placez-vous dans le dossier dédié à la compilation des sources:

command pushd '/usr/src'

Récupérez les sources du paquet backporté:

command apt-get source "${SRC_PACKAGE}"

Détectez le nom du dossier de source créé:

SOURCE_PATH="$(command find '/usr/src' -maxdepth 1 -type d -name "${SRC_PACKAGE}-*" \
    | command sort \
    | command tail -n 1)"

Construction du paquet

Placez-vous dans le dossier des sources du paquet:

command cd "${SOURCE_PATH}"

Lancez la création du backport:

command dpkg-buildpackage -rfakeroot

Remarque: Ignorez l'avertissement qui suit à la fin de la création du paquet:

(WARNING: Failed to sign .dsc and .changes file)

Une fois la construction terminée, sortez du dossier des sources:

command popd

Installation du paquet

Obtenez la liste des paquets créés:

command cat "${SOURCE_PATH}/debian/files" \
| command cut --delimiter=' ' --fields=1 \
| command sed -e "s|^|$(command dirname "${SOURCE_PATH}")/|"

Installez les nouveaux paquets à l'aide de la commande 'dpkg -i' ou 'gdebi'.

Remarque: La commande qui suit installe automatiquement les paquets listés par la commande ci-dessus:

command cat "${SOURCE_PATH}/debian/files" \
| command cut --delimiter=' ' --fields=1 \
| command sed -e "s|^|$(command dirname "${SOURCE_PATH}")/|" \
| command xargs dpkg -i