Je suis en train de migrer dUbuntu Linux vers Mac, et tout est nouveau et je réapprends beaucoup de choses.

Sur Linux, javais lexcellent apt-get pour gérer des progiciels. Jai cherché une alternative sur Mac et trouvé sur MacPorts, Fink et Homebrew.

Jutiliserai cet ordinateur principalement pour développer des applications Ruby on Rails.

Alors, quelles sont les différences entre leur? Quels sont les avantages et les inconvénients? Lequel est le mieux géré et contient le plus de packages?

Commentaires

  • Jai modifié votre titre pour quil corresponde à votre vraie question. Sur la plupart des sites Stack Exchange, les questions demandant  » les meilleurs  » sont mal vues.
  • Pourquoi en avez-vous besoin? parmi ces gemmes gagnées ‘ t ruby ‘?
  • pour en savoir plus sur les raisons pour lesquelles les doublons ne sont pas ‘ t toujours mauvais: apple.stackexchange.com/questions/11461/… il y a aussi quelques autres alternatives là-bas
  • Je ne lai jamais utilisé moi-même, mais peut-être quune comparaison avec pkgin serait également utile.

Réponse

Certainement Homebrew. Jai commencé avec Fink, puis je suis passé à MacPorts (plus heureux), puis à Homebrew (beaucoup, beaucoup plus heureux). Voici les raisons pour lesquelles je les utilise (une liste de pros si vous voulez):

Fink

  • Basé sur Apt – sentez-vous comme chez vous si vous venez dun site basé sur Debian environnement
  • Paquets binaires – les paquets sont disponibles sous forme de binaires donc pas de temps de compilation longs. Pratiquement même si jai trouvé que les binaires pré-compilés étaient toujours obsolètes et que je devais de toute façon compiler des éléments pour mon système

MacPorts

  • Contrairement à homebrew do ne dépend pas de la bibliothèque MacOS qui pourrait changer dans le futur.
  • Installez tout dans / opt / local
  • Nice système de variantes qui vous permet de personnaliser la construction
  • Fichiers de port faciles et intuitifs, vous permet également dajouter les vôtres
  • prend en charge de nombreuses versions dOSX et macos remontant à Tiger, y compris les versions PowerPC voir autre réponse

Homebrew

  • Exploitation maximale de ce qui vient avec OS X. Contrairement à Fink ou MacPorts, il nest pas nécessaire de créer / installer ruby et des bibliothèques à partir de zéro juste pour installer un petit outil basé sur Ruby.
  • Sinstalle dans /usr/local
  • Installer sans accès root
  • Chaque paquet installé est proprement sandboxed dans sa propre cave afin que vous ne le fassiez pas ave des fichiers parasites partout dans votre système, juste des liens symboliques de bin, man, etc.
  • A des guides et de lautomatisation pour créer vos propres fichiers de formule (cest à dire. descripteurs de package)
  • Écrit en ruby et toutes les formules sont des scripts ruby concis
  • Installations plus rapides grâce aux binaires précompilés

pkgin

  • Installations plus rapides grâce aux binaires précompilés
  • Tout est installé dans / opt / pkg /
  • soutenu par la communauté pkgsrc et Joyent
  • Connu pour fonctionner sur NetBSD, DragonFly BSD, Solaris, Debian, Mac OS X, Minix

https://pkgsrc.joyent.com/install-on-osx/

http://pkgin.net/

Commentaires

  • Les commentaires ne sont pas destinés à une discussion approfondie; cette conversation a été déplacée vers le chat . Si le verrou doit être déverrouillé, veuillez signaler ce problème sur Ask Different Meta ou avec un indicateur.

Answer

MacPorts

Il est plus indépendant de Mac OS X, cela signifie que MacPorts ignorera simplement la plupart des bibliothèques système et des logiciels qui disponible sous Mac OS X et tirez le sien à la place , ce qui peut être plus lent lorsque lutilitaire que vous installez nécessite un ensemble de bibliothèques et de logiciels volumineux.

Mais ce type de choix est plus sûr car les packages que vous avez installés sont moins influencés par la mise à jour / mise à niveau du système dApple procédure.


