La création d un paquet Debian. Aurélien Jarno. Journées du Logiciel Libre. 15 octobre 2005



Documents pareils
Créer son premier package.deb. 19 août

Pourquoi et comment faire sa première contribution à Debian?

Guide du nouveau responsable Debian. Guide du nouveau responsable Debian

Référence du développeur Debian

Chapitre 10 : Logiciels

Tutoriel : la construction de paquets Debian

Auteur LARDOUX Guillaume Contact Année 2014 DEVELOPPEMENT MOBILE AVEC CORDOVA

TP n 2 : Installation et administration du serveur ProFTP. Partie 1 : Fonctionnement du protocole FTP (pas plus de 15min)

Déployer des applications Perl

Quelques éléments de compilation en C et makefiles

Mon premier rpm. 7 juin Avant de commencer RPM URPMI RPMBUILD... 2

REPUBLIQUE ISLAMIQUE DE MAURITANIE

Atelier Migration. Mohamadi ZONGO Formateur assistant Kassim ASSIROU Atelier Migration.

User Documentation. Documentation utilisateur. version 0.2b

TD séance n 2c Mise à jour des Systèmes

Introduction à Eclipse

Installation et compilation de gnurbs sous Windows

MANUEL D INSTALLATION D UN PROXY

Introduction à Linux (pour le HPC) «Linux 101» Présentation :

1 Démarrage de Marionnet

Mise en place d un système de Téléphonie sur IP basé sur le logiciel Asterisk

Installation d ORACLE 10g sous Debian Etch

21 mars Simulations et Méthodes de Monte Carlo. DADI Charles-Abner. Objectifs et intérêt de ce T.E.R. Générer l'aléatoire.

Situation professionnelle n X

Présentation Utilisation. VirtualBox. Firas Kraïem. 22 février 2014

LiveUSB clefisn. Meilland jean claude et Kbida Abdellatif. 16 septembre 2012

INSTALLATION NG V2.1 D OCS INVENTORY. Procédure d utilisation. Auteur : GALLEGO Cédric 23/10/2014 N version : v1

Installation de VirtualPOPC-1 sur Ubuntu Server LTS 64bits

PROXY SQUID-SQARD. procédure

TP LINUX : MISE EN PLACE DU SERVEUR DE MESSAGERIE QMAIL

Installation software

les techniques d'extraction, les formulaires et intégration dans un site WEB

Documentation d'installation Plateforme femme actuelle

Installation LTE-SIM. Simulation du réseau 4G (LTE-SIM) en vue d optimiser les ressources spectrales de l opérateur.

Ateliers Python+Qt : Premiers pas : S'installer pour PyQt... en quelques minutes sous Windows!

0.1 Mail & News : Thunderbird

Fiche technique rue de Londres Paris Tél. : Mail : contact@omnikles.com

Certificats de signature de code (CodeSigning)

INFORMATIQUE & WEB. PARCOURS CERTIFICAT PROFESSIONNEL Programmation de sites Web. 1 an 7 MODULES. Code du diplôme : CP09

MRTG & RRD Tool. Multi Router Traffic Grapher

Remise à niveau d un programme JAVA du domaine public

Ateliers Python+Qt : Premiers pas : Comment développez ses propres interfaces graphiques sur le RaspberryPi?

Automatisation de l administration système

WDpStats Procédure d installation

La mémoire. Un ordinateur. L'octet. Le bit

Serveur Acronis Backup & Recovery 10 pour Linux. Update 5. Guide d'installation

Installation d OwnCloud 8.0 sous Debian Avec connexion des utilisateurs active directory et mise en place de HTTPS

Programmation C. Apprendre à développer des programmes simples dans le langage C

Titre: Version: Dernière modification: Auteur: Statut: Licence:

wxwidgets dans un environnement Microsoft Windows

Accès aux ressources informatiques de l ENSEEIHT à distance

