MacPorts, Fink और Homebrew के लिए पेशेवरों और विपक्ष क्या हैं?


154

मैं सिर्फ उबंटू लिनक्स से मैक की ओर पलायन कर रहा हूं, और सब कुछ नया है और मैं बहुत सारा सामान फिर से सीख रहा हूं।

लिनक्स पर मेरे पास सॉफ्टवेयर पैकेजों को प्रबंधित करने के लिए उत्कृष्ट योग्यता है। मैं मैक पर एक विकल्प के लिए googled और MacPorts, Fink और Homebrew के बारे में पाया।

मैं मुख्य रूप से रूबी अनुप्रयोगों पर रूबी विकसित करने के लिए इस कंप्यूटर का उपयोग करूंगा।

तो, उनके बीच क्या अंतर हैं? उतार-चढ़ाव कौन से हैं? कौन सा सबसे अच्छा बनाए रखा है और अधिक पैकेज है?


5
मैंने आपका शीर्षक संपादित किया ताकि यह आपके वास्तविक प्रश्न से मेल खा सके। अधिकांश स्टैक एक्सचेंज साइटों पर "सबसे अच्छा" के लिए सवाल पूछने पर डूब जाते हैं।
.c Wolff

1
आपको इनमें से किसी की आवश्यकता क्यों नहीं होगी माणिक के रत्न पर्याप्त नहीं होंगे?
मार्क

डुप्लिकेट हमेशा खराब क्यों होता है, इस पर अधिक जानकारी के लिए: apple.stackexchange.com/questions/11461/… वहाँ भी कुछ और विकल्प हैं
Cregox

कभी भी इसका उपयोग स्वयं नहीं किया गया, लेकिन शायद pkgin की तुलना भी उपयोगी होगी।
डेनिस

जवाबों:


118

निश्चित रूप से होमब्रे। मैंने फिंक के साथ शुरुआत की, फिर मैकपोर्ट्स (खुश) में बदल गया, फिर होमब्रे (बहुत, बहुत खुश)। प्रत्येक का उपयोग करने के लिए ये मेरे कारण हैं (यदि आप चाहें तो एक समर्थक सूची):

गुप्तचर

  • Apt- आधारित - घर पर सही महसूस करें यदि आप डेबियन-आधारित वातावरण से आते हैं
  • बाइनरी पैकेज - पैकेज बायनेरिज़ के रूप में उपलब्ध हैं इसलिए कोई लंबा संकलन समय नहीं है। व्यावहारिक रूप से हालांकि मैंने पाया है कि पूर्व संकलित बायनेरिज़ हमेशा पुराने थे और मुझे अपने सिस्टम के लिए सामान संकलित करना था
  • संकुल का निर्णय चयन

MacPorts

  • संकुल / बंदरगाहों का सबसे बड़ा चयन
  • आम तौर पर बहुत तारीख तक
  • अच्छा वेरिएंट सिस्टम जो आपको बिल्ड को कस्टमाइज़ करने की सुविधा देता है
  • आसान और सहज पोर्ट फाइल्स

होमब्रू

  • बहुत ऊपर तक
  • OS X के साथ क्या आता है इसका अधिकतम लाभ। Fink या MacPorts के विपरीत, आपको कुछ छोटे रूबी-आधारित टूल को स्थापित करने के लिए स्क्रैच से माणिक और लाइब्रेरी बनाने / स्थापित करने की आवश्यकता नहीं है।
  • इसमें स्थापित /usr/localकरने के लिए आपको PATHकहीं भी संशोधन करने की आवश्यकता नहीं है
  • उपयोगकर्ता के स्वामित्व वाली सब कुछ, इसलिए किसी भी पैकेज को स्थापित करने के लिए संभावित जोखिमपूर्ण रूट एक्सेस की आवश्यकता नहीं है
  • प्रत्येक स्थापित पैकेज को साफ-साफ सैंडबॉक्स में अपने सेलर में रखा जाता है ताकि आपके पास अपने सिस्टम पर आवारा फाइलें न हों, बस बिन, आदमी आदि से सहानुभूति रहे।
  • अपनी खुद की फॉर्मूला फाइल्स बनाने का आसान तरीका (यानी पैकेज डिस्क्रिप्टर)
  • चूंकि आप एक रूबी पृष्ठभूमि से हैं, एक और प्लस सब कुछ माणिक में लिखा गया है और सभी सूत्र सरल रूबी स्क्रिप्ट हैं