Homebrew

Il dépend davantage des packages installés Mac OS X existants, ce qui accélérera linstallation des packages et minimisera les bibliothèques redondantes.

Mais le risque est que les packages installés soient endommagés n à cause de la mise à jour / mise à niveau du système dApple.

Voici donc les deux types de compromis.

De plus, Homebrew prend le relais / usr / local par défaut, avec lequel certaines personnes naiment pas ça parce que cest en quelque sorte conflit avec la tradition unix et pourrait causer des problèmes si vous avez déjà installé quelque chose là-bas (MySQL, etc.)


En dehors de ces différences, compte tenu des packages que ces deux peuvent offrir, vous pouvez vérifier avec ces deux commandes si vous avez déjà installé MacPorts / Homebrew, qui vous montrent les packages quils ont actuellement fournis:

port list | wc -l brew search | wc -l 

Et vous découvrirez que MacPorts a beaucoup plus de packages que Homebrew.

(19399 vs 3583 le 13 mai 2016)

Commentaires

  • Comme une remarque sur le nombre différent de paquets: Homebrew ninclut décidément pas de paquets pour les langages de programmation qui ont leur propre système de packaging (rubygems / pip / cpan…) ou pour les logiciels pour lesquels un programme dinstallation OS X sans doute plus approprié est disponible (MacTeX). De plus, les doublons et les anciennes versions ne sont pas dans le dépôt par défaut, mais inclus dans des dépôts alternatifs tap . Comparez cela à macports, qui, par exemple, contient un port IPython pour toutes les versions Python incluses. Cest une sorte de philosophie différente qui augmente naturellement le nombre de paquets dans macports.
  • Excellent lien! terrychay.com/article/macports-vs-homebrew.shtml Merci!
  • @YaOz, vous pourriez sûrement changer de homebrew pour utiliser quelque chose autre que /usr/local?
  • @Pacerier Je crois que tout autre endroit que /usr/local/ est « non pris en charge » ou « découragé » .

Réponse

Juste pour ajouter quelques-unes de mes propres pensées qui semblent vraies vers fin 2014 au moins .

Homebrew, il y a quelques années, a définitivement le dessus en termes de partage desprit. Vous trouverez de nombreux blogs avec des gens qui parlent de leur bonheur avec Homebrew – généralement à cause de tout « MacPorts tire dans le monde entier » vs « Homebrew utilise ce que vous avez déjà ».

Cependant, lOMI, MacPorts est une bête différente de ce quil était il y a quelques années. Lorsque je suis passé pour la première fois sous OS X, & utilisait MacPorts, la philosophie MP était en effet frustrante car presque tout a été construit à partir des sources. Une nouvelle installation a été particulièrement pénible / lente. Cependant, au cours de lannée écoulée, en se basant uniquement sur mes propres impressions, il semble que 90% des packages MP soient des binaires & donc linstallation est en fait très rapide maintenant. Daprès ce que je comprends, Homebrew évolue également dans cette direction avec « Bottles » mais jai limpression que la plupart des choses que vous installez via HB à ce moment-là seront compilées à partir des sources.

Donc, ne serait-ce que pour offrir un avis contraire, MacPorts semble en fait être le plus « rapide » o ption ces jours-ci. Cependant, les opinions de la plupart des gens sur MP semblent être basées sur des expériences denviron 2011-2012. & nen tient pas vraiment compte. Prenez ceci avec un grain de sel, car je ne suis pas un utilisateur régulier de HB (et il est plutôt pénible d’utiliser les deux côte à côte).

Je pense que HB a des avantages qui signifient qu’il « gagnera probablement » la guerre « à long terme cependant

  • HB est tout Ruby alors que MacPorts, et ses formules de package, sont écrits en TCL qui nest … pas exactement un langage de script populaire. Cela dit, cest assez simple de créer votre propre fichier de port.
  • HB est basé sur GitHub & semble donc beaucoup plus accueillant pour les nouveaux contributeurs alors que MacPorts héberge son propre référentiel SVN quelque part Je pense – ce qui reflète essentiellement les âges différents des deux projets, je suppose.
  • Comme mentionné, le consensus général est que MacPorts a été remplacé par HB &, à juste titre ou à tort, cela attire plus de gens vers lui.

