Zur Qualitätssicherung/Portabilität unter pkgsrc der Lebensweg eines Paketes:
Neue, unstabile und Testpakete hat man zuerst einmal in pkgsrc-wip, welches selbst kein Teil vom eigentlichen pkgsrc ist, aber trotzdem viel genutzt wird - Leute stoßen vor allem durch pkgsrc.se darauf. Die Qualität von pkgsrc-wip ist logischerweise niedriger, aber auch nicht unter aller Sau. Sie sind durchaus verwendbar und werden auch verwendet. Dort tummeln sich auch Leute, die erst Erfahrung sammeln und man bekommt einfach commit-access. Es gibt eigentlich keine Qualitätssicherung, auch wenn einige pkgsrc-Entwickler ein Auge drauf werfen. Ist ein Paket gut genug (hat DESTDIR-support, keine Fehler mit pkglint und läuft auf mehr als eine Plattform/einem OS) wird es nach pkgsrc importiert.
pkgsrc-head/current wird von den Meisten verwendet. Die Pakte (>90% - schwankt, weil wenn ein Paket von dem viele andere Pakete abhängig sind ausfällt kann das große Auswirkungen haben) dort funktionieren zumindest unter DragonFly (release+current), NetBSD i386/x86-64/ppc eben den üblicheren Plattformen und meist auch auf nicht ganz so alltäglichen - je nach Paket.
Dann gibt es noch die freezes in jedem Quartal. Hier geht es _nur_ um Qualitätssicherung. Es sind ausschließlich bug fixes und Securityupdates in den daraus resultierenden Branches. Diese Branches haben extrem viele Bulkbuilds (alle Pakete werden gebaut und Binärpakete werden erstellt). Das sind die Pakete, die meist (manchmal sind es auch welches aus Current) über pkg_add von den Servern zugänglich sind. Für alle OpenBSDler: Das ist sowas ähnliches, wie das was auf den CDs ist. Die FreeBSDler haben ja ebenfalls Freezes, aber ich weiß nicht wie das da genau abläuft.
Die Ergebnisse dieser Builds werden an eine Mailingliste[1] gesendet und die Maintainer können nachsehen, ob alles gebaut wird.
Um's nochmal zu sagen: Ich behaupte nicht, dass die Qualität unter pkgsrc besser ist - dazu habe ich von beiden viel zu wenig Ahnung. Es ist nur so, dass meines Wissens bis jetzt niemand die FreeBSD Ports abseits von FreeBSD erfolgreich verwendet hat. Ich weiß nur, dass die Leute vom DragonFly-Projekt das ursprünglich wollten, aber auf Grund mangelnder Portabilität nicht geklappt hat.
Ich finde auch nicht, dass FreeBSD das hätte tun sollen und es FreeBSD wahrscheinlich sogar geschadet hätte, weil das ja eine zusätzliche Arbeit wäre und die Chancen für ein einheitliches Paketsystem ohnehin nicht sehr gut stehen.
Ich habe zu wenig Erfahrung um zu sagen, was mehr Arbeit wäre: Neues System, FreeBSD Ports als Basis eines Paketsystems für alle oder NetBSD als Paketsystems für alle.
Ich weiß nur, dass wenn man derzeit als einzelne Person die Wahl hat auf einem Linux oder Solaris ein pkgsrc oder FreeBSD Ports (oder OpenBSD Ports) zu installieren mit pkgsrc um längen besser fährt, weil es da Leute gibt, die wollen und daran arbeiten, dass es unter Linux/Solaris läuft. Kurzum bin ich nicht der Einzige, der so etwas benutzt.
Das soll alles kein System schlecht dastehen lassen. Die Vorteile von FreeBSD Ports kennt ja jeder: Mehr Pakte, mehr User, mehr Entwickler, besser an FreeBSD selbst angepasst, miwi, besseres Upgrade als pkgsrc.
So und jetzt die Vorteile eines einheitlichen Systems egal was für eines (pkgsrc, FBSD ports, OBSD ports, Gentoos portage, pacman, openpkg, was neues, ...)
Mehr Entwickler:
Je nach Anzahl der Leute/Projekte, die mitmachen
Das bedeutet:
mehr Maintainer: Leute die nach dem rechten sehen, die sorgen, dass es abseits von x86 läuft, mehr Optimierungen mehr Idee/Features, mehr miwis
mehr Entwickler, die das System kennen/nutzen: Direkter Support von den Entwicklern, die Entwickler tun sich einfacher das System portabel zu halten (weil es mehr Bulkbuilds auf mehr Plattformen gibt), bessere Software- und Paketqualität
mehr User: mehr Support, es wird einfacher jemanden etwas zu zeigen, auch wenn dieser Jemand ein anderes OS nutzt. Die Entwickler wissen können leichter erfahren, wer die Software nutzt, wen es sowieso nur eine Bezugsquelle gibt und man eventuell einen popularity-contest macht, umso mehr User es gibt, umso wahrscheinlicher ist, dass sich die offizielle Dokumentation auf die Installation mit einem bestimmten Paketmanager geht.
Man müsste aber wirklich alle dazu bewegen: also nicht nur die BSDs, auch Linuxleute, Solaris, etc.
Das ist so, wie bei Standards: Wenn nur ein Browser sie unterstützt macht es keinen Sinn, wenn nur ein OS sich an POSIX hält macht das keinen Sinn, wenn nur ein Programm XML, gzip, PAM unterstützt macht es keinen Sinn
Vielleicht wäre ein einheitlicher Portstandard besser und alle sharen die Ports, aber damit würden viele Vorteile verloren gehen und es wäre gleich viel arbeit. Also vielleicht lieber ein Projekt starten, das einen Standard entwirft, den dann implementiert, dann werden Converter gebaut mit dem bestehende Pakete umgewandelt werden können.
Oder man sucht generell einen guten Ausgangspunkt, wie cpan6[2], hilft damit und baut dazu einen Converter.
oder man vergisst/ignoriert die Idee der Zusammenarbeit einfach und kocht weiterhin sein eigenes Süppchen.
[1]
http://mail-index.netbsd.org/pkgsrc-bulk/tindex.html
[2]
http://cpan6.org/