Professional Documents
Culture Documents
Sommaire
1 Prérequis
2 Miroir
3 Création de fichier .deb
3.1 Compilation depuis deb-src
3.2 Création officielle
3.3 Mise à jour d'un paquet existant
3.4 Depuis les sources
3.4.1 Préparation du système
3.4.2 Création du paquet
3.5 Conversion d'un .rpm
4 Création d'un "Dummy Package"
4.1 Création d'un paquet depuis un binaire
4.2 Autre
4.2.1 Java-sun
4.2.1.1 Installation du system
4.2.1.2 Création du paquet
5 PBuilder
6 Création de dépôt
6.1 Pour une création toute simple
Prérequis
Avant de commencer il faut déjà être familier avec :
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 cache (apt-cacher) garde une copie de chaque paquet téléchargé pour ne pas le télécharger plusieurs fois.
Je vous conseille de voir l'article d'Andesi : Mise en place d'un miroir de paquets (http://www.andesi.org
/index.php?node=27) .
Remarque : bien que je ne ne l'aie pas fait des dizaines de fois, ce sont des méthodes que j'ai au moins testées
une fois.
Il se peut que le paquet existe uniquement en format source comme c’est le cas pour Debian Mentor par
exemple (http://mentors.debian.net/).
Installer les paquets nécessaires pour la compilation (il est possible que ce paquet dépende d'un paquet
disponible uniquement en source, il faut donc le télécharger, le compiler et l'installer avant).
Il se peut que le paquet dépende d'un autre qui est disponible uniquement en source, il faut donc le compiler
en premier !
Télécharger les sources et les compiler (attention, des sources sont téléchargées et le fichier .deb est créé
dans le répertoire courant). Remarque : le fakeroot n'est pas toujours nécessaire.
ou
Création officielle
(http://women.alioth.debian.org/wiki/index.php/English/BuildingWithoutHelper)
Télécharger les sources sans les compiler (attention des sources sont téléchargées dans le répertoire courant)
Décompresser les nouvelles sources dans le répertoire renommé lors de l'opération précédente (sans 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). Vous pouvez aussi utiliser la commande dch (dch -v numéro de version).
dpkg-buildpackage -rfakeroot
dpkg -i ../paquet_version_architecture.deb
Préparation du système
Création du paquet
Compilation
./configure
make
sudo checkinstall -y
Installer alien
Conversion du paquet
Dans mon cas je voulais installer un paquet dépendant de kernel-image-... et sous Ubuntu le kernel s'appelle
linux image j'ai donc créé un paquet "dummy" pour résoudre ce problème.
Section: base
Package: kernel-image-2.6.12-10-686-dummy
Depends: linux-image-2.6.12-10-686
Provides: kernel-image-2.6.12-10-686
Description: kernel-image-2.6.12-10-686 dummy package
Création du paquet :
$ equivs-build kernel.ctl
dh_testdir
touch build-stamp
dh_testdir
dh_testroot
dh_clean -k
dh_clean: Compatibility levels before 3 are deprecated.
# Add here commands to install the package into debian/tmp.
touch install-stamp
dh_testdir
dh_testroot
dh_installdocs
dh_installdocs: Compatibility levels before 3 are deprecated.
dh_installchangelogs
dh_installchangelogs: Compatibility levels before 3 are deprecated.
dh_compress
dh_compress: Compatibility levels before 3 are deprecated.
dh_fixperms
dh_fixperms: Compatibility levels before 3 are deprecated.
dh_installdeb
dh_installdeb: Compatibility levels before 3 are deprecated.
dh_gencontrol
dh_gencontrol: Compatibility levels before 3 are deprecated.
dh_md5sums
dh_md5sums: Compatibility levels before 3 are deprecated.
dh_builddeb
dh_builddeb: Compatibility levels before 3 are deprecated.
dpkg-deb : construction du paquet « kernel-image-2.6.12-10-686-dummy » dans « ../kernel-image-2.6.12-10-686-dum
Préparation du système
Exemple
Remarque : Normalement on n'est pas obligé de spécifier le nom du paquet et le N° de version, mais pour
cela il faut que l'installer se trouve dans un répertoire nommé
/.../paquet-version/
si se n'est pas le cas checkinstall, ne pouvant trouver le nom de paquet ou le N° de version, ne crée pas de
fichier .deb.
Autre
Java-sun
Pour créer un paquet des JDK et des JRE de Sun il existe une méthode simple.
Installation du system
Création du paquet
Création du paquet
Installation
PBuilder
Créer les environnements pour Ubuntu et Debian :
Mise à jours
Build
Création de dépôt
Pour une création traditionnelle d'un dépôt je vous conseille l'article de Debian Addict : Créer un dépôt
Debian (http://www.debianaddict.org/article31.html)
cd binary
dpkg-scanpackages . /dev/null | gzip -9c > Packages.gz
deb http://server/sous-repertoire/binary ./
Politique de confidentialité
À propos de Wikipédia
Avertissements