S'ils sont capables de développer des applications, pourquoi attendent-ils donc qu'un tiers veuille bien faire un paquet binaire pour la distribution X ? Pourquoi ne prennent-ils pas le temps de faire eux-même un paquet binaire pour Debian, Ubuntu, Fedora ou Mandriva (qui sont assez représentative) en fonction de la distribution qu'ils utilisent déjà, quitte à le proposer dans un premier temps hors distribution.
C'est bien ce qui se passe souvent dans la pratique. Mais ce n'est pas satisfaisant pour les développeurs non plus. Il y a trop de formats de paquets différents, et les distributions utilisant le même format arrivent à avoir des paquets incompatibles. Même lorsqu'elles sont aussi proches (synchronisées tous les 6 mois ?) que debian et ubuntu. Donc il faut faire un paquet sarge, un dapper, un edgy (quand on a, comme gcompris, la chance d'avoir un DD qui fait rentrer dans unstable les nouvelles versions très rapidement, sinon il faut aussi proposer un paquet pour etch et edgy+1). On ajoute les diverses versions de Mandriva encore utilisées et fedora et suse, côté rpm, ça devient ingérable. Il faut proposer une petite dizaine de paquets pour couvrir les cas les plus demandés. Et on n'a pas encore fait les paquets slackware ni arch ni gobolinux ni les builds gentoo ni les ports freebsd. Le temps à passer pour se documenter (comment je fais un deb? un rpm?) est rhédibitoire surtout que l'atomisation des distributions interdit de tester sur la majorité des cas.
Trop de formats différents ? Il y a deux formats binaires principaux (je ne compte pas les ebuild de Gentoo/Gobolinux) : RPM et deb, point. Construire un paquet pour une distribution ou une autre s'appuyant sur l'un des deux formats consiste surtout à appliquer les régles (surtout avec les DFSG de Debian, du moins si tu veux que le paquet soit officiel) qui régissent la vie d'un paquet et de composer avec les dépendances qui sont disponibles. En gros, c'est tout. La documentation ne manque pas même si j'admets qu'elle est peut-être un peu prolixe .Il existe en effet au moins trois outils plus ou moins différents pour créer des paquets debian : dbs, debhelper, cdbs (pour ne citer que les plus répandus). Pour autant, la base demeure l'utilisation d'un Makefile par dpkg-buildpackage (qui peut être appelé par d'autres wrappers comme debuild ou pbuilder dont j'ai déjà parlé). La seule chose qu'un développeur rompu à l'utilisation des outils de compilation que sont les autotools et compagnie, finalement, c'est la façon dont le paquet se génère.
Quant aux RPMs, c'est un peu plus simple puisqu'il n'y a que le fichier de spec utilisé par la commande rpmbuild. Il existe également des outils pour éviter les bévues classiques en utilisant des sandbox ou chroot notamment (voir les travaux de Dag Wieers, par exemple, que j'ai déjà cité).
Si tu t'en tiens aux paquets binaires, tu n'as donc que deux formats... Évidemment, il faudrait plus que 40 Go pour être à l'aise avec des outils comme pbuilder mais, pour rassurer un peu ton co-développeur, je ne dispose pour ma part que d'un disque de 80 Go sur mon portable et ça suffit amplement. Quant au temps passé à apprendre ces outils, il n'est pas négligeable, certes, mais combien de temps as-tu passé à développer les applications et, si tu as fais toi-même les exécutables pour Windows, combien as-tu passé pour créer un .exe viable ? L'avez-vous testé sur toutes les versions de Windows disponibles ? Avoue que ce serait bien plus dispencieux à mettre en place qu'un "kit" de sandbox pour construire un paquet binaire pour chacun des distributions dites majeures (on s'intéresse au "top 5 de DistroWatch" : si tu parviens déjà à satisfaire les besoins pour RedHat/Fedora, Ubuntu, Debian, Mandriva et SuSE, tu en auras déjà bien fait le tour.
[^] # Re: Utilisation des applications sans 'installation'
Posté par Raphaël SurcouF (site web personnel) . En réponse à la dépêche Amélioration en vue pour l'installation de logiciel sur GNU/Linux.. Évalué à 2.
Trop de formats différents ? Il y a deux formats binaires principaux (je ne compte pas les ebuild de Gentoo/Gobolinux) : RPM et deb, point. Construire un paquet pour une distribution ou une autre s'appuyant sur l'un des deux formats consiste surtout à appliquer les régles (surtout avec les DFSG de Debian, du moins si tu veux que le paquet soit officiel) qui régissent la vie d'un paquet et de composer avec les dépendances qui sont disponibles. En gros, c'est tout. La documentation ne manque pas même si j'admets qu'elle est peut-être un peu prolixe .Il existe en effet au moins trois outils plus ou moins différents pour créer des paquets debian : dbs, debhelper, cdbs (pour ne citer que les plus répandus). Pour autant, la base demeure l'utilisation d'un Makefile par dpkg-buildpackage (qui peut être appelé par d'autres wrappers comme debuild ou pbuilder dont j'ai déjà parlé). La seule chose qu'un développeur rompu à l'utilisation des outils de compilation que sont les autotools et compagnie, finalement, c'est la façon dont le paquet se génère.
Quant aux RPMs, c'est un peu plus simple puisqu'il n'y a que le fichier de spec utilisé par la commande rpmbuild. Il existe également des outils pour éviter les bévues classiques en utilisant des sandbox ou chroot notamment (voir les travaux de Dag Wieers, par exemple, que j'ai déjà cité).
Si tu t'en tiens aux paquets binaires, tu n'as donc que deux formats... Évidemment, il faudrait plus que 40 Go pour être à l'aise avec des outils comme pbuilder mais, pour rassurer un peu ton co-développeur, je ne dispose pour ma part que d'un disque de 80 Go sur mon portable et ça suffit amplement. Quant au temps passé à apprendre ces outils, il n'est pas négligeable, certes, mais combien de temps as-tu passé à développer les applications et, si tu as fais toi-même les exécutables pour Windows, combien as-tu passé pour créer un .exe viable ? L'avez-vous testé sur toutes les versions de Windows disponibles ? Avoue que ce serait bien plus dispencieux à mettre en place qu'un "kit" de sandbox pour construire un paquet binaire pour chacun des distributions dites majeures (on s'intéresse au "top 5 de DistroWatch" : si tu parviens déjà à satisfaire les besoins pour RedHat/Fedora, Ubuntu, Debian, Mandriva et SuSE, tu en auras déjà bien fait le tour.