pkgin

  • बहुत ऊपर तक
  • प्री-संकलित बायनेरिज़ के कारण तेज़ स्थापित होता है
  • सब कुछ में स्थापित / ऑप्ट / pkg /
  • pkgsrc समुदाय और जॉयंट द्वारा समर्थित
  • NetBSD, DragonFly BSD, Solaris, Debian, Mac OS X, Minix पर काम करने के लिए जाना जाता है

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

http://pkgin.net/


33
ध्यान दें कि होम-काढ़ा के लिए आप तर्क दे सकते हैं कि "इन / usr / लोकल" और "OS X के साथ जो भी मिलता है उसका लाभ उठाना" समस्याएँ हैं - वे दो मुख्य कारण हैं जो मैं एक अन्य पैकेजिंग प्रणाली का उपयोग करता हूं
मार्क

5
यह देखते हुए कि / usr / स्थानीय / बिन डिफ़ॉल्ट मैक ओएस एक्स पथ में नहीं है, आपको सबसे निश्चित रूप से अपने पैट को संशोधित करना होगा - आपको केवल इसे एक बार करना होगा, क्योंकि ब्रू उस एक जगह को सभी नए से जोड़ता है डिब्बे इसे स्थापित करता है ("केग केवल" को छोड़कर, लेकिन यह यहां शोर है)।
टेरी एन

4
@ मर्क आप किस पैकेजिंग सिस्टम को पसंद करते हैं?
डेविड मोल्स

5
@ jedd.ahyoung मुझे वे मैकपोर्ट पसंद हैं, जो / ऑप्ट / लोकल में डालते हैं (फ़िंक में डालता है / sw)
मार्क

5
मुझे @ GDP 2 से सहमत होना होगा। मैं लिनक्स से एक नया मैक उपयोगकर्ता हूं। काढ़ा में डेवलपर्स बहुत बुरा रवैया है। क्या आप विश्वास कर सकते हैं कि जब मैं यह टिप्पणी पोस्ट कर रहा हूँ, तो शराब बनाने वाले की जुबान में केवल 13 मुद्दे हैं? वे उपयोगकर्ताओं को सुनना नहीं चाहते हैं। वे कोई मुद्दा नहीं चाहते हैं। वे सिर्फ आपके द्वारा खोले और बंद किए गए किसी भी मुद्दे को अनदेखा करते हैं। मैंने कभी भी किसी भी प्रकार की गिटहब परियोजनाओं में ऐसा रवैया नहीं देखा। एक नए उपयोगकर्ता के रूप में, मैंने कुछ महीनों के लिए काढ़ा का उपयोग किया है और आज मैं एक दूसरे पर स्विच करने के बारे में सोच रहा हूं और इस प्रश्न को पाया। काढ़ा का उपयोग करने का अनुभव मेरे जीवन में अब तक का सबसे बुरा है
sagon00

57

MacPorts

यह मैक ओएस एक्स से अधिक स्वतंत्र है, इसका मतलब है कि मैकपोर्ट्स केवल सिस्टम ओएस और सॉफ्टवेयर्स में से कई को नजरअंदाज करेगा जो पहले से ही मैक ओएस एक्स में उपलब्ध हैं और इसके बजाय अपने स्वयं के एक को खींचते हैं , जो आपके द्वारा स्थापित उपयोगिता के लिए धीमा हो सकता है पुस्तकालय और सॉफ्टवेअर।

लेकिन इस तरह का चुनाव अधिक सुरक्षित है क्योंकि आपके द्वारा स्थापित पैकेज Apple के सिस्टम अपडेट / अपग्रेड प्रक्रिया से कम प्रभावित होते हैं।


होमब्रू

यह मौजूदा मैक ओएस एक्स स्थापित पैकेजों पर अधिक निर्भर है, इसलिए यह पैकेजों की स्थापना को गति देगा और अनावश्यक पुस्तकालयों को कम करेगा।

लेकिन जोखिम स्थापित है Apple के सिस्टम अपडेट / अपग्रेड के कारण पैकेज टूट सकते हैं।

तो, ये दो अलग तरह के ट्रेडऑफ़ हैं।

इसके अलावा, Homebrew डिफ़ॉल्ट रूप से अधिभार / usr / स्थानीय लेता है , जिसके साथ कुछ लोग इसे पसंद नहीं करते हैं क्योंकि यह किसी तरह से यूनिक्स-परंपरा के साथ संघर्ष करता है और समस्या पैदा कर सकता है यदि आपने पहले से ही वहां कुछ भी स्थापित किया है (MySQL, आदि)


