Emballage avec Debhelper
Important Exigences: Les exigences de la section intitulée "Emballage à partir de zéro" plus debhelper et dh-make En tant qu'emballeur, vous créerez rarement des paquets à partir de zéro, comme nous l'avons fait dans la section précédente. Comme vous pouvez l’imaginer, de nombreuses tâches et informations de la règles Les fichiers, par exemple, sont communs aux packages. Pour rendre l'emballage plus facile et plus efficace, vous pouvez utiliser debhelper pour aider avec ces tâches. Debhelper est un ensemble de scripts Perl (préfixé par dh_) qui automatise le processus de construction de paquets. Avec ces scripts, la construction d’un paquet Debian devient assez simple. Dans cet exemple, nous construirons à nouveau le paquet GNU Hello, mais cette fois-ci, nous comparerons notre travail à celui d'Ubuntu. bonjour debhelper paquet. Encore une fois, créez un répertoire dans lequel vous travaillerez: Ensuite, récupérez le paquet source Ubuntu: Comme dans l'exemple précédent, la première chose à faire est de décompresser l'archive d'origine (en amont). Au lieu de copier l'archive en amont dans hello_2.1.1.orig.tar.gz comme nous l'avons fait dans l'exemple précédent, nous allons laisser dh_make faire le travail pour nous. La seule chose à faire est de renommer le dossier source afin qu’il se présente sous la forme suivante:
Pour créer la "debianisation" initiale du source, nous allons utiliser dh_make. dh_make vous posera ensuite une série de questions: Mise en garde Seulement courir dh_make -e une fois que. Si vous l'exécutez à nouveau après la première utilisation, cela ne fonctionnera pas correctement. Si vous voulez le changer ou faire une erreur, supprimez le répertoire source et décompressez l'archive tar en amont. Ensuite, vous pouvez migrer dans le répertoire source et réessayer. Fonctionnement dh_make -e fait deux choses: le Bonjour Le programme n’est pas très compliqué, et comme nous l’avons vu dans la section intitulée «Emballage à partir de zéro», l’emballage ne nécessite pas beaucoup plus que les fichiers de base. Par conséquent, retirons le .ex des dossiers: Pour Bonjour, vous ne serez pas non plus * Licence * Ubuntu Packaging Guide Index avoir besoin LISEZMOI.Debian (Fichier README pour des problèmes spécifiques à Debian, pas le fichier README du programme), dirs (utilisé par dh_installdirs créer les répertoires nécessaires), docs (utilisé par dh_installdocs installer la documentation du programme), ou Info (utilisé par dh_installinfo installer le fichier d’information) dans le fichier Debian annuaire. Pour plus d'informations sur ces fichiers, consultez la section intitulée "Exemples de fichiers dh_make". À ce stade, vous ne devriez avoir que changelog, compat, contrôle, droits d'auteur, et règles fichiers dans le Debian annuaire. Dans la section intitulée "Conditionnement à partir de zéro", le seul fichier nouveau est compat, qui est un fichier contenant le debhelper version (dans ce cas 4) qui est utilisée. Vous devrez ajuster le changeloglégèrement dans ce cas pour refléter que ce paquet est nommé bonjour debhelper plutôt que juste Bonjour: En utilisant debhelper, les seules choses que nous devons changer contrôle sont le nom (substituant Bonjour pour bonjour debhelper) et en ajoutant debhelper (> = 4.0.0) au Build-Depends champ pour le paquet source. Le paquet Ubuntu pour bonjour debhelper ressemble à: Nous pouvons copier le droits d'auteur fichier et le postinst et prerm Scripts d'Ubuntu bonjour debhelper paquet, car ils n’ont pas changé depuis la section intitulée "Emballage à partir de zéro". Nous allons également copier le règles déposer afin que nous puissions l'inspecter. Le dernier fichier que nous devons examiner est règles, où le pouvoir de debhelper les scripts peuvent être vus. le debhelper version de règles est un peu plus petit (54 lignes contre 72 lignes dans la version de la section intitulée "règles"). le debhelper la version ressemble à: touch build binary-indep: install # Il n'y a aucun fichier indépendant de l'architecture à télécharger # généré par ce paquet. S'il y en avait, ils seraient faits ici. binary-arch: installer dh_testdir - un arch. .PHONY: binaire binaire-arch binaire-indépendant - checkroot propre Notez que les tâches telles que tester si vous êtes dans le bon répertoire (dh_testdir), en veillant à construire le paquet avec les privilèges root (dh_testroot), installation de la documentation (dh_installdocs et dh_installchangelogs) et le nettoyage après la construction (dh_clean) sont traitées automatiquement. Beaucoup de paquets beaucoup plus compliqués que Bonjour avoir règles fichiers pas plus gros parce que le debhelper les scripts gèrent la plupart des tâches. Pour une liste complète de debhelper scripts, voir la section intitulée "Liste des debhelper scripts ". Ils sont également bien documentés dans leurs langues respectives. homme pages. C'est un exercice utile de lire la page de manuel (ils sont bien écrits et peu longs) pour chaque script d'aide utilisé ci-dessus. règles fichier.