Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

autres:backport [2013/10/24 15:02]
autres:backport [2013/10/24 15:02] (Version actuelle)
Ligne 1: Ligne 1:
 +====== Faire un paquet logiciel pour Ubuntu ======
  
 +{{:​video:​logo_attention.png|:​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 :
 +
 +   - **subversion**
 +
 +   - **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**.
 +
 +<​code>​
 +#depot lprod.org pour la video et multimedia
 +deb http://​lprod.org/​deb/​dapper/​ ./
 +deb-src http://​lprod.org/​deb/​dapper/​ ./
 +</​code>​
 +
 +{{:​video:​logo_terminal.png|:​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 :
 +
 +<​code>​cd mon_ubuntu/​cinelerra_sources/</​code>​
 +
 +puis tapez la commande suivante :
 +
 +<​code>​apt-get source cinelerra</​code>​
 +
 +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|:​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 :
 +
 +<​code>​mkdir archives</​code>​
 +
 +puis déplacez l'​archive **tar.gz** et le fichier **dsc** dans ce dossier **archives** avec
 +
 +<​code>​mv *.dsc *.tar.gz archives/</​code>​
 +
 +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.
 +
 +   * Page de téléchargement du fichier source de la dernière version de Cinelerra : http://​sourceforge.net/​project/​showfiles.php?​group_id=13554&​package_id=50184
 +
 +
 +
 +==== Récupérer un fichier source d'une ancienne version officielle de Cinelerra ====
 +
 +   * Page de téléchargement du fichier source de la dernière version de Cinelerra : http://​sourceforge.net/​project/​showfiles.php?​group_id=13554&​package_id=50184
 +
 +===== 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 :
 +
 +<​code>​gedit changelog</​code>​
 +
 +Dans le contenu du fichier, placez vous à la première ligne du fichier et :!: **complétez de façon rigoureuse** :!: avec :
 +
 +<​code>​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</​code>​
 +
 +:?: 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|:​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 !
 +
 +<​code>​
 +apt-get build-dep cinelerra
 +</​code>​
 +
 +
 +==== Créer le paquet et les fichiers sources ====
 +
 +Depuis le dossier **hvirtual...** lancez la commande
 +<​code>​
 +dpkg-buildpackage
 +</​code>​
 +
 +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|:​video:​logo_terminal.png}}
 +
 +Une fois que vous avez généré votre paquet deb, installez-le en root avec :
 +
 +<​code>​
 +dpkg -i librairie1.deb librairie2.deb paquet_cinelerra.deb
 +</​code>​
 +
 +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.