इन अंतरों के अलावा, इन दोनों की पेशकश करने वाले पैकेजों पर विचार करते हुए, आप इन दो आदेशों के साथ जांच कर सकते हैं यदि आपके पास पहले से ही MacPorts / Homebrew स्थापित है, जो आपको वर्तमान में प्रदान किए गए पैकेज दिखाते हैं:

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

और आपको पता चलेगा कि होमब्रेव की तुलना में मैकपोर्ट्स के पास कई अधिक पैकेज हैं।

(13 मई 2016 को 19399 बनाम 3583)


17
पैकेज की अलग-अलग संख्या पर एक टिप्पणी के रूप में: होमब्रे ने निश्चित रूप से प्रोग्रामिंग भाषाओं के लिए पैकेज शामिल नहीं किए हैं जिनकी अपनी पैकेजिंग प्रणाली (रूबीज / पिप / कोपन ...) या सॉफ़्टवेयर के लिए है, जिसके लिए एक अधिक उपयुक्त OS X इंस्टॉलर उपलब्ध है (MacTeX) । इसके अलावा, डुप्लिकेट और पुराने संस्करण डिफ़ॉल्ट रेपो में नहीं हैं, लेकिन वैकल्पिक टैप रिपोज में शामिल हैं । इसकी तुलना मैकपोर्ट्स से करें, जिसमें उदाहरण के लिए सभी शामिल पायथन संस्करणों के लिए एक IPython पोर्ट शामिल है। यह एक अलग तरह का दर्शन है जो स्वाभाविक रूप से मैकपोर्ट में पैकेज की संख्या को बढ़ाता है।
डेबिल्स्की

2
बहुत बढ़िया लिंक! terrychay.com/article/macports-vs-homebrew.shtml धन्यवाद!
जेफ बर्गेज

@ योज, निश्चित रूप से आप कुछ और के अलावा अन्य उपयोग करने के लिए होमब्रे को बदल सकते हैं /usr/local?
22

41

बस अपने खुद के कुछ विचारों को जोड़ने के लिए जो 2014 के अंत में कम से कम सच-ईश लगता है।

होमब्रेव, कुछ साल पहले, माइंडशेयर के मामले में निश्चित रूप से ऊपरी हाथ है। आपको लोगों के साथ बहुत सारे ब्लॉग मिलेंगे, जिनके बारे में बात करते हुए कि वे Homebrew के साथ कितने खुश हैं - आमतौर पर पूरी दुनिया में "MacPorts की खींचातानी" के कारण "Homebrew आपके पास पहले से मौजूद चीज" का उपयोग करता है।

हालाँकि, IMO, MacPorts एक अलग जानवर है, जो कि कुछ साल पहले था। जब मैंने पहली बार OS X पर स्विच किया और MacPorts का उपयोग कर रहा था, तो MP दर्शन वास्तव में निराशाजनक था क्योंकि लगभग सब कुछ स्रोत से बनाया गया था। एक नई स्थापना विशेष रूप से दर्दनाक / धीमी थी। हालाँकि, पिछले एक साल में, विशुद्ध रूप से मेरे स्वयं के छापों के आधार पर, ऐसा लगता है कि 90% एमपी पैकेज बायनेरिज़ हैं और इसलिए स्थापना वास्तव में अब बहुत तेज़ है। होमबॉव को जो मैं इकट्ठा करता हूं, वह "बॉटल" के साथ भी इस दिशा में आगे बढ़ रहा है, लेकिन मुझे यह आभास होता है कि इस समय एचबी के माध्यम से आपके द्वारा स्थापित अधिकांश चीजें स्रोत से संकलित की जाएंगी।

इसलिए, यदि केवल एक जवाबी राय पेश करने के लिए, MacPorts वास्तव में इन दिनों "तेज" विकल्प लगता है। हालांकि, मप्र के अधिकांश लोगों की राय लगभग 2011-12 के अनुभवों पर आधारित लगती है और न ही वास्तव में इसे ध्यान में रखते हैं। नमक के एक दाने के साथ इसे लें, क्योंकि मैं नियमित रूप से एचबी उपयोगकर्ता नहीं हूं (और इसके दोनों तरफ साइड का उपयोग करने के लिए दर्दनाक है)।

