Je suis récemment passé d'Ubuntu à un Mac. J'ai été déçu que le mac n'ait pas le sudo apt-get pratique d'Ubuntu, j'ai entendu dire que je devrais utiliser homebrew mais je ne suis pas sûr de ce que homebrew ou macport font ?
Réponses
Trop de publicités?MacPorts est la voie à suivre.
1) Comme @user475443 l'a souligné, MacPorts a beaucoup plus de paquets. Avec brew, vous vous retrouverez piégé bientôt parce que la formule dont vous avez besoin n'existe pas.
2) MacPorts est une application native : C + TCL. Vous n'avez pas du tout besoin de Ruby. Pour installer Ruby sur Mac OS X, il faut puede ont besoin de MacPorts, alors choisissez MacPorts et vous serez heureux.
3) MacPorts est vraiment stable, en 8 ans je n'ai jamais eu de problème avec lui, et tout mon écosystème Unix repose sur lui.
4) Si vous êtes un développeur PHP, vous pouvez installer la dernière version d'Apache (Mac OS X utilise la 2.2), PHP et toutes les extensions dont vous avez besoin, puis mettre à niveau le tout avec une seule commande. Oubliez de faire la même chose avec Homebrew.
5) Groupes de soutien MacPorts.
foo@macpro:~/ port select --summary
Name Selected Options
==== ======== =======
db none db46 none
gcc none gcc42 llvm-gcc42 mp-gcc48 none
llvm none mp-llvm-3.3 none
mysql mysql56 mysql56 none
php php55 php55 php56 none
postgresql postgresql94 postgresql93 postgresql94 none
python none python24 python25-apple python26-apple python27 python27-apple none
Si vous avez installé à la fois PHP55 et PHP56 (avec de nombreuses extensions différentes), vous pouvez passer de l'un à l'autre avec une seule commande. Toutes les extensions relatives font partie du groupe et elles seront activées dans le groupe choisi : php55 ou php56. Je ne suis pas sûr que Homebrew dispose de cette fonctionnalité.
6) Les rubistes aiment tout réécrire en Ruby, car la seule chose avec laquelle ils sont à l'aise est Ruby lui-même.
Homebrew et macports résolvent tous deux le même problème, à savoir l'installation de bibliothèques et d'utilitaires courants qui ne sont pas fournis avec osx.
Il s'agit généralement de bibliothèques liées au développement et l'utilisation la plus courante de ces outils est pour les développeurs travaillant sur osx.
Ils nécessitent tous les deux l'installation des outils de ligne de commande xcode (que vous pouvez télécharger séparément à partir de https://developer.apple.com/ ), et pour certains paquets spécifiques, vous aurez besoin de l'IDE xcode complet installé.
xcode peut être installé à partir du mac app store, c'est un téléchargement gratuit mais cela prend un certain temps puisque c'est environ 5GB (si je me souviens bien).
macports est une version osx de l'utilitaire de portage de BSD (comme osx est dérivé de BSD, c'était un choix naturel). Pour toute personne familière avec l'une des distributions BSD, macports se sentira comme à la maison.
Une différence majeure entre homebrew et macports ; et la raison pour laquelle je préfère homebrew est qu'il n'écrasera pas les choses qui devraient être installées "nativement" dans osx. Cela signifie que s'il y a un paquetage natif disponible, homebrew vous en informera au lieu de l'écraser et de causer des problèmes plus tard. Il installe également les bibliothèques dans l'espace utilisateur (ainsi, vous n'avez pas besoin d'utiliser "sudo" pour installer des choses). Cela aide également à se débarrasser des bibliothèques puisque tout est dans un chemin accessible pour vous.
homebrew bénéficie également d'une communauté d'utilisateurs plus active et ses paquets (appelés formules) sont mis à jour assez souvent.
macports n'écrase pas les paquets natifs d'OSX - il fournit ses propres paquets. version - C'est la raison principale pour laquelle je préfère macports à home-brew. vous devez être certain de ce que vous utilisez et les changements d'Apple à différents temps aux ports et ont été connus pour être des années derrière les mises à jour dans certains projets
Pouvez-vous donner une référence montrant que macports écrase les données natives d'OS X natifs ? Pour autant que je sache, toute l'installation de macports se fait dans
/opt/local
Peut-être devrais-je préciser - je n'ai dit nulle part dans ma réponse que macports écrase les paquets natifs d'OSX. Ils installent tous deux des éléments séparément.
Homebrew vous prévient lorsque vous devez installer les choses "nativement" (en utilisant l'installateur préféré de la bibliothèque/l'outil) pour une meilleure compatibilité. C'est ce que je voulais dire. Il utilisera également autant de bibliothèques locales que possible qui sont disponibles dans OS X. De la wiki :
Nous n'aimons vraiment pas les doublons dans Homebrew/homebrew.
Cependant, nous aimons les dupes dans le robinet !
qui est fourni avec OS X ou est une bibliothèque qui est fournie par RubyGems, CPAN ou PyPi ne doivent pas être dupés. Il y a de bonnes raisons pour pour cela :
- Les bibliothèques dupliquées cassent régulièrement les constructions
- Des bugs subtils apparaissent avec les bibliothèques dupliquées et, dans une moindre mesure, les outils dupliqués.
- Nous voulons que vous fassiez plus d'efforts pour que votre formule fonctionne avec ce qui est fourni avec OS X.
Puedes éventuellement écraser les versions fournies par macosx des utilitaires avec homebrew.
Actuellement, Macports a beaucoup plus de paquets (~18.6 K) qu'il n'y a de formules Homebrew (~3.1K), en raison de sa maturité. Homebrew rattrape lentement son retard.
Les paquets Macport ont tendance à être maintenus par une seule personne.
Macports peut conserver plusieurs versions de paquets, et vous pouvez les activer ou les désactiver pour tester les choses. Parfois cette liste peut être corrompue et vous devez l'éditer manuellement pour remettre les choses en ordre, bien que cela ne soit pas trop difficile.
Les deux gestionnaires de paquets demanderont à être mis à jour régulièrement. Cela peut prendre un certain temps.
Remarque : vous pouvez avoir les deux gestionnaires de paquets sur votre système ! Ce n'est pas l'un ou l'autre. Brew peut se plaindre mais pas Macports.
De même, si vous avez affaire à des paquets python ou ruby, utilisez un environnement virtuel dans la mesure du possible.
Par défaut, Homebrew installe les paquets dans votre /usr/local. Les commandes Macport nécessitent sudo pour l'installation et la mise à jour (similaire à apt-get dans Ubuntu).
Pour plus de détails :
Ce site suggère d'utiliser Hombrew : http://deephill.com/macports-vs-homebrew/
tandis que ce site énumère les avantages de l'utilisation de Macports : http://arstechnica.com/civis/viewtopic.php?f=19&t=1207907
Je suis également passé d'Ubuntu récemment, et j'aime utiliser homebrew (c'est simple et facile à utiliser !), mais si vous vous sentez attaché à l'utilisation de sudo, Macports pourrait être la meilleure voie à suivre !