Olen juuri siirtymässä Ubuntu Linuxista Maciin, ja kaikki on uutta ja opettelen uudelleen paljon asioita.

Linuxilla minulla oli erinomainen apt-get ohjelmistopakettien hallintaan. Löysin Googlelta vaihtoehdon Macille ja löysin MacPortsista, Finkistä ja Homebrewista.

Käytän tätä tietokonetta ensisijaisesti Ruby on Rails -sovellusten kehittämiseen.

Joten, mitä eroja on niitä? Mitkä ovat huonot ja huonot puolet? Kumpi on parhaiten ylläpidetty ja sisältää enemmän paketteja?

Kommentit

  • Muokkasin otsikkoasi vastaamaan todellista kysymystäsi. Useimmissa Stack Exchange -sivustoissa ” kysytään parhaita ”.
  • Miksi tarvitset näistä voitetuista ’ t ruby ’ s helmistä riittää?
  • saadaksesi lisätietoja siitä, miksi kaksoiskappaleita ei ole ’ t aina huono: apple.stackexchange.com/questions/11461/… siellä on myös muutama vaihtoehto.
  • En ole koskaan käyttänyt sitä itse, mutta ehkä myös vertailu pkginiin olisi hyödyllinen.

Vastaa

Ehdottomasti Homebrew. Aloitin Finkistä, vaihdoin sitten MacPortsiin (onnellisempi), sitten Homebrew (paljon, paljon onnellisempaan). Nämä ovat syyt käyttää kutakin (ammattilista, jos haluat):

Fink

  • Apt-pohjainen – tunne olosi kotoisaksi, jos tulet Debian-pohjaiselta ympäristö
  • Binaaripaketit – paketteja on saatavana binaareina, joten käännökset eivät ole pitkiä. Käytännössä vaikka olen huomannut, että ennalta kootut binäärit ovat aina vanhentuneita ja minun oli joka tapauksessa koottava sisältöä järjestelmääni varten

MacPorts

  • Toisin kuin homebrew ei riipu MacOS-kirjastosta, joka saattaa muuttua tulevaisuudessa.
  • Asenna kaikki tiedostoon / opt / local
  • Mukavat variantit -järjestelmä jonka avulla voit mukauttaa koontiversiota
  • Helppo ja intuitiivinen porttitiedosto, voit myös lisätä omia
  • tukee monia Tigeriin palaavia OSX- ja macos-versioita, mukaan lukien PowerPC-versiot, katso muu vastaus

Homebrew

  • OS X: n mukana tulevan enimmäisvipu. Fink tai MacPorts, se ei vaadi sinua rakentamaan / asentamaan rubiinia ja kirjastoja alusta alkaen vain pienen Ruby-pohjaisen työkalun asentamiseksi.
  • Asennetaan osioon /usr/local
  • Asenna ilman pääkäyttöoikeuksia
  • Jokainen asennettu paketti on siististi hiekkalaatikko omaan kellariinsa, joten et ave hajatiedostot koko järjestelmässäsi, vain linkit roskakorista, miehestä jne.
  • On oppaita ja automaatiota omien kaavatiedostojen luomiseen (ts. pakettikuvaajat)
  • rubiiniksi kirjoitetut ja kaikki kaavat ovat ytimekkäitä rubiiniskriptejä
  • nopeampia asennuksia ennalta koottujen binäärien vuoksi

pkgin

  • Nopeampi asennus valmiiksi koottujen binaarien vuoksi
  • Kaikki asennettu / opt / pkg /
  • pkgsrc-yhteisön ja Joyentin tukemana
  • Tiedetään toimivan NetBSD: llä, DragonFly BSD: llä, Solarisilla, Debianilla, Mac OS X: llä, Minixillä

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

http://pkgin.net/

kommentit

Vastaa

MacPorts

Se on enemmän riippumaton Mac OS X: stä, mikä tarkoittaa, että MacPorts vain jättää huomiotta monet järjestelmäkirjastot ja ohjelmistot, jotka jo ovat saatavana Mac OS X: ssä ja vedä omaa sen sijaan , mikä voi olla hitaampaa, kun asentamasi apuohjelma vaatii joitain suuria kirjastoja ja ohjelmistoja.

Mutta tällainen valinta on turvallisempi, koska Applen järjestelmän päivitys / päivitys vaikuttaa vähemmän asentamaasi pakettiin menettely.


Homebrew

Se on enemmän riippuvainen olemassa olevista Mac OS X: n asennetuista paketeista, joten tämä nopeuttaa pakettien asennusta ja minimoi turhat kirjastot.

