Faire un paquet logiciel pour Ubuntu

:video:logo_attention.png

Cette documentation nécessite un bon niveau technique.

Cette section vous explique comment réaliser à partir de sources de logiciels un backport, c'est à dire la construction d'un paquet deb facilement installable sous une des versions d'Ubuntu via synaptic.

Pour faire ce backport, il faut pouvoir télécharger les sources des logiciels, il existe 2 solutions pour cela.

Installer les outils nécessaires au backport

Avec synaptic installez :

  1. subversion
  1. build-essential

Créer un endroit propre pour votre backport

Dans votre dossier /home, créez avec nautilus un dossier mon_ubuntu contenant lui-même un dossier cinelerra_sources.

Récupérer les sources via apt-get

Dans votre fichier sources.list, vous devez avoir les dépôts sources actifs, il ne doit pas y avoir de # devant la ligne deb-src.

#depot lprod.org pour la video et multimedia
deb http://lprod.org/deb/dapper/ ./
deb-src http://lprod.org/deb/dapper/ ./

:video:logo_terminal.png

Pour récupérer les sources du logiciel installé dans votre ordinateur, ouvrez un terminal root (= console super-administrateur), allez dans le dossier mon_ubuntu/cinelerra_sources avec la commande :

cd mon_ubuntu/cinelerra_sources/

puis tapez la commande suivante :

apt-get source cinelerra

Cette commande va générer un dossier, un fichier dsc et un fichier tar.gz comme sur l'écran ci-dessous

:autres:sources_cinelerra2.jpg

Le dossier contient la décompression de l'archive avec tous les fichiers sources nécessaires à la fabrication de votre paquet.

Créez un dossier archives avec la commande :

mkdir archives

puis déplacez l'archive tar.gz et le fichier dsc dans ce dossier archives avec

mv *.dsc *.tar.gz archives/

Entrez dans le dossier hvirtual….

Récupérer les sources sur le site officiel du logiciel

Pour récupérer les sources officielles, téléchargez et décompressez le fichier sources à prendre sur cette page dans votre dossier de backport.

Récupérer un fichier source d'une ancienne version officielle de Cinelerra

Faire vos modifications du logiciel

Allez dans le dossier du logiciel et réalisez vos modifications sur les fichiers contenus dedans.

Signaler les modifications

Dans le dossier hvirtual, vous trouverez un dossier debian contenant un fichier changelog qu'il va falloir renseigner.

  • Vous pouvez éditer ce fichier avec la commande suivante :
gedit changelog

Dans le contenu du fichier, placez vous à la première ligne du fichier et :!: complétez de façon rigoureuse :!: avec :

hvirtual (1:2.1.0-2svn20070501-lprod2) unstable; urgency=low
 
  * new start up splash screen
 
 -- Laurent Bellegarde <laurent.bellegarde@free.fr>  thr, 01 May 2007 08:58:00 +0200
 
hvirtual (1:2.1.0-2svn20070323-lprod2) unstable; urgency=low
 
  * new revision number -2svn
 
 -- Eric Seigne <eric.seigne@ryxeo.com>  Sun, 25 Mar 2007 13:59:07 +0200

:?: le numéro de version ici, la date doit être complétée à la hausse, la version du paquet précédent était 23/03/2007, la nouvelle version est 01/05/2007.

Attention c'est ce numéro de version qui sera pris en compte si vous voulez que le paquet généré remplace automatiquement l'ancienne version lors d'un futur apt-get upgrade.

C'est très important, par exemple si le paquet 1:2.1.0-2svn20070323-lprod2 est installé et que vous générez un paquet 1:2.1.0-2svn20070322-lprod2, le numéro de version de celui ci est plus petit que celui qui est actuellement installé, il ne remplacera donc pas le paquet en cours.

:!: Il est astucieux de conserver l'origine du paquet en rajoutant lprod dans le nom, il sera plus facile par la suite de faire la traçabilité du paquet et d'aider les autres utilisateurs en cas de soucis d'installation. :!:

  • Sauvegardez le nouveau fichier.

Fabriquer le paquet deb du logiciel

:video:logo_terminal.png

Installer les build-depends

Les build-depends sont toutes les briques logicielles indispensables à la compilation et la création du paquet deb d'un logiciel.

Tout dépends de la qualité du travail qui a été fait par le mainteneur du paquet. Il est possible que quelques oublis se soient glissés dans la liste des dépendances de compilation voire même que certaines dépendances ne puissent-être satisfaites !

apt-get build-dep cinelerra

Créer le paquet et les fichiers sources

Depuis le dossier hvirtual… lancez la commande

dpkg-buildpackage

Et là il ne vous reste plus qu'à croiser les palmes … des fois ça marche, des fois ça marche même jusqu'au bout et ça fabrique réellement les paquets DEB.

Si ça ne marche pas sachez que c'est presque normal. Le travail de compilation est long et fastidieux.

Normalement, si tout fonctionne bien, vous allez obtenir un paquet deb de cinelerra avec votre nouveau numéro, ainsi que des paquets deb de toutes les dépendances et librairies mises elles aussi à jour.

Tester son paquet logiciel

:video:logo_terminal.png

Une fois que vous avez généré votre paquet deb, installez-le en root avec :

dpkg -i librairie1.deb librairie2.deb paquet_cinelerra.deb

Si lors de la fin de l'installation il n'y a pas de message d'erreur, c'est que votre nouvelle version c'est correctement installée.

Mettre à disposition son paquet logiciel

Il reste maintenant à envoyer votre travail sur un dépôt APT.