Hadoop / Big Data. Benjamin Renaut <renaut.benjamin@tokidev.fr> MBDS

Enoncé du TP 8 Système

Oracle 11g. Installation et administration. Claude Duvallet 1/36

Virtualisation de serveur grâce à Linux-

Installation d'un serveur FTP géré par une base de données MySQL

Solution d inventaire automatisé d un parc informatique et de télédistribution OCS INVENTORY NG. EHRHARD Eric - Gestionnaire Parc Informatique

Projet De Stijl Plate-forme pour robots mobiles

L informatique en BCPST

Etudiant Ella Fitzgerald

Pharmed. gestion de pharmacie hospitalière. Installation / déploiement

Présentation de l outil d administration de réseau Nagios

Administration de Parc Informatique TP07 : Installation de Linux Debian

Projet Administration Réseaux

Tutoriel Création d une source Cydia et compilation des packages sous Linux

Quel ENT pour Paris 5?

Ce document décrit la démarche à suivre pour installer les outils de développement et compiler le projet TANAGRA.

MANUEL UTILISATEUR KIWI BACKUP V 3

TD/TP 1 Introduction au SDK d Android

Comment installer ocaml sous windows avec ocamlsdl?

Stéphane Mariel. les Cahiers. Programmeur PHP 5. Avec la contribution de Jean Zundel et Jean-Marie Thomas. Groupe Eyrolles, 2004, ISBN

Gestion d identités PSL Installation IdP Authentic

Vulgarisation Java EE Java EE, c est quoi?

Manuel d'installation de GESLAB Client Lourd

Service Déposant: Procédure d installation. Page 1. Service déposant. Procédure d installation Version 2.3

Conversion d un entier. Méthode par soustraction

dmp.gouv.fr Pour en savoir plus DMP Info Service : 24h/24 7j/7

OCS Inventory & GLPI

Installation et prise en main

1 Description générale de VISFIELD

Retour d expérience en Astrophysique : utilisation du Cloud IaaS pour le traitement de données des missions spatiales

Builds et tests Utilisation de CMake et de Dart

La base de données XML exist. A. Belaïd

Client Debian Squeeze et serveur SambaEdu3

Nouveautés Ignition v7.7

DOCUMENTATION ADMINISTRATEUR

SECURIDAY 2012 Pro Edition

Institut Supérieure Aux Etudes Technologiques De Nabeul. Département Informatique

SOLUTION DE SUPERVISION SYSTEME ET RESEAU

Environnements de développement (intégrés)

Ocs Inventory et GLPI s appuie sur un serveur LAMP. Je vais donc commencer par installer les paquets nécessaires.

Introduction à. Oracle Application Express

Contrôle distant par liaison SSH Christian Dupaty BTS Systèmes Numériques Lycée Fourcade Gardanne Académie d Aix Marseille

Gestion d identités PSL Exploitation IdP Authentic

TP1 : Initiation à l algorithmique (1 séance)

Certificats Electronique d AE sur Clé USB

Systèmes informatiques

Transcription:

Journées du Logiciel Libre 15 octobre 2005

Plan

Les paquets Du code source aux binaires

Qu est ce que créer un paquet?

Les paquets sources Composés de trois fichiers :.orig.tar.gz Le code source original, non modifié..diff.gz Les modifications apportés par au format diff..dsc Informations sur le paquet source. Somme MD5 des deux fichiers précedents. NB : Il existe aussi des paquets sources dit natifs composés uniquement de deux fichiers, un fichier.tar.gz et un fichier.dsc, lorsque le paquet est spécifique à.

Les paquets binaires (.deb) Contiennent des logiciels, des libraries ou des données dans leur version compilée C est ce que l utilisateur installe sur son système Deux types de paquets binaires : Paquets communs à toutes les architectures (.all.deb) exemple : fichiers textes, images, sons, etc. Paquets spécifiques à une architecture (.i386.deb,.powerpc.deb) exemple : exécutables, librairies, headers, etc.

