Comment créer un PPA pour un programme de travail?

33

Supposons que je dispose d'une application de travail écrite en C, C ++ ou Python. Je veux créer un PPA Launchpad pour que d'autres puissent facilement l'installer à partir d'un package. S'il vous plaît donner des instructions étape par étape pour faire cela du début à la fin. (Ou fournissez un lien qui fait la même chose;)

  • Le langage de programmation est-il important? (Serait-ce un script bash?)
  • Dois-je ajouter quelque chose à ma construction?
  • Où la construction doit-elle s'installer?
  • Comment définir les dépendances?
  • Comment utiliser les dépendances?
  • Comment créer un fichier .deb?
  • Que dois-je faire avant de télécharger sur Launchpad?
posée d3vid 01.03.2011 - 13:49
la source

2 réponses

31

C'est une question très large. J'essaierai de répondre autant que je peux, mais ce sera définitivement PAS instruction pas à pas. C'est parce qu'il n'y a pas d'algorithme pas à pas pour créer un package. La façon dont vous le ferez dépend de nombreux facteurs, principalement du type de package (application, bibliothèque), de la structure de la source et de nombreux détails.

Heureusement, il existe un guide complet sur lien

Je vais essayer de vous aider un peu à comprendre l'ensemble du processus, alors quand vous serez un peu plus familiarisé avec le processus. Le Guide de conditionnement contient des ressources pour une aide supplémentaire.

Tout d’abord, vous devez réaliser que la création d’un package (un fichier .deb) est un processus distinct de la création d’un PPA. Créer un PPA consiste à accéder au profil de votre Launchpad et à cliquer sur le lien "Créer un nouveau PPA". C'est tout. C'est créé, ça marche, mais c'est vide. Pour télécharger un paquet, vous devez d'abord en créer un. Mais laissez-moi d'abord répondre à certaines de vos questions mineures.

  • Le langage de programmation N'EST PAS important. Il peut s'agir d'une application C ++, d'un script Bash, de Brainfuck Hello World, d'un fichier README unique ou d'un ensemble de photos sympas. Les packages peuvent contenir n'importe quel fichier. Lors de l'installation, le paquet est extrait à la racine ("/") de votre système de fichiers. De cette manière, ils peuvent placer des fichiers dans le dossier des binaires, ajouter des fonds d'écran au jeu par défaut de GNOME ou fournir un script Bash à l'utilisateur.
  • Vous DOIS ajouter quelque chose à la source. Ce doit être un répertoire de niveau supérieur nommé "debian". Il y aura des fichiers avec les détails du paquet - ils seront utilisés pour définir le type du paquet, etc.
  • Les dépendances sont répertoriées dans l'un de ces fichiers (parmi d'autres détails). D'où les obtenir? Ce sont simplement d'autres packages que votre application utilise. Le développeur de l'application saura quelles bibliothèques et ressources son programme requiert, il ne devrait donc pas avoir beaucoup de problèmes pour les lister.
    • Certains outils utilisés pour créer un package (pbuilder) peuvent remplir automatiquement les dépendances, probablement en déterminant ce que votre application requiert lors de la compilation.
  • Il est également recommandé d’utiliser AutoTools . C'est une autre chose que vous devrez peut-être ajouter, mais presque tous les logiciels les utilisent déjà. AutoTools est un ensemble de programmes extrêmement utiles - automake, autoconf et autoscan pour en nommer quelques-uns. Lorsque vous compilez et installez un programme avec les fameux ./ configure & amp; make & amp; & amp; make install puis les autotools permettent de traiter automatiquement la source, de préparer d’autres ressources incluses avec la source à l’installation et d’extraire le résultat de la compilation à l’endroit approprié (pour répondre à votre question: la compilation va extraire pour biffer des endroits, les fichiers binaires iront dans / usr / local / bin, les documents dans / usr / local / share / docs, etc. De plus, un fichier binaire d'un paquet ira à des endroits différents, par exemple / bin. Comment gérer cette mise en page de répertoires compliquée? Utilisez AutoTools - elle s’en occupera automatiquement, et c’est pourquoi elle est si utile).

Construire un paquet .deb peut sembler compliqué, mais ce n’est pas si difficile. Je vous recommande fortement le guide officiel d'Ubuntu pour créer des paquets: lien

C'est énorme, mais vous verrez que vous pouvez probablement sauter la plupart des parties de ce texte (selon le paquet que vous allez construire). Fondamentalement, le processus d’emballage comprend ces parties (toutes sont clairement expliquées dans le Guide) :

  1. Init certains outils utilisés pour construire des paquets.
  2. Obtenir la source
  3. Créez le répertoire ./debian et remplissez-le avec les données requises
  4. Construisez le paquet avec debuild [Cela devrait créer un ensemble de fichiers, y compris * .dsc, * _source.build, * _source.changes, qui sont responsables des données sur le paquet et comment traiter it (vous aurez également une source .tar.gz)]
  5. Vérifiez que tout fonctionne en exécutant pbuilder localement (il faudra tous les fichiers mentionnés ci-dessus et essayer de les combiner dans un package .deb, en construisant automatiquement la source à l'aide d'AutoTools - c'est pourquoi ils sont essentiels pour le packaging < em> [franchement parlant - non - vous pouvez vous en passer sans ou avec quelques alternatives, mais c'est l'approche la plus simple, et d'autres peuvent nécessiter une configuration avancée, car vous devrez indiquer au constructeur comment construire le source (en utilisant ./debian/rules file) - mais ce n'est pas pour les débutants] ) - si vous voulez juste obtenir un paquet .deb, c'est fait.

Maintenant, vous devrez le télécharger sur votre PPA, ce qui est expliqué sur cette page d'aide: réponse donnée Rafał Cieślak 01.03.2011 - 20:47

la source
5
  • Avant de pouvoir télécharger votre paquet, vous devez le configurer pour le paquetage .deb , consultez le guide de packaging .

  • Une fois que vous avez créé un package pour votre logiciel, consultez la documentation PPA de Launchpad. Il vous guidera de la création de PPA au téléchargement de votre paquet.

réponse donnée Isaiah 01.03.2011 - 20:27
la source

Lire d'autres questions sur les étiquettes