197 votes

Quel est le guide d'empaquetage Debian le plus simple ?

Je suis allé sur le wiki d'Ubuntu mais je me suis embrouillé, il y avait trop de façons de faire. Veuillez me donner un guide facile pour l'empaquetage Debian.

131voto

Evan Points 1318

Este est un bon HOWTO pour la création d'une base de .deb fichier. Il convient pour créer .deb pour un usage personnel mais pas assez rigoureux si vous souhaitez que le paquet soit inclus dans Debian / Ubuntu - pour cela, vous devez lire la section Guide du nouveau responsable Debian et/ou le Guide de l'emballage Ubuntu (que vous avez déjà essayé, je crois).

Un bon outil pour vérifier votre .deb pour la conformité est lintian (installable à partir des référentiels).

Il y a eu deux sessions ici dans les salons de discussion Ask Ubuntu.

Les bases de l'empaquetage sur Ubuntu (Empaquetage : 1ère partie)

Emballage Ubuntu pour les PPAs de Launchpad (Emballage : Partie 2)

13voto

Jon Galloway Points 28243

Quelles sont les parties qui vous posent problème ? Bien que compliqué, le guide m'a semblé très clair lorsque je l'ai suivi.

Résumé rapide :

  • Source de l'extrait .tar.gz
  • Exécuter dh_make
  • Modifier les fichiers debian
  • Exécuter la débâcle

13voto

trjh Points 11

Vous pouvez même utiliser dpkg-deb pour créer des paquets simples.

Voici un beau tutoriel de Ubuntuforums .

9voto

Publié à l'origine sur StackOverFlow ce guide concerne les logiciels précompilés ou interprétés :

La bonne façon de construire un paquet deb est d'utiliser dpkg-buildpackage mais parfois c'est un peu compliqué. A la place, vous pouvez utiliser dpkg -b <folder> et il créera votre paquet Debian.

Ce sont les bases pour créer un paquet Debian avec dpkg -b <folder> avec tout binaire ou avec tout type de script qui s'exécute automatiquement sans nécessiter de compilation manuelle (Python, Bash, Pearl, Ruby) :

  1. Créez les fichiers et les dossiers afin de recréer la structure suivante :

    ProgramName-Version/
    ProgramName-Version/DEBIAN
    ProgramName-Version/DEBIAN/control
    ProgramName-Version/usr/
    ProgramName-Version/usr/bin/
    ProgramName-Version/usr/bin/your_script

    Le scripts placé à /usr/bin/ sont directement appelés depuis le terminal, notez que je n'ai pas ajouté d'extension au script. Vous pouvez également remarquer que la structure du paquet deb sera la structure du programme une fois qu'il sera installé. Donc, si vous suivez cette logique, si votre programme a un seul fichier, vous pouvez le placer directement dans le dossier ProgramName-Version/usr/bin/your_script mais si vous avez plusieurs fichiers, vous devriez les placer sous ProgramName-Version/usr/share/ProgramName/all your files et ne placer qu'un seul fichier sous /usr/bin/ qui appellera vos scripts à partir de /usr/share/ProgramName/

  2. Changez toutes les permissions de dossier en root :

     chown root:root -R /path/to/ProgramName-Version  
  3. Changez les permissions du script :

     chmod 0755 /path/to/the/script
  4. Enfin, vous pouvez courir : dpkg -b /path/to/the/ProgramName-Version et votre paquet deb sera créé ! (Vous pouvez également ajouter le post/pre inst scripts et tout ce que vous voulez, cela fonctionne comme un paquet Debian normal).

Voici un exemple de la control fichier. Il vous suffit de le copier/coller dans un fichier vide appelé "control" et de le placer dans le dossier DEBIAN.

Package: ProgramName
Version: VERSION
Architecture: all
Maintainer: YOUR NAME <EMAIL>
Depends: python2.7, etc , etc,
Installed-Size: in_kb
Homepage: http://foo.com
Description: Here you can put a one line description.This is the short Description.
 Here you put the long description, indented by 1 space.

7voto

Jeremy Mullin Points 439

La manière la plus simple d'emballer quelque chose est d'utiliser checkinstall .

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X