Sinon YaOZl & kLy a assez bien couvert la principale différence en termes de sudo, de dépendances, etc. JE trouvent que MacPorts conduit parfois à des maux de tête en termes dautres programmes ne sattendant pas à ce que quoi que ce soit soit dans /opt/local, les choses étant installées avec les autorisations root, etc. & il est généralement préférable de ne pas installer certaines choses avec MacPorts (par exemple vous pouvez installer Rails via MacPorts mais vous seriez fou de ne pas linstaller via la gestion normale des Gemmes de Ruby). A part ça, je « suis un grand fan de la philosophie MacPorts de construire son propre petit monde & ne me reposant pas sur une bibliothèque OS X pré-emballée – quand cela fonctionne, et cest le cas, tout Cest très simple. Cest vraiment ce que vous attendez dun gestionnaire de packages. Et comme je lai mentionné, à ce stade, il est assez rapide pour mettre en place la plupart des choses.

Jespère que cela a été utile.

Commentaires

  •  » Comme mentionné, le consensus général est que MacPorts a été remplacé par HB &, à tort ou à raison, qui attire plus de gens vers lui.  » … cela ressemble à une déclaration très superficielle …être populaire et offrir de la qualité ne sont pas les mêmes et nimplique en aucun cas que le second est  » remplacé  » par le premier.
  • MacPorts utilise désormais Github. Voir guide.macports.org/#project.github :  » Le projet MacPorts utilise le système de contrôle de version distribué Git pour gérer le code de lensemble du projet. Nos référentiels maîtres sont hébergés sur GitHub. Nous maintenons des référentiels publics pour presque tout le code et la documentation de notre projet, y compris un référentiel GitHub pour le système MacPorts lui-même, pour les ports MacPorts et même pour le guide que vous lisez en ce moment.  »

Réponse

Quelque chose que dautres réponses (jusquà présent) ne semblent pas avoir mentionné est que MacPorts a un excellent support pour les anciennes versions de macOS. Homebrew ne prend en charge que les OS actuellement pris en charge par Apple, ce qui signifie généralement les trois dernières versions. Par exemple, depuis août 2020, seuls Catalina, Mojave et High Sierra sont compatibles avec Homebrew.

En revanche, MacPorts peut être installé sur Tiger (!), Et le projet maintient des correctifs spéciaux pour conserver le logiciel travailler dans la mesure du possible. Ils maintiennent également une bibliothèque  » Legacy Support  » qui rétroporte les symboles des nouvelles versions de macOS vers les anciennes; la liaison avec cette bibliothèque lors de la compilation peut faire fonctionner soudainement toutes sortes de nouveaux logiciels sur des systèmes plus anciens!

Donc, si vous utilisez une ancienne version de macOS, ou si vous pensez que vous devrez peut-être rester sur un OS actuel après la date dexpiration dApple, cest certainement une raison pour MacPorts.

Réponse

Brew était complètement lisse pour moi à utiliser, donc je suis incapable de parler de ses inconvénients. Quelques inconvénients de MacPorts:

Il y a plusieurs questions très populaires sur les deux premiers points.

Commentaires

  • Cétait mon expérience installer ImageMagick sur 10.6; le brassage était très simple, mais na pas ‘ t inclure le délégué JP2. imagemagick.org/script/binary-releases.php
  • brew et macports nécessitent juste des outils de ligne de commande Xcode, donc la même chose ici.
  • @Mark Je ‘ Je ne suis pas sûr de ce que vous voulez dire, mais Brew a parfaitement fonctionné pour moi sans Xcode.
  • Vous ‘ ll faudra un complicateur pour brew et MacPorts, qui peuvent être installés via les outils de ligne de commande Xcode. Vous naurez pas besoin de lapplication Xcode .
  • Jai oublié à quel point il est moche de synchroniser ce truc derrière un pare-feu … ouais!

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *