• [^] # Re: DragonFly -> DPorts ?

    Posté par . En réponse à la dépêche pkgsrc 2013Q2 est disponible. Évalué à 6. Dernière modification le 10 juillet 2013 à 22:37.

    Un bon logiciel (pas trop linux centric) devrait compilé sur toute plateforme relativement unix, avec un Makefile minimum, port ou pkgsrc. Le problème sous-jacent, c'est imho la portabilité des logiciels.

    J'aime la théorie, la pratique est très loin de là.

    Mon interrogation concernait surtout la méthode de synchronisation entre ports et dports. Par exemple, firefox est rentré dans ports il y'a deux semaines, mais n'est pas encore dans dports. Une synchronisation semi-manuelle entre les deux dépôts me parait extrêmement coûteuse en temps (et extrêmement rébarbatif aussi), surtout pour quelques hommes. De plus, en regardant rapidement le dépôt github de dports, je vois beaucoup de 'tweaks xxx', ce qui me laisse penser qu'il y'a quand même une certaine adaptation à faire.

    C'est la même chose qu'avec pkgsrc ici, quand une mise a jour entre dans pkgsrc, elle ne passait pas non plus forcément sous dfly, donc le problème est identique. de plus dports fonctionne avec un système de as, seuls les ports ayant passé ce sas sont synchronisés, aka, seul ceux qui sont passer a travers une machines de build en cleanroom (poudriere) avec succès sont synchonisés, c'est pour ça qu'il y a 2 git dans dports.

    Concernant poudriere, vu que je vois que tu as travaillé dessus, est-ce que tu peux me dire qu'est qu'il fait qu'il est beaucoup plus performant qu'un pbulk ? Est-ce que ça serait dur de le porter à pkgsrc ou au contraire est-ce que ça utilise des features extrêmement spécialisés de ports ?

    Oui je peux le dire, par exemple sur une machine avec 24 core et 100G de ram je suis capable de compiler l'intégralité du ports tree en 18h chose qui est totallement impossible avec pbulk.
    Par défault si tu as 24 coeurs alors tu auras en permanence 24 packages qui compile en parallèle, le code a été vraiment travailler pour la performance (oui c'est possible en pure shell posix).

    Je suis l'auteur de poudriere (et de pkgng) , donc si quelqu'un veut porter poudriere pour pkgsrc, c'est avec plaisir que je lui fournirai l'accès au répo fossil ainsi que les input pour le faire.

    Poudriere dispose de spécificité ports/freebsd mais facilement contournable et reste bien générique. par contre attention il stress vraiment très fort l'OS dans tous les sens (un petit peu moins violent maintenant), du coup tu risques d'avoir des surprises :), en 5min il crachait le kernel dragonfly au début du portage :), il a permit de trouver des races conditions dans l'OS absoluement partout :), sur un NetBSD j'avais fait un portage rapide il y a longtemps, et je suis tombé sur un deadlock dans le fs (corrigé depuis si j'ai bien compris) très très rapidement. Si tu arrives a le porter tu verras toi même la différence avec pbulk :)

    #poudriere (anglais) sur freenode pour en discuter si tu veux.