Les paquets binaires (.deb) Un paquet binaire est une archive ar contenant : debian-binary Indique la version du format.deb control.tar.gz Contient les informations liées au paquet (nom, version, description, dépendances, etc.) et éventuellement des scripts à exécuter lors de l installation ou la désinstallation du paquet. data.tar.gz Contient les données du paquet, i.e. tous les fichiers qui seront installés.

La phase de compilation du paquet source Le répertoire debian/ contient un certain nombre de fichiers nécessaires à la compilation du paquet. Il doit contenir au minimum : rules Script principal de compilation du paquet. control Description du paquet source, du ou des paquets binaires et relations avec les autres paquets. changelog Historique des modifications du paquet.

debian/rules C est un fichier de type Makefile qui doit être executable et qui doit contenir les cibles suivantes : build Cette cible doit exécuter les différentes étapes de la compilation du logiciel. binary, binary-arch, binary-indep Ces cibles doivent créer un ou plusieurs paquets binaires (.deb) à partir des fichiers générés à l étape précédente. clean Cette cible doit effacer tout les fichiers créés lors de la compilation ou de la création des paquets binaires. L ensemble de ces opérations doit répondre à un certain nombre de règles qui se trouve dans la Charte ( Policy Manual), ou dans les chartes annexes (python, perl, java, menu, etc...)

Les outils d aide pour debian/rules Écrire toutes les opérations nécessaires pour arriver jusqu au.deb dans le fichier debian/rules est fastidieux. Heureusement des outils existent pour nous simplifier la vie : debhelper Le plus utilisé, simplifie grandemement le fichier debian/rules yada Le plus ancien, aujourd hui dépassé. dbs (surcouche à debhelper) Aujourd hui dépassé. cdbs (surcouche à debhelper) Utile pour les paquets classiques (./configure ; make ; make install)

Exemple de Galette Gestionnaire d Adhérents en Ligne Extrêmement Tarabiscoté mais Tellement Efficace...

Se faire une idée du logiciel Télécharger le logiciel L installer L utiliser Regarder rapidement comme il fonctionne Éventuellement contacter l auteur

Installation des outils nécessaires apt-get install build-essential Le paquet build-essential contient le minimum nécessaire à la compilation (make, gcc, libc-dev, dpkg-dev). apt-get install fakeroot Nécessaire pour compiler un paquet sans être root. apt-get install devscripts Un ensemble d outils facilitant la vie du mainteneur. apt-get install dh-make Utilitaire permettant de créer plus ou moins automatiquement un paquet source à partir des sources du logiciel. apt-get install son-éditeur-favori

Création du paquet Lire les différentes chartes qui s appliquent à se paquet Lancer dh make Décompacter les sources Se placer dans la racine des sources dh make -f../nomdelarchive.tar.gz répondre aux questions Renommer/supprimer/modifier les fichiers du répertoire debian/ en fonction du paquet Première compilation du paquet : lancer dpkg-buildpackage ou debuild Corrections éventuelles et retour à l étape précedente Essais du paquet, et éventuellement retour à l étape précedente

Vérification du paquet Quand le paquet semble prêt, il est temps de faire vérifier le paquet par un vérificateur automatique. Il en existe deux dans : lintian Le plus utilisé, le plus performant linda Une alternative possible, ou plutôt un complément Tous deux comportent un certain nombre de règles, qui sont principalement dérivées de la Charte. Attention! Un paquet pour lequel aucune erreur n est détectée, n est pas un paquet parfait. Inversement, une erreur détectée par un de ces outils n est pas forcément une erreur. Avoir un sens critique.

Pour en savoir plus http ://www.debian.org/devel/ La charte ( Policy Manual) À lire absolument! Le guide des nouveaux responsables de paquets Les chartes spécifiques à certains paquets (perl, python, java, dictionnaires, etc.) apt-get source Ne pas réinventer la roue, ne pas hésiter à aller voir comment les autres font.