मुझे लगता है कि एचबी के फायदे हैं इसका मतलब है कि यह लंबे समय में "युद्ध जीत जाएगा" हालांकि

  • HB सभी रूबी है जबकि MacPorts, और इसके पैकेज सूत्र, टीसीएल में लिखे गए हैं जो कि .... बिल्कुल लोकप्रिय स्क्रिप्टिंग भाषा नहीं है। यह कहा कि अपने खुद के पोर्टफ़ाइल बनाने के लिए अपने सुंदर बहुत आसान है।
  • HB GitHub के आसपास आधारित है और इस प्रकार नए योगदानकर्ताओं का बहुत अधिक स्वागत है, जबकि MacPorts अपनी स्वयं की SVN रिपॉजिटरी को कहीं न कहीं मेरे ख्याल से होस्ट करता है - जो मूल रूप से मेरे द्वारा ग्रहण की गई दोनों परियोजनाओं के विभिन्न युगों को दर्शाता है।
  • जैसा कि आम सहमति का उल्लेख है कि MacPorts HB & द्वारा सही या गलत तरीके से छांटे गए हैं, जो इसके साथ और अधिक लोगों को आकर्षित करता है।

अन्यथा YaOZl & kLy ने सुडो, निर्भरता आदि के मामले में मुख्य अंतर को अच्छी तरह से कवर किया। व्यक्तिगत रूप से मुझे लगता है कि MacPorts कभी-कभी कुछ कार्यक्रमों के संदर्भ में कुछ सिरदर्द की ओर जाता है, जिसमें कुछ भी होने की उम्मीद नहीं है /opt/local, रूट अनुमतियों के साथ स्थापित की जा रही चीजें आदि और कुछ चीजें हैं जो आमतौर पर MacPorts के साथ स्थापित नहीं की जाती हैं (उदाहरण के लिए आप RTI के माध्यम से स्थापित कर सकते हैं) MacPorts लेकिन आप रूबी के सामान्य रत्न प्रबंधन के माध्यम से इसे स्थापित नहीं करने के लिए पागल होंगे)। इसके अलावा, हालांकि मैं अपनी छोटी सी दुनिया के निर्माण के MacPorts के दर्शन का बहुत बड़ा प्रशंसक हूं और कुछ prepackaged OS X लाइब्रेरी पर निर्भर नहीं हूं - जब यह काम करता है, और यह ज्यादातर करता है, तो सब कुछ मृत सरल है। जो आप पैकेज मैनेजर को वास्तव में चाहते हैं। और जैसा कि मैंने उल्लेख किया है, इस समय पर इसके सुंदर लानत के लिए सबसे अधिक चीजें सेट करने के लिए जल्दी है।

आशा है कि कुछ उपयोगी था।


"जैसा कि आम सहमति का उल्लेख है कि मैकपोर्ट्स को एचबी और सही या गलत तरीके से अधिगृहित किया गया है, जो अधिक लोगों को अपनी ओर खींचता है।" ... यह एक बहुत ही सतही कथन की तरह लगता है ... लोकप्रिय होने के नाते बनाम गुणवत्ता प्रदान करने वाले समान नहीं हैं और किसी भी तरह से इसका मतलब यह नहीं है कि दूसरा "पहले से" अलग है।
दिमित्री जैतसेव

3

ब्रू मुझे उपयोग करने के लिए पूरी तरह से चिकना था, इसलिए मैं इसके विपक्ष के बारे में बताने में असमर्थ हूं। MacPorts के कुछ नुकसान:

पहले दो बिंदुओं के बारे में कई बहुत लोकप्रिय सवाल हैं।


यह मेरा अनुभव था 10.6 पर ImageMagick स्थापित करने का; काढ़ा बहुत आसान था, लेकिन जेपी 2 के प्रतिनिधि को शामिल नहीं किया। imagemagick.org/script/binary-releases.php
निमो

2
काढ़ा और macports बस की जरूरत Xcode कमांड लाइन उपकरण तो यहाँ एक ही है।
मार्क

@ मर्क मुझे यकीन नहीं है कि आपका क्या मतलब है, लेकिन ब्रू ने मेरे लिए पूरी तरह से एक्सकोड के बिना काम किया।
निमो

2
आपको ब्रू और मैकपोर्ट्स के लिए एक अनिवार्य आवश्यकता होगी , जिसे Xcode कमांड लाइन टूल्स के माध्यम से स्थापित किया जा सकता है। आपको Xcode आवेदन की आवश्यकता नहीं होगी ।
nohillside

1
मैं भूल गया कि फ़ायरवॉल के पीछे होने पर उस चीज़ को कितनी अच्छी तरह से सिंक करना है ... बाइक!
रोज़गारपैक
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.