Diese Frage hat hier bereits eine Antwort:
Ich habe immer MacPorts verwendet, um meine GCC-Compiler und andere Programme zu installieren und zu warten. Jetzt habe ich von Fink und Homebrew gehört. Diese beiden Dienstprogramme scheinen in der Mac-Community Fuß zu fassen, aber ich verstehe den Unterschied zwischen ihnen nicht.
Was ist der Hauptunterschied zwischen MacPorts, Fink und Homebrew? Gibt es Qualitäts- oder Leistungsunterschiede?
Antworten:
Fink ist seit mindestens 2001 Fink um und MacPorts sind Paket - Manager , die „orthogonal“ auf das System sein wollen, das heißt, sie ihre eigene Version installieren
python
,perl
Bibliotheken, Compiler usw. in eigenen Bäume (/ sw für Fink, / opt / local für MacPorts). Der Grund dafür ist, dass sie keine Kontrolle darüber haben, was Apple mit seiner Software macht, und dass es gelegentlich Probleme gab, als Apple seine eigenen Sachen aktualisierte.Soweit ich weiß, möchte Homebrew stärker in das System integriert werden, verwendet die von Apple bereitgestellten Bibliotheken und installiert seine Inhalte in
/usr/local/bin
und in anderen Standardordnern. Ich denke, das bedeutet, dass die Software-Auswahl bei Homebrew eingeschränkter ist. Ich kann mir nicht vorstellen, dass man KDE damit installieren kann, aber das habe ich nicht versucht.Ein Punkt für Fink vs. MacPorts: Vor einigen Jahren lieferte das Fink-Projekt Binärpakete. Das heißt, Sie können die Pakete herunterladen und installieren, ohne sie selbst zu kompilieren. Der Paketmanager verfügt weiterhin über diese Fähigkeit, nur dass seit langer Zeit keine Binärdateien mehr verfügbar sind. Ich weiß nicht, ob sich das inzwischen geändert hat.
Kurz gesagt: Ohne die Binärdateien sind sich Fink und MacPorts sehr ähnlich. Sie sollten mehr Pakete zur Verfügung haben als Homebrew, während Homebrew aus den oben genannten Gründen weniger Speicherplatz beanspruchen sollte. In Bezug auf die Qualität: Ich habe Homebrew noch nie installiert, und zwischen Fink und MacPorts bevorzuge ich normalerweise diejenige, die ich derzeit nicht verwende.
Wenn Sie mit MacPorts zufrieden sind, bleiben Sie einfach dabei.
PS Der Grund, warum ich Homebrew nie ausprobiert habe, ist, dass ich einige vorkompilierte Pakete verwende. Diese installieren sich normalerweise auch selbst in / usr / local / bin und dergleichen, was nur nach Ärger schreit.
quelle
Ich würde sagen, die Hauptunterschiede sind:
Vorsehung, Ergebnis und Verteilungsmethode.
Das wichtigste Detail ist, dass Sie prüfen, ob das ausgewählte System Pakete für die gewünschte Software enthält. Die Anzahl der Pakete beträgt ungefähr: 19.000 Macports, 22.000 Fink, 3.000 Homebrew, 10.000 pkgsrc.
/opt/local
die andere Installer-Pakete oder System-Upgrades wahrscheinlich keinen Einfluss haben.dpkg
undapt-get
den Hauptvorteil bietet , dass Sie zuverlässig Binärpakete finden können, vorausgesetzt, Sie haben ein Upstream-Paket Repository, das Binärdateien für Ihre aktuelle Betriebssystemversion enthält. Es kam auch aus der Darwin-Benutzerbasis, ist aber wahrscheinlich populärer bei denjenigen, die von Debian Linux [für Mac oder PPC] kamen und nach einer etwas stabileren Hardware-Unterstützung suchten ... solange diese bestand. Es installiert Pakete in/sw
aus Gründen des Nichtüberschreibens oder des Überschreibens, was andere Installer möglicherweise installieren. Auch etwas über Compiler-Suchpfade und den StandardPATH
, der/usr/local/bin
bereits enthält./usr/local
Ich denke, es wurde Kickstart und ist aktueller als die anderen. Ich persönlich habe festgestellt, dass ich dieses am häufigsten verwendet habe, da ich selten voneinander abhängige Pakete benötige und mir nicht klar ist, wie gut Mac Homebrew es unterstützt. Homebrew zielt darauf ab, Sie zu zwingen, geeignetere Paketmanager für Software zu verwenden, die von einem eng gekoppelten Manager stammt, wie cpan, gems und dergleichen./
, erstellt und pflegt Pakete in/pkg
. Es gibt wahrscheinlich eine Menge Pakete (wie 12k) und 20% können möglicherweise nicht erstellt werden oder die neueste Version der Quelle kann möglicherweise nicht mit dem zuletzt gepflegten Patch patchen. Aus diesem Grund bevorzuge ich bei solchen Systemen die Binärpakete.Ich habe auch Perlbrew verwendet , eine Art Homebrew für
perl
Anwendungen, die in Perl erstellt wurden, und einige Abhängigkeiten. Es ist meistens eine gute Möglichkeit, mehrere Versionen von Perl zu verwalten, und es macht andere allgemeinere Paketsysteme (für deren Zweck) praktisch überflüssig. Aber das hat natürlich auch cpan und cpanminus .Sie könnten ähnliche Manager für Ihre eigene Mini-Umgebung finden (wie vundle für vim oder gem für ruby, npm für node.js, pypm oder pip für python, go's built-in
go install
... etc?)quelle
Fink und MacPorts sind direkte Konkurrenten, da sie ein orthogonales System installieren. Fink hat vor einigen Jahren gegenüber MacPorts erheblich an Boden verloren. Ich bin mir nicht ganz sicher, warum, aber MacPorts hat fast alles besser gemeistert.
Wir haben jetzt weniger Grund für eine orthogonale Installation, da Mac OS X weniger verrückt geworden ist. Brew wurde entwickelt, um eine bessere Integration in Mac OS X zu ermöglichen, wodurch es leichter und weniger orthogonal ist und auch, weil Rubyist alles neu schreibt.
In der Praxis ist MacPorts etwas komplizierter, aber MacPorts funktioniert fast immer, während Brew einfacher ist, aber eher gegen eine Mauer stößt.
Stellen Sie sich diese Frage:
Alle Ja-Antworten lassen darauf schließen, dass Sie sich für MacPorts entscheiden sollten. Brew ist weniger aufwändig, wenn Sie relativ wenige und übliche Pakete installieren, aber Brew wird auch Komplexitäten nicht bewältigen. Brauen
/usr/local
Sie Verschmutzungen, die Sie möglicherweise auch für manuelle Installationen benötigen. Eigentlich gibt es detailliertere Argumente für MacPorts, aber auch diese treffen wahrscheinlich nicht zu, wenn Sie mit Nein geantwortet haben.Umgekehrt: Wenn Sie mit "Ja" geantwortet haben, aber auf Ihrem primären Computer Linux ausgeführt wird und auf Ihrem Mac nur eine minimale Linux-Software ausgeführt wird, können Sie mit Brew möglicherweise bessere Ergebnisse erzielen.
quelle
Nebenbei bemerkt, würde sich nichts, was mit Apple OS X zu tun hat, in / usr / local / bin installieren. Sie verwenden / usr / lib, / usr / bin hinter den Kulissen und Frameworks werden in / Library / Frameworks gepackt, während Dinge, die Sie selbst über das reguläre Unix installieren ./configure, make, make install verwenden werden / usr / local / bin etc , und Dienstprogramme wie MacPorts verwenden / opt / und packen möglicherweise Frameworks in Ihre persönliche ~ / Library / Frameworks /.
Ich empfehle, bei MacPorts zu bleiben, wenn Sie das gewohnt sind. Grundsätzlich besteht der Hauptunterschied darin, dass MacPorts ein System verwendet, das der tatsächlichen Implementierung des Unix / BSD-Portbaums mit Ports von FreeBSD ähnelt, während Fink Anwendungen verwendet, die aus Linux-Debian-Archiven portiert wurden, und dasselbe Paketmanagersystem wie Linux-Debian verwendet.
quelle