Oui, l'avantage c'est que c'est naturel. On bosse dans le répertoire des sources, après tout c'est là qu'on fait la compilation.
Sauf que dans tous le processus tel qu'il est décrit, je ne lance la compilation qu'indirectement en utilisant un outil dont le... pardon, les fichiers de configurations sont dans ./debian donc du coup pour moi ce serait plus naturel de travailler dans ./debian. Mais bon comme les packages sont crées dans ../ c'est sympa, on est bien au centre!
comme mon krims-krams est en RCS
Bon, je vais me forcer à continuer à lire malgré cet archaïsme ahurissant.
Ah oui, j'ai un petit problème, lorsque j'écris, je confonds toujours SCM (le terme générique) et RCS (un logiciel bien archaïque). Mais peut-on prendre au sérieux un journal qui dénonce graveTM lorsqu'il est trop précis? Peut-on?
La meilleure stratégie est à mon avis de versionner le tout (sources amont + répertoire debian/),
Excellent! Ma procédure d'installation est
./configure
bmake
bmake install
Cela fait 32 octets! En versionnant aussi les sources upstream je peux directement passer à 5Mo (repository git) ou bien quelques ko (en mode vendor drops) — l'avantage saute tout de suite aux yeux!
Ensuite je dois écrire un 9 dans le dossier debian/compat. Qui ne contient que cette seule donnée.
Ça s'appelle du versionnement de format, tu trouveras ça dans plein de trucs, même dans le format tar tiens.
Oui merci le problème n'est pas d'avoir du versionnement de format. Quelle est la raison pour laquelle ce 9 ne va pas dans le fichier control par exemple? C'est vraiment pour le plaisir d'avoir un fichier de plus.
Quant au fait d'avoir un changelog d'empaquetage, ça n'a rien d'anormal.
Oui bien-sûr que ça n'a rien d'anormal mais le petit problémou c'est que c'est expliqué dans le mauvais ordre dans le guide de packageur Debian pour les gens pressés. Et puis il y a écrit que ce fameux fichier ChangeLog a un format si spécial qu'il faut mieux l'éditer avec un programme dédié.
Mais toujours est-il que, pour faciliter la vie des gens qui utilisent des systèmes de gestion de version pour leur empaquetage, il existe justement des outils qui remplissent automatiquement le changelog Debian à partir de celui du gestionnaire de version. Enfin, ça existe pour les systèmes de versionnement actuels, mais pour RCS c'est peu probable.
Il existe un peu trop d'outils pour faciliter la vie des gens, je trouve.
Alors, ce fichier rules, c'est effectivement un Makefile, qui doit avoir des cibles précises, genre binary, build, clean, etc. (c'est documenté dans la charte Debian).
C'est le problème, tout est documenté un peu partout, donc forcément on passe à côté de la documentation. Pour écrire des ports sous FreeBSD ou MacPorts il y a une documentation officielle et à jour avec la version courte "toi aussi prépare ton paquet en vingt-six minutes" et la version longue "tu es tombé sur un petit facétieux, voyons comment l'intégrer gentiment au système."
qui délègue toutes les étapes à dh, un ensemble de scripts prévus pour essayer toutes les méthodes connues avec les systèmes de constructions usuels
C'est assez facile de le mettre dans les choux l'ami dh il suffit d'utiliser BSD Make (bmake sous Debian) et il faut écrire les règles à la main et j'ai fait ça à coup de devinettes puisqu'il y a trop de documentations différentes.
Ah, mais c'est qu'il ne suffit pas de faire un paquet qui marche, il faut faire un paquet propre, notamment correctement documenté et respectant les conventions, par exemple la FHS. Si c'est tout ce que tu avais fait, il manquait notamment le fichier debian/copyright décrivant la ou les licences utilisées dans ce paquet.
Que les choses soient claires. Je parle d'un logiciel dont la procédure d'installation est
./configure
bmake
bmake install
qui respecte tout, qui est documenté et tout, et tout! Mais en suivant la procédure décrite ici:
on déclenche 3-4 erreurs de lintian à cause de pratiques obsolètes!
Mal expliqué, ça c'est un autre problème, sur lequel on peut aider.
Oui, les gens qui ne savent pas comment ça marche sont probablement les mieux placés, je suppose.
Bilan, si je veux packager un logiciel assez bien standardisé dont la procédure d'installation est
./configure
bmake
bmake install
sous FreeBSD ou sous MacPorts, je peux le faire en 1 heure (en comptant large) en suivant bêtement la documentation officielle; sous Debian c'est autre chose!
En tout cas ça valait le coup d'écrire un journal qui dénonce grave!
[^] # Re: Point par point
Posté par Michaël (site web personnel) . En réponse au journal Pourquoi écrire un package Debian est-il si compliqué?. Évalué à 10.
C'est gentil!
Sauf que dans tous le processus tel qu'il est décrit, je ne lance la compilation qu'indirectement en utilisant un outil dont le... pardon, les fichiers de configurations sont dans
./debiandonc du coup pour moi ce serait plus naturel de travailler dans./debian. Mais bon comme les packages sont crées dans../c'est sympa, on est bien au centre!Ah oui, j'ai un petit problème, lorsque j'écris, je confonds toujours SCM (le terme générique) et RCS (un logiciel bien archaïque). Mais peut-on prendre au sérieux un journal qui dénonce graveTM lorsqu'il est trop précis? Peut-on?
Excellent! Ma procédure d'installation est
Cela fait 32 octets! En versionnant aussi les sources upstream je peux directement passer à 5Mo (repository
git) ou bien quelquesko(en mode vendor drops) — l'avantage saute tout de suite aux yeux!Oui merci le problème n'est pas d'avoir du versionnement de format. Quelle est la raison pour laquelle ce 9 ne va pas dans le fichier
controlpar exemple? C'est vraiment pour le plaisir d'avoir un fichier de plus.Oui bien-sûr que ça n'a rien d'anormal mais le petit problémou c'est que c'est expliqué dans le mauvais ordre dans le guide de packageur Debian pour les gens pressés. Et puis il y a écrit que ce fameux fichier ChangeLog a un format si spécial qu'il faut mieux l'éditer avec un programme dédié.
Il existe un peu trop d'outils pour faciliter la vie des gens, je trouve.
C'est le problème, tout est documenté un peu partout, donc forcément on passe à côté de la documentation. Pour écrire des ports sous FreeBSD ou MacPorts il y a une documentation officielle et à jour avec la version courte "toi aussi prépare ton paquet en vingt-six minutes" et la version longue "tu es tombé sur un petit facétieux, voyons comment l'intégrer gentiment au système."
C'est assez facile de le mettre dans les choux l'ami
dhil suffit d'utiliser BSD Make (bmakesous Debian) et il faut écrire les règles à la main et j'ai fait ça à coup de devinettes puisqu'il y a trop de documentations différentes.Que les choses soient claires. Je parle d'un logiciel dont la procédure d'installation est
qui respecte tout, qui est documenté et tout, et tout! Mais en suivant la procédure décrite ici:
https://wiki.debian.org/IntroDebianPackaging
on déclenche 3-4 erreurs de
lintianà cause de pratiques obsolètes!Oui, les gens qui ne savent pas comment ça marche sont probablement les mieux placés, je suppose.
Bilan, si je veux packager un logiciel assez bien standardisé dont la procédure d'installation est
sous FreeBSD ou sous MacPorts, je peux le faire en 1 heure (en comptant large) en suivant bêtement la documentation officielle; sous Debian c'est autre chose!
En tout cas ça valait le coup d'écrire un journal qui dénonce grave!