{{tag>administration paquet}}
----
====== Gestion avancée des paquets ======
Le but de cet article est d'aller plus loin dans les possibilités fournies par Debian pour une bonne gestion des paquets.
===== Prérequis =====
Avant de commencer il peut être utile de se familiariser avec :
* [[:synaptic|Introduction au gestionnaire de paquets Synaptic]]
* [[:depots|Introduction au système de dépôts]]
* [[https://www.debian.org/doc/manuals/apt-howto/index.fr.html|APT HOWTO]]
* [[https://www.debian.org/doc/manuals/apt-howto/ch-erros.fr.html|Comment traiter les erreurs ?]]
===== Miroir =====
Si on a plusieurs ordinateurs sur le même réseau il est conseillé, pour économiser du temps et de la bande passante, de mettre en place un miroir ou un cache.
Un miroir est une copie intégrale d'un dépôt. \\
Un [[:apt-cacher|cache]] garde une copie de chaque paquet téléchargé pour ne pas le télécharger plusieurs fois.\\
Pour cela reportez-vous à la page qui traite de la [[:tutoriel:creer_un_miroir_de_depot|mise en place d'un miroir de paquets]].
===== Création de fichier « .deb » =====
La gestion des paquets Debian via [[:gestionnaire_de_paquets|les gestionnaire de paquets]] est déjà assez complète. Pourtant il se peut que l'on ait besoin d'un programme qui n'existe pas encore en **.deb**. Si on l'installe //via// un « tar.gz » et que l'on perd les sources on aura des difficultés à le désinstaller, c'est pourquoi il peut être utile de construire un paquet.
==== Compilation depuis « deb-src » ====
Il se peut que le paquet existe uniquement en format source comme c'est le cas pour [[https://mentors.debian.net/|Debian Mentor]] par exemple.
Pour cela il faut :
* [[:depots|Activer le dépôt]] « deb-src ».
* Installer les paquets nécessaires pour la compilation : sudo apt-get build-dep 'paquet'
* Télécharger les sources et les compiler (attention les sources sont téléchargées et le fichier « .deb » est créé dans le répertoire courant) : sudo apt-get -b source 'package'
Il ne reste plus qu'à l'installer : sudo dpkg -i 'paquet'.deb
==== Création officielle ====
Je vous laisse regarder la documentation de Debian : [[https://www.debian.org/doc/manuals/maint-guide/index.fr.html|Guide du nouveau responsable Debian]].
==== Mise à jours d'un paquet existant ====
Installer le paquet nécessaire pour la compilation : sudo apt-get build-dep 'paquet'
Télécharger les sources sans les compiler (attention les sources sont téléchargées dans le répertoire courant) : sudo apt-get source 'package'
[[:archivage|Décompressez]] les nouvelles sources dans le répertoire créé lors de l'opération précédente (dans le répertoire principal généralement présent).
Modifier le fichier « debian/changelog » en ajoutant un bloc, attention la syntaxe est importante (création de la date : 822-date).
Compiler en exécutant depuis ce même répertoire en exécutant : sudo dpkg-buildpackage -r fakeroot
Installer le nouveau paquet : sudo dpkg -i ../'paquet'.deb
==== Depuis les sources amont ====
=== Préparation du système ===
[[:tutoriel:comment_installer_un_paquet|Installez les paquets]] nécessaires **[[apt>auto-apt, checkinstall, build-essential]]**.
Mettez à jour les données avec ces commandes successives : sudo auto-apt update
sudo auto-apt updatedb
sudo auto-apt update-local
=== Création du paquet ===
Installation des paquets nécessaires à la compilation : auto-apt -xy run ./configure
Compilation : ./configure
make
Installation et création du fichier « .deb » : sudo checkinstall -y
Changement des droits ;-) : sudo chown 'user':'groupe' 'paquet'.deb
==== Conversion d'un « .rpm » ====
Reportez-vous à la page de la documentation sur [[:Alien]].
==== Création d'un paquet depuis un binaire ====
Pour Java, se référer à la page installation [[:Java]] méthode Debian.
Configure la machine virtuelle par défaut : sudo update-alternatives --config java
===== Création de dépôt =====
Pour une création traditionnelle d'un dépôt, reporetez-vous à la page qui traite de la [[:tutoriel:comment_creer_depot|création d'un dépôt Debian]].
==== Pour une création basique ====
Copier les fichier **.deb** dans un répertoire, pour l'exemple « ./binary ».
Créer le dépôt avec la commande : dpkg-scanpackages binary /dev/null | gzip -9c > binary/Packages.gz
Ajouter le dépôt dans votre « sources.list » :
deb http://server/sous-repertoire/binary ./
===== Pour aller plus loin =====
* [[:tutoriel:comment_installer_un_depot_local]]
* [[:tutoriel:migrer_sans_connexion_internet]]
----
//Contributeurs : [[:utilisateurs:l_africain|L'Africain]].//