Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente Prochaine révision Les deux révisions suivantes | ||
tutoriel:creer_un_paquet [Le 20/04/2012, 10:55] 93.5.15.57 style |
tutoriel:creer_un_paquet [Le 09/10/2018, 17:17] 176.133.45.15 pas de rm -rf si cd fail ... |
||
---|---|---|---|
Ligne 4: | Ligne 4: | ||
====== Comment créer des paquets ? ====== | ====== Comment créer des paquets ? ====== | ||
- | ===== Présentation ===== | ||
<note>Ici il est expliqué comment créer un paquet .deb depuis des sources, pour créer un .deb depuis une archive binaire voir [[tutoriel:creation_deb|Création d'un paquet deb à partir d'une archive]]</note> | <note>Ici il est expliqué comment créer un paquet .deb depuis des sources, pour créer un .deb depuis une archive binaire voir [[tutoriel:creation_deb|Création d'un paquet deb à partir d'une archive]]</note> | ||
- | Dans une version récente d'un système [[:GNU]]/[[:Linux]] comme peut l'être Ubuntu, l'installation de logiciels est devenue extrêmement facile grâce aux outils [[:apt-get]] (en ligne de commande) ou [[:Synaptic]] (Gnome) ou [[:Adept]] et [[:Kpackagekit]] (KDE) ou [[:Aptitude]]. Ces outils donnent accès à des dépôts contenant pas loin de 28000 paquets. Pourtant, la richesse de l'univers des logiciels libres fait que, malgré ce nombre important, il existe encore des applications qui ne sont pas packagées. Nous allons donc nous intéresser ici à la création de paquets Debian (les fameux fichiers « .deb », utilisés aussi dans Ubuntu) à partir des sources d'une application existante. | + | Dans une version récente d'un système [[:GNU]]/[[:Linux]] comme peut l'être Ubuntu, l'installation de logiciels est devenue extrêmement facile grâce à [[:software-center|La logithèque]] ou aux outils [[:apt-get]] (en ligne de commande) ou [[:Synaptic]] (Gnome) ou [[:Muon]] (KDE). Ces outils donnent accès à des [[:dépôts]] contenant plus de 49000 paquets (([[https://launchpad.net/ubuntu/vivid/amd64|Ubuntu Vivid (15.04) dispose de 49031 paquets pour l'architecture amd64]])). Pourtant, la richesse de l'univers des [[wpfr>logiciels libres]] fait que, malgré ce nombre important, il existe encore des applications qui ne sont pas empaquetées. Nous allons donc nous intéresser ici à la création de paquets Debian (les fameux fichiers « .deb », utilisés aussi dans Ubuntu) à partir des sources d'une application existante. |
+ | <note aide>Il est aussi possible de créer un paquet d'une façon très simple avec [[:checkinstall]]. Cette est décrit la procédure détaillée pour une validation sur des dépôts officiels que ne permet pas checkinstall.</note> | ||
- | + | ===== Pré-requis ===== | |
- | ==== Pré-requis ==== | + | |
Pour pouvoir suivre cette documentation un certain nombre de pré-requis sont nécessaires : | Pour pouvoir suivre cette documentation un certain nombre de pré-requis sont nécessaires : | ||
* Les dépôts source doivent être disponibles dans synaptic (décommentez les lignes qui commencent par deb-src dans /etc/apt/sources.list) | * Les dépôts source doivent être disponibles dans synaptic (décommentez les lignes qui commencent par deb-src dans /etc/apt/sources.list) | ||
- | * [[tutoriel:comment_installer_un_paquet|Installez les paquets]] **debhelper cdbs lintian build-essential fakeroot devscripts pbuilder dh-make debootstrap** ([[apt://debhelper,cdbs,lintian,build-essential,fakeroot,devscripts,pbuilder,dh-make,debootstrap|en 1 clic]]). | + | * [[tutoriel:comment_installer_un_paquet|Installez les paquets]] **[[apt>debhelper,cdbs,lintian,build-essential,fakeroot,devscripts,pbuilder,dh-make,debootstrap|debhelper cdbs lintian build-essential fakeroot devscripts pbuilder dh-make debootstrap]]** |
Ligne 52: | Ligne 51: | ||
<note>Vous obtiendrez exactement ces fichiers si vous êtes sous Dapper, peut-être une autre version sous d'autres versions d'Ubuntu.</note> | <note>Vous obtiendrez exactement ces fichiers si vous êtes sous Dapper, peut-être une autre version sous d'autres versions d'Ubuntu.</note> | ||
- | Le fichier **xfce4-xkb-plugin_0.4.1.orig.tar.gz** est en fait l'archive contenant les fichiers sources tels que l'on peut les obtenir sur le site du projet (typiquement ceux que l'on installe avec « ''./configure && make && make install'' »). Le répertoire est d'ailleurs issu de la décompression, de cette archive. Seul le nom du fichier a été changé pour des raisons que nous préciserons plus tard. | + | Le fichier **xfce4-xkb-plugin_0.4.1.orig.tar.gz** est en fait l'archive contenant les fichiers sources tels que l'on peut les obtenir sur le site du projet (typiquement ceux que l'on installe avec « ''./configure && make && make install'' »). Le répertoire est d'ailleurs issu de la décompression de cette archive. Seul le nom du fichier a été changé pour des raisons que nous préciserons plus tard. |
Le fichier **xfce4-xkb-plugin_0.4.1-0ubuntu5.dsc** contient la description du paquet source (et des deux autres fichiers, avec leur taille et leur somme MD5). | Le fichier **xfce4-xkb-plugin_0.4.1-0ubuntu5.dsc** contient la description du paquet source (et des deux autres fichiers, avec leur taille et leur somme MD5). | ||
Ligne 72: | Ligne 71: | ||
<note warning>Faites attention à bien être dans **~/packaging** : ''rm -rf'' efface tout sans confirmation !</note> | <note warning>Faites attention à bien être dans **~/packaging** : ''rm -rf'' efface tout sans confirmation !</note> | ||
- | cd ~/packaging | + | cd ~/packaging && rm -rf * # on nettoie :-) |
- | rm -rf * # on nettoie :-) | + | |
mkdir epdfview && cd epdfview | mkdir epdfview && cd epdfview | ||
wget http://gauvain.pocentek.net/u-classroom/2006-08-31/epdfview-0.1.5.tar.gz | wget http://gauvain.pocentek.net/u-classroom/2006-08-31/epdfview-0.1.5.tar.gz | ||
Ligne 468: | Ligne 466: | ||
FIXME | FIXME | ||
<note tip>Une des solutions pour tester est d'utiliser un système virtualisé (à l'aide de [[::virtualbox|VirtualBox]] par exemple). En utilisant correctement les //snapshots//, on peut facilement faire un rollback du système virtualisé avant l'installation du paquet.</note> | <note tip>Une des solutions pour tester est d'utiliser un système virtualisé (à l'aide de [[::virtualbox|VirtualBox]] par exemple). En utilisant correctement les //snapshots//, on peut facilement faire un rollback du système virtualisé avant l'installation du paquet.</note> | ||
+ | |||
+ | <note tip>Une autre solution est d'utiliser Docker.</note> | ||
---- | ---- |