Mutta riski on asennettu paketit saattavat olla rikki n Applen järjestelmän päivityksen / päivityksen vuoksi.

Nämä ovat siis kaksi erilaista kompromissia.

Homebrew ottaa myös haltuunsa / usr / local oletuksena, jolla jotkut ihmiset eivät pidä tästä , koska se jotenkin ristiriidassa unix-perinteen kanssa ja saattaa aiheuttaa ongelmia, jos olet jo asentanut siihen jotain (MySQL jne.))


Näiden erojen lisäksi, ottaen huomioon näiden kahden tarjoamat paketit, voit tarkistaa näistä kahdesta komennosta, jos sinulla on jo asennettuna MacPorts / Homebrew, jotka näyttävät sinulle tarjoamansa paketit:

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

Ja huomaat, että MacPortsissa on paljon enemmän paketteja kuin Homebrew.

(19399 vs. 3583 13. toukokuuta 2016)

Kommentit

  • Huomautuksena erilaisesta pakettimäärästä: Homebrew ei ehdottomasti sisällä paketteja ohjelmointikielille, joilla on oma pakkausjärjestelmä (rubygems / pip / cpan…) tai ohjelmistoja varten, joille on saatavana epäilemättä sopivampi OS X -asennusohjelma (MacTeX). Myöskään kaksoiskappaleet ja vanhemmat versiot eivät ole oletusarvoisessa repossa, mutta ne sisältävät vaihtoehtoisina napauta repoja. Vertaa tätä macportsiin, joka sisältää esimerkiksi IPython-portin kaikille mukana oleville Python-versioille. Se on eräänlainen erilainen filosofia, joka luonnollisesti lisää pakettien määrää Macportissa.
  • Erinomainen linkki! terrychay.com/article/macports-vs-homebrew.shtml Kiitos!
  • @YaOz, voit varmasti vaihtaa homebrew käyttämään jotakin muu kuin /usr/local?
  • @Pacerier Uskon, että muualla kuin /usr/local/ ei ”tueta” tai ”lannisteta” .

Vastaa

Vain lisätäkseni joitain omia ajatuksiani, jotka näyttävät olevan totta-ainakin noin loppuvuodesta 2014 .

Homebrewlla on pari vuotta sitten ehdottomasti etusija mielenjaossa. Löydät paljon blogeja, joissa ihmiset puhuvat siitä, kuinka paljon onnellisempia he ovat Homebrewn kanssa – yleensä kaiken ”MacPorts vetää koko maailmassa” vs. ”Homebrew käyttää mitä sinulla jo on” -ominaisuuden vuoksi.

IMO: n MacPorts on kuitenkin erilainen peto nyt kuin pari vuotta sitten. Kun vaihdoin ensin OS X: ään & käytin MacPortsia, MP-filosofia oli todellakin turhauttavaa. koska melkein kaikki rakennettiin lähteestä. Uusi asennus oli erityisen tuskallista / hidasta. Kuitenkin viimeisen vuoden aikana näyttää siltä, että 90% MP-paketeista on binäärejä & joten asennus on nyt todella nopeaa. Kokoelmastani Homebrew liikkuu myös tähän suuntaan ”Pullot” -toiminnolla, mutta minusta tuntuu, että suurin osa HB: n kautta tällä hetkellä asentamistasi asioista kootaan lähteestä.

Joten vain tarjotakseen tasoittavan lausunnon, MacPorts näyttää olevan todella ”nopeampi” o näinä päivinä. Kuitenkin useimpien kansanedustajien mielipiteet näyttävät perustuvan noin vuosien 2011-12 kokemuksiin &, älä ota tätä todella huomioon. Ota tämä suolan kanssa, vaikka en ole tavallinen HB-käyttäjä (ja sen käyttö on melko tuskallista molempien rinnalla).

Luulen, että HB: llä on etuja, mikä tarkoittaa, että se todennäköisesti ”voittaa” sota ”pitkällä aikavälillä tosin

  • HB on kaikki Ruby, kun taas MacPorts ja sen pakettikaavat on kirjoitettu TCL: ssä, joka on …. ei kovin suosittu komentosarjakieli. Se sanoi sen melko pirun helppo luoda oma salkku.
  • HB perustuu GitHubiin &, joten se näyttää paljon tervetulleelta uusille avustajille, kun taas MacPorts isännöi omaa SVN-arkistoaan jonnekin Luulen – mikä heijastaa periaatteessa molempien projektien eri aikoja.
  • Kuten jo mainittiin, yleinen yksimielisyys on, että MacPorts on korvattu HB &, oikeutetusti tai väärin, se houkuttelee enemmän ihmisiä kohti sitä.

Muuten YaOZl & kLy käsitteli tärkeimmät erot sudossa, riippuvuuksissa jne. melko hyvin. Minä huomaa, että MacPorts johtaa joskus päänsärkyyn muiden ohjelmien suhteen, jotka eivät odota mitään olevan /opt/local: ssä, asiat asennetaan pääkäyttäjän oikeuksilla jne. & on joitain asioita, joita ei yleensä kannata asentaa MacPortsin kanssa (esim voit asentaa Rails MacPortsin kautta, mutta et ole hullu, jos et asenna sitä Rubyn normaalin Gem – hallinnon kautta). Muuten, vaikka ”olen suuri MacPorts-filosofian fani rakentaa oma pieni maailma & en luottaa johonkin valmiiksi pakattuun OS X -kirjastoon – kun se toimii, ja se useimmiten tekee kaiken on kuollut yksinkertainen. Minkä haluat todella Package Managerilta. Ja kuten mainitsin, tässä vaiheessa sen aika nopeasti saatiin aikaan useimmat asiat.

Toivottavasti jotkut niistä olivat hyödyllisiä.

Kommentit

  • ” Kuten jo mainittiin, yleinen yksimielisyys on, että HB on korvannut MacPortsin & oikein tai väärin, joka houkuttelee enemmän ihmisiä kohti sitä. ” … tämä tuntuu erittäin pinnalliselta lausunnolta …suosio vs laadun tarjoaminen eivät ole samat eivätkä tarkoita, että toinen olisi ” ensimmäinen korvattu ”.
  • MacPorts käyttää nyt Githubia. Katso guide.macports.org/#project.github : ” MacPorts-projekti käyttää Git-hajautettua versionhallintajärjestelmää hallita koodia koko projektille. Päätietovarastomme isännöivät GitHubissa. Ylläpidämme julkisia arkistoja melkein kaikille projektikoodeillemme ja asiakirjoillemme, mukaan lukien itse MacPorts-järjestelmän GitHub-arkisto, MacPorts-portit ja jopa nyt lukemasi opas. ”

Vastaa

Jotakin muuta (toistaiseksi) vastausta ei ilmeisesti ole mainittu, että MacPorts tukee erinomaisesti vanhoja macOS-versioita. Homebrew tukee vain niitä käyttöjärjestelmiä, joita Apple tällä hetkellä tukee, mikä tarkoittaa yleensä kolmea viimeisintä julkaisua. Esimerkiksi elokuussa 2020 vain Catalina, Mojave ja High Sierra ovat yhteensopivia Homebrewn kanssa.

Sen sijaan MacPorts voidaan asentaa Tigeriin (!), Ja projekti ylläpitää erityisiä korjaustiedostoja ohjelmistojen säilyttämiseksi. työskentelevät aina kun mahdollista. He ylläpitävät myös ” Legacy Support ” -kirjastoa, joka tukee symboleja uusista macOS-versioista vanhempiin; linkittäminen tähän kirjastoon kääntämisen aikana voi saada kaikenlaiset uudet ohjelmat yhtäkkiä toimimaan vanhemmissa järjestelmissä!

Joten jos käytät vanhaa macOS-versiota tai jos luulet joutuvan pysymään nykyinen käyttöjärjestelmä on ohittanut Applen viimeisen käyttöpäivän, se on ehdottomasti syy mennä MacPorttien kanssa.

Vastaa

Brew oli täysin Minun on sujuvaa käyttää sitä, joten en pysty kertomaan sen haitoista. Joitakin MacPortsin haittoja:

Kahdesta ensimmäisestä kohdasta on useita erittäin suosittuja kysymyksiä.

Kommentit

  • Tämä oli kokemukseni ImageMagickin asentaminen 10.6: een; kahvi oli erittäin helppoa, mutta ei ’ t sisällytä JP2-edustaja. imagemagick.org/script/binary-releases.php
  • hautua ja makroporttia tarvitsevat vain Xcode-komentorivityökalut, joten sama täällä.
  • @Mark I ’ en ole varma mitä tarkoitat, mutta panimo toimi minulle täydellisesti ilman Xcoodea.
  • Sinä ’ Tarvitsen vaatimustenmukaisuuden Brew – ja MacPorts -käyttöjärjestelmille, jotka voidaan asentaa Xcode-komentorivityökalujen kautta. Et tarvitse Xcode -sovellusta .
  • Unohdin kuinka ruma on synkronoida tuo asia palomuurin takana … yiki!

Vastaa

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *