Différences

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

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
tutoriel:creation_deb [Le 12/12/2009, 16:28]
Canigou 66 facilement diffusible sur les autres ordinateurs de votre famille voir à d'autres sur internet > facilement diffusable sur les autres ordinateurs de votre famille voire à d'autres sur internet
tutoriel:creation_deb [Le 31/03/2023, 20:52] (Version actuelle)
88.168.124.25
Ligne 1: Ligne 1:
-{{tag>​tutoriel paquet ​à_recycler}}+{{tag>​tutoriel paquet}}
  
 ---- ----
Ligne 5: Ligne 5:
  
 ====== Création d'un paquet deb à partir d'une archive ====== ====== Création d'un paquet deb à partir d'une archive ======
- +<​note>​Ici il est expliqué comment créer un paquet .deb depuis une archive, pour créer un .deb depuis les sources, voir [[:​tutoriel/​creer_un_paquet|Création d'un paquet deb à partir des sources]]</​note>​ 
-Il peut être pratique de créer soit-même des paquets deb. Cela permet une diffusion plus pratique des programmes et surtout une désinstallation rapide dudit programme. La manière la plus commune de créer un paquet est de [[http://​doc.ubuntu-fr.org/​tutoriel/compilation|compiler les sources]] du programmes. Mais parfois, il n'y a rien à compiler.+Il peut être pratique de créer soit-même des paquets deb. Cela permet une diffusion plus pratique des programmes et surtout une désinstallation rapide dudit programme. La manière la plus commune de créer un paquet est de [[:tutoriel:compilation|compiler les sources]] du programmes. Mais parfois, il n'y a rien à compiler.
  
 Le cas m'est arrivé avec un programme python et avec des programmes simplement archivés. Le cas m'est arrivé avec un programme python et avec des programmes simplement archivés.
Ligne 14: Ligne 14:
 Le programme en question ne demande qu'à être installé avec la fonction : ''​python setup.py install''​ Le programme en question ne demande qu'à être installé avec la fonction : ''​python setup.py install''​
  
-L'​idée ici est de créer une archive au lieu de l'​installer,​ pour pouvoir par la suite créer son paquet deb. On va donc taper +L'​idée ici est de créer une archive au lieu de l'​installer,​ pour pouvoir par la suite créer son paquet deb. On va donc dans un [[:​terminal]] saisir la [[:​commande_shell|commande]] suivante
-  python setup.py bdist --format=gztar +<​code>​python setup.py bdist --format=gztar</​code>​ 
- +Une fois l'​archive créée, on procède comme pour le programme archivé. Ici, le format est tar.gz. On le décompressera en tapant: ''​tar xvzf xxxx.tar.gz''​
-Une fois l'​archive créée, on procède comme pour le programme archivé. Ici, le format est tar.gz. On le décompressera en tapant : ''​tar xvzf xxxx.tar.gz''​+
  
  
Ligne 25: Ligne 24:
 ===== Le programme archivé ===== ===== Le programme archivé =====
  
-Le second cas que j'ai rencontré est celui du programme archivé. Qui n'a jamais vu un tuto pour [[http://​doc.ubuntu-fr.org/​firefox#​versions_en_developpement|installer la dernière version de firefox]] en le désarchivant dans /opt ? +Le second cas que j'ai rencontré est celui du programme archivé. Qui n'a jamais vu un tuto pour [[:​firefox|installer la dernière version de firefox]] en le désarchivant dans /opt ?\\
 Au lieu de cela, on va créer un paquet deb pour pouvoir l'​installer et le désinstaller correctement. En lieu et place de firefox, j'en choisi pour l'​exemple la version libre [[http://​www.gnu.org/​software/​gnuzilla/​|icecat]]. Au lieu de cela, on va créer un paquet deb pour pouvoir l'​installer et le désinstaller correctement. En lieu et place de firefox, j'en choisi pour l'​exemple la version libre [[http://​www.gnu.org/​software/​gnuzilla/​|icecat]].
  
Ligne 35: Ligne 33:
 Le principe du fichier est le suivant : Le principe du fichier est le suivant :
  
-  * un dossier de travail +  * un dossier de travail, 
-  * dans ce dossier, un dossier ​"DEBIAN" ​qui comporte un fichier ​"control". Ce fichier comporte la description du paquet, ses dépendances,​ son nom...+  * dans ce dossier, un dossier ​**DEBIAN** qui comporte un fichier ​''​control''​. Ce fichier comporte la description du paquet, ses dépendances,​ son nom...
   * dans ce même dossier de travail, l'​arborescence comme si l'on partait de /   * dans ce même dossier de travail, l'​arborescence comme si l'on partait de /
  
-Créons le dossier de travail, et rendons-nous y : +Créons le dossier de travail, et rendons-nous y :
   mkdir travail   mkdir travail
   cd travail   cd travail
  
-Créons le dossier DEBIAN et l'​arborescence souhaitée : +Créons le dossier ​**DEBIAN** et l'​arborescence souhaitée : ​<​code>​ 
-  mkdir DEBIAN +mkdir DEBIAN 
-  mkdir opt +mkdir opt 
-  mkdir usr +mkdir -p usr/​share/​applications 
-  mkdir usr/share +mkdir usr/bin</​code>​
-  ​mkdir usr/​share/​applications +
-  mkdir usr/bin+
   ​   ​
-Déplaçons le dossier décompressé dans notre opt de travail : +Déplaçons le dossier décompressé dans notre **opt** de travail : <​code>​mv ../​icecat-3.5.1-i386 opt/icecat</​code>​
-  ​mv ../​icecat-3.5.1-i386 opt/icecat+
  
-Créons le fichier control : +Créons le fichier ​''​control'' ​<​code>​nano DEBIAN/​control</​code>​
-  ​nano DEBIAN/​control+
  
-Ce fichier comporte une multitude de champs plus ou moins importants : +Ce fichier comporte une multitude de champs plus ou moins importants : ​<​file>​ 
-  Package: icecat +Package: icecat 
-  Version: 3.5.1 +Version: 3.5.1 
-  Architecture:​ i386 +Architecture:​ i386 
-  Maintainer: Gnuzilla Project +Maintainer: Gnuzilla Project 
-  Section: web +Section: web 
-  Priority: optional +Priority: optional 
-  Installed-Size:​ 29700 +Installed-Size:​ 29700 
-  Description:​ Decouvrez une version totalement libre de firefox +Description:​ Decouvrez une version totalement libre de firefox 
-   ​IceCat est un fork totalement libre de Firefox, maintenu par le projet GnuZilla.+IceCat est un fork totalement libre de Firefox, maintenu par le projet GnuZilla.</​file>​
 En l'​occurrence,​ "​Package"​ et "​Version"​ permettront de remplacer un paquet d'un même nom par une version supérieure. En l'​occurrence,​ "​Package"​ et "​Version"​ permettront de remplacer un paquet d'un même nom par une version supérieure.
  
 <note important>​A cette étape, si on voulait installer la dernière version sans effacer la version officielle des dépôts, on pourrait remplacer ''​icecat''​ par ''​icecat-3.5.1''​ par exemple. Ainsi pourraient cohabiter les deux versions d'un même programme. De même, à l'​étape d'​après,​ on remplacerait ''​usr/​bin/​icecat''​ par ''​usr/​bin/​icecat-3.5.1''​ etc.</​note>​ <note important>​A cette étape, si on voulait installer la dernière version sans effacer la version officielle des dépôts, on pourrait remplacer ''​icecat''​ par ''​icecat-3.5.1''​ par exemple. Ainsi pourraient cohabiter les deux versions d'un même programme. De même, à l'​étape d'​après,​ on remplacerait ''​usr/​bin/​icecat''​ par ''​usr/​bin/​icecat-3.5.1''​ etc.</​note>​
  
-On peut créer le lanceur dans usr/bin +On peut créer le lanceur dans **usr/bin** : <​code>​nano usr/​bin/​icecat</​code>​ 
-  ​nano usr/​bin/​icecat +Et y coller : ​<file bash> 
-Et y coller : +#​!/​bin/​bash 
-  #​!/​bin/​bash +cd /​opt/​icecat 
-  cd /​opt/​icecat +sh run-icecat.sh</​file>​
-  sh run-icecat.sh+
  
-Puis le rendre exécutable+Puis le rendre exécutable :
   chmod +x usr/​bin/​icecat   chmod +x usr/​bin/​icecat
  
-Ainsi que l'​entrée dans le menu : +Ainsi que l'​entrée dans le menu : <​code>​nano usr/​share/​applications/​icecat.desktop</​code>​ 
-  ​nano usr/​share/​applications/​icecat.desktop +Et y coller : <file .desktop>​ 
-Et y coller : +#​!/​usr/​bin/​env xdg-open
-  #​!/​usr/​bin/​env xdg-open+
   ​   ​
-  ​[Desktop Entry] +[Desktop Entry] 
-  Version=3.5.1 +Version=3.5.1 
-  Encoding=UTF-8 +Encoding=UTF-8 
-  Name=IceCat +Name=IceCat 
-  GenericName=IceCat +GenericName=IceCat 
-  Comment=Navigateur Web (Firefox totalement libre) +Comment=Navigateur Web (Firefox totalement libre) 
-  Exec=icecat +Exec=icecat 
-  Icon=/​opt/​icecat/​icons/​mozicon128.png +Icon=/​opt/​icecat/​icons/​mozicon128.png 
-  Terminal=false +Terminal=false 
-  Type=Application +Type=Application 
-  Categories=Application;​Network;​ +Categories=Application;​Network;​ 
-  Name[fr_FR]=IceCat +Name[fr_FR]=IceCat 
 +</​file>​
 Enfin, tous les ingrédients pour créer le paquet deb sont prêts. Il suffit de le créer par la fonction : Enfin, tous les ingrédients pour créer le paquet deb sont prêts. Il suffit de le créer par la fonction :
   cd ..   cd ..
Ligne 112: Ligne 104:
  
   * IceCat, [[http://​www.gnu.org/​software/​gnuzilla/​|the GNU version of the Firefox browser]]   * IceCat, [[http://​www.gnu.org/​software/​gnuzilla/​|the GNU version of the Firefox browser]]
- 
   * [[http://​www.python.org/​doc/​2.0.1/​dist/​built-dist.html|documentation python]]   * [[http://​www.python.org/​doc/​2.0.1/​dist/​built-dist.html|documentation python]]
- 
   * [[http://​www.linuxfordevices.com/​c/​a/​Linux-For-Devices-Articles/​How-to-make-deb-packages/​|How to make deb packages]]   * [[http://​www.linuxfordevices.com/​c/​a/​Linux-For-Devices-Articles/​How-to-make-deb-packages/​|How to make deb packages]]
- +  ​* [[https://​forum.ubuntu-fr.org/​viewtopic.php?​id=334554|Le paquet de billou]] pour l'​exemple spécifique de firefox/​icecat que je voulais mettre en avant.
-  ​* [[http://​forum.ubuntu-fr.org/​viewtopic.php?​id=334554|Le paquet de billou]] pour l'​exemple spécifique de firefox/​icecat que je voulais mettre en avant.+
  
 ---- ----
  • tutoriel/creation_deb.1260631700.txt.gz
  • Dernière modification: Le 18/04/2011, 14:51
  • (modification externe)