Je viens récemment de passer à un Mac d'Ubuntu. J'ai été déçu que mac n'ait pas la commodité sudo apt-get
dans Ubuntu. J'ai entendu dire que je devrais utiliser homebrew mais je ne sais pas exactement ce que fait homebrew ou macports?
239
Réponses:
MacPorts est la voie à suivre.
Comme l'a indiqué @ user475443, MacPorts propose de nombreux autres packages. Avec l'infusion, vous vous retrouverez rapidement pris au piège car la formule dont vous avez besoin n'existe pas.
MacPorts est une application native: C + TCL. Vous n'avez pas du tout besoin de Ruby. Pour installer Ruby sur Mac OS X, vous pourriez avoir besoin de MacPorts, alors optez simplement pour MacPorts et vous serez heureux.
MacPorts est vraiment stable, en 8 ans, je n'ai jamais eu de problème avec ça, et tout mon écosystème Unix le relais.
Si vous êtes un développeur PHP, vous pouvez installer la dernière version d'Apache (Mac OS X utilise 2.2), PHP et toutes les extensions dont vous avez besoin, puis mettre à niveau le tout avec une seule commande. Oubliez de faire de même avec Homebrew.
Groupes de soutien MacPorts.
Si vous avez installé PHP55 et PHP56 (avec de nombreuses extensions différentes), vous pouvez permuter entre eux avec une seule commande. Toutes les extensions relatives font partie du groupe et elles seront activées au sein du groupe choisi: php55 ou php56. Je ne suis pas sûr que Homebrew dispose de cette fonctionnalité.
Les rubistes aiment tout réécrire dans Ruby, car la seule chose qu'ils sont à l'aise est Ruby lui-même.
la source
Homebrew et macports résolvent tous deux le même problème - c'est-à-dire l'installation de bibliothèques et d'utilitaires communs 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 destinée aux développeurs travaillant sur osx.
Ils ont tous deux besoin que les outils de ligne de commande xcode soient installés (que vous pouvez télécharger séparément sur https://developer.apple.com/ ), et pour certains packages spécifiques, vous aurez besoin de l'intégralité de l'IDE xcode installé.
xcode peut être installé à partir du Mac App Store, c'est un téléchargement gratuit, mais cela prend un certain temps depuis environ 5 Go (si je me souviens bien).
macports est une version osx de l'utilitaire de port de BSD (comme osx est dérivé de BSD, c'était un choix naturel). Pour quiconque connaît l'une des distributions BSD, macports se sentira comme chez lui.
Une différence majeure entre homebrew et macports; et la raison pour laquelle je préfère l'homebrew est qu'il n'écrasera pas les choses qui devraient être installées "nativement" dans osx. Cela signifie que si un package natif est disponible, homebrew vous en informera au lieu de le remplacer et de causer des problèmes plus loin.Il installe également des 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, car tout est dans un chemin d'accès qui vous est accessible.homebrew bénéficie également d'une communauté d'utilisateurs plus active et ses packages (appelés formules) sont mis à jour assez souvent.
Je devrais peut-être préciser - je n'ai dit nulle part dans ma réponse que macports écrase les packages natifs OSX. Ils installent tous les deux des éléments séparément.
Homebrew vous avertira lorsque vous devez installer les choses "nativement" (en utilisant l'installateur préféré de la bibliothèque / de l'outil) pour une meilleure compatibilité. Voilà ce que je voulais dire. Il utilisera également autant de bibliothèques locales disponibles dans OS X. Depuis le wiki :
Vous pouvez éventuellement remplacer les versions d'utilitaires fournies par macosx avec homebrew.
la source
/opt/local
Actuellement, Macports a beaucoup plus de packages (~ 18,6 K) qu'il n'y a de formules Homebrew (~ 3,1 K), en raison de sa maturité. Homebrew rattrape lentement cependant.
Les packages Macport sont généralement gérés par une seule personne.
Macports peut conserver plusieurs versions de packages, et vous pouvez les activer ou les désactiver pour tester les choses. Parfois, cette liste peut être corrompue et vous devez la modifier manuellement pour remettre les choses en ordre, bien que ce ne soit pas trop difficile.
Les deux gestionnaires de packages demanderont à être régulièrement mis à jour. Cela peut prendre un certain temps.
Remarque: vous pouvez avoir les deux gestionnaires de packages sur votre système! Ce n'est ni l'un ni l'autre. Brew pourrait se plaindre, mais Macports ne le fera pas.
De plus, si vous traitez avec des packages python ou ruby, utilisez un environnement virtuel dans la mesure du possible.
la source
Par défaut, Homebrew installe les packages sur votre / usr / local. Les commandes Macport nécessitent sudo pour l'installation et la mise à niveau (similaire à apt-get dans Ubuntu).
Pour plus de détails:
Ce site suggère d'utiliser Hombrew: http://deephill.com/macports-vs-homebrew/
alors que ce site répertorie les avantages de l'utilisation de Macports: http://arstechnica.com/civis/viewtopic.php?f=19&t=1207907
J'ai également récemment quitté Ubuntu et j'aime utiliser les homebrews (c'est simple et facile à utiliser!), Mais si vous vous sentez attaché à l'utilisation de sudo, Macports pourrait être la meilleure solution!
la source
/usr/local
sans nécessiter sudo?/usr/local
pour Homebrew. Apple est parti/usr/local
pour les "exécutables, bibliothèques, etc. non inclus dans le système d'exploitation de base". Cela signifie qu'il est possible que les outils installés avant d'utiliser Homebrew aient créé de/usr/local
telle sorte qu'il ne puisse pas être modifié sanssudo
. Ils n'en discutent pas sur le wiki./usr/local
sans les autorisations root. Les autorisations par défaut pour/usr
une nouvelle installation d'OS X sont le propriétaire de la racine, sans autorisation d'écriture pour quiconque. Pour même créer/usr/local
, Homebrew aurait besoin d'un accès root. (Jehomebrew
peut installer des trucs sanssudo
parce que quand il s'est installé, il a utilisésudo
pour rendre l'autorisation sur le répertoire plus lâche afin qu'il puisse faire n'importe quoi à l'intérieur/usr/local
sans déclencher le mot de passe. Cela signifie-t-il que la partie «installer sans mot de passe» est erronée? Je ne pense pas! Il est encore vrai quehomebrew
sera en mesure d'obtenir des choses sans le mot de passe.