Éppen áttérek az Ubuntu Linux-ról a Mac-re, és minden új, és sok mindent megtanulok.

Linuxon a kiváló apt-get volt a szoftvercsomagok kezeléséhez. Gugliztam egy alternatívát a Mac-en, és rátaláltam a MacPorts, a Fink és a Homebrew témákra.

Ezt a számítógépet elsősorban a Ruby on Rails alkalmazások fejlesztésére fogom használni.

Tehát mi a különbség a őket? Melyek a hátrányai és hátrányai? Melyik a legjobban karbantartott és több csomagja van?

Megjegyzések

  • Szerkesztettem a címet, hogy az megfeleljen az Ön valódi kérdésének. A legtöbb Stack Exchange webhelyen a ” kérdést a legjobb ” kérik rosszallással.
  • Miért van szükség ezekből nyert ‘ t rubin ‘ s drágakövek elegendőek lennének?
  • További információ arról, hogy miért nem léteznek másolatok ‘ t mindig rossz: apple.stackexchange.com/questions/11461/… van még néhány alternatíva ott
  • Soha nem használtam magam, de talán a pkgin összehasonlítás is hasznos lehet.

Válasz

Határozottan Homebrew. Finkkel kezdtem, majd átálltam MacPorts-ra (boldogabb), majd Homebrew-ra (sokkal-sokkal boldogabbra). Ez az oka annak, hogy mindegyiket (profi lista, ha akarja) használja:

Fink

  • Apt-alapú – érezze magát otthon, ha Debian-alapú környezet
  • Bináris csomagok – a csomagok bináris fájlként érhetők el, így nincs hosszú fordítási idő. Gyakorlatilag bár azt tapasztaltam, hogy az előre összeállított bináris fájlok mindig elavultak, és mindenképp össze kellett állítanom a rendszeremhez tartozó tartalmakat.

MacPorts

  • A homebrew-tól eltérően nem függ a MacOS könyvtárától, amely a jövőben változhat.
  • Telepítsen mindent a / opt / local
  • Szép változatok rendszerbe , amellyel testre szabhatja az összeállítást
  • Könnyű és intuitív port fájlok, saját hozzáadását is lehetővé teszi
  • támogatja az OSX és a Tigerig visszanyúló macók számos verzióját, beleértve a PowerPC verziókat is egyéb válasz

Homebrew

  • Az OS X-hez kapcsolódó maximális kihasználtság. A Fink vagy a MacPorts használatához nem szükséges a rubin és a könyvtárak építése / telepítése a semmiből, csak néhány apró Ruby-alapú eszköz telepítéséhez.
  • Telepítés a /usr/local
  • Telepítés root hozzáférés nélkül
  • Minden telepített csomag tisztán homokozóba kerül a saját pincéjében, így nem fog ave kóbor fájlokat az egész rendszerén, csak szimbolikus linkeket kell tárolnia a binből, az emberből stb. (azaz. csomagleírók)
  • rubinban írva, és az összes képlet tömör rubinszkript
  • Gyorsabb telepítés az előre lefordított bináris fájlok miatt

pkgin

  • Gyorsabb telepítés az előre lefordított bináris fájlok miatt
  • Minden a / opt / pkg / fájlba telepítve
  • a pkgsrc közösség és a Joyent támogatásával
  • A NetBSD-n, a DragonFly BSD-n, a Solarison, a Debianon, a Mac OS X-en, a Minix-en működik

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

http://pkgin.net/

megjegyzések

Válasz

MacPorts

Ez sokkal függetlenebb a Mac OS X-től, ez azt jelenti, hogy a MacPorts csak figyelmen kívül hagyja a már meglévő rendszerkönyvtárakat és szoftvereket elérhető a Mac OS X rendszerben, és húzza inkább a sajátját , ami lassabb lehet, ha a telepített segédprogramhoz néhány nagy könyvtár és szoftver szükséges.

De ez a fajta választás biztonságosabb, mert a telepített csomagokat kevésbé befolyásolja az Apple rendszerfrissítése / frissítése eljárás.


Homebrew

Ez jobban függ a meglévő Mac OS X telepített csomagoktól, így ez felgyorsítja a csomagok telepítését és minimalizálja a redundáns könyvtárakat.

De a kockázat telepítve van, a csomagok megsérülhetnek n az Apple rendszerfrissítése / frissítése miatt.

Tehát ez a két különböző kompromisszum.

A Homebrew átveszi a / usr / local alapértelmezés szerint, amellyel néhány embernek ez nem tetszik , mert valahogy ütközik az unix-tradícióval, és problémákat okozhat, ha már telepített bármit (MySQL stb.))


Ezen eltéréseken kívül, figyelembe véve a kettő által kínált csomagokat, ezzel a két paranccsal ellenőrizheti, hogy van-e már telepítve a MacPorts / Homebrew, amely megmutatja az általuk jelenleg biztosított csomagokat:

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

És megtudhatja, hogy a MacPorts sokkal több csomagot tartalmaz, mint a Homebrew.

(19399 vs 3583, 2016. május 13.)

Megjegyzések

  • Megjegyzésként az eltérő csomagszámra: A Homebrew határozottan nem tartalmaz programozási nyelvekhez tartozó csomagokat, amelyek saját csomagolási rendszerrel rendelkeznek (rubygems / pip / cpan…) vagy olyan szoftverek esetében, amelyekhez egy vitathatatlanul megfelelőbb OS X telepítő áll rendelkezésre (MacTeX). A duplikátumok és a régebbi verziók nem szerepelnek az alapértelmezett repóban, hanem alternatív tap repókat tartalmaznak. Hasonlítsa össze ezt a macportokkal, amelyek például tartalmaznak egy IPython portot az összes mellékelt Python verzióhoz. Ez egyfajta más filozófia, amely természetesen növeli a csomagok számát a macportokban.
  • Kiváló link! terrychay.com/article/macports-vs-homebrew.shtml Köszönöm!
  • @YaOz, Biztosan megváltoztathatja a homebrew szót, hogy használjon valamit más, mint a /usr/local?
  • @Pacerier, úgy gondolom, hogy a /usr/local/ kivételével bárhol máshol „nem támogatott” vagy „nem kedvelt” .

Válasz

Csak azért, hogy hozzáadjak néhány olyan gondolatot, amelyek legalább 2014 végén igaznak tűnnek. .

A Homebrew, mint pár évvel ezelőtt, mindenképpen előnyben részesíti a mindshare-t. Sok olyan blogot talál, ahol az emberek arról beszélnek, hogy mennyivel boldogabbak a Homebrew-val – általában az egész “MacPorts húzza az egész világot” és “A Homebrew felhasználja azt, ami már van” dolgot.

Azonban az IMO, a MacPorts most más fenevad, mint pár évvel ezelőtt. Amikor először váltottam OS X-re, & a MacPorts-ot használta, az MP filozófiája valóban frusztráló volt mert szinte mindent forrásból építettek. Egy új telepítés különösen fájdalmas / lassú volt. Azonban az elmúlt egy évben úgy tűnik, hogy pusztán a saját benyomásaim alapján az MP-csomagok 90% -a bináris & tehát a telepítés valóban nagyon gyors most. Amiből összegyűjtöttem, a Homebrew is ebbe az irányba mozog a „Palackokkal”, de az a benyomásom van, hogy a legtöbb dolgot, amelyet a HB-n keresztül telepítesz ebben az időpontban, forrásból állítják össze.

Tehát, ha csak kiegyenlítő véleményt kínálunk, úgy tűnik, hogy a MacPorts valóban a „gyorsabb” o pion manapság. Úgy tűnik azonban, hogy a legtöbb képviselő véleménye körülbelül 2011-12 körüli tapasztalatokon alapszik & ezt nem igazán veszi figyelembe. Vegyük ezt egy szem sóval, mivel én nem vagyok rendszeres HB-felhasználó (és elég fájdalmas mindkét oldalt használni).

Úgy gondolom, hogy a HB-nek vannak olyan előnyei, amelyek azt jelentik, hogy valószínűleg “nyer a háború “hosszú távon, bár

  • a HB mind Ruby, míg a MacPorts és csomagképletei TCL-ben vannak megírva, ami …. nem éppen egy népszerű script nyelv. Ez azt mondta, hogy rohadtul egyszerű létrehozni saját portfólióját.
  • A HB a GitHub körül található &, így sokkal örvendetesebbnek tűnik az új közreműködők számára, míg a MacPorts valahol saját SVN-tárházat üzemeltet Azt hiszem – ami alapvetően mindkét projekt eltérő korát tükrözi.
  • Amint említettük, az általános konszenzus az, hogy a MacPortokat a HB & helyettesítette, helyesen vagy tévesen ez több embert vonz maga felé.

Különben a YaOZl & kLy elég jól lefedte a fő különbséget a sudo, a függőségek stb. tekintetében. Én azt találjuk, hogy a MacPorts néha fejfájáshoz vezet, mivel más programok nem várják el, hogy bármi is szerepeljen /opt/local ben, a dolgokat root jogosultságokkal telepítik stb. & vannak olyan dolgok, amelyeket általában nem a MacPorts használatával lehet telepíteni (pl telepítheti a Rails-et MacPorts-on keresztül, de őrült lenne, ha nem a Ruby normál Gem-menedzsmentjén keresztül telepítené). Ettől eltekintve, bár én “nagy rajongója vagyok a MacPorts filozófiájának, hogy saját kis világát építem & és nem támaszkodom valamilyen előre csomagolt OS X könyvtárra – amikor működik, és többnyire mindenre képes, halottan egyszerű. Amire igazán vágysz egy Package Manager-től. És mint említettem, ebben a pillanatban rohadtul gyorsan beállítható a legtöbb dolog.

Remélem, ezek egy része hasznos volt.

Megjegyzések

  • ” Mint említettük, az általános egyetértés az, hogy a MacPorts-ot HB &, helyesen vagy helytelenül, több embert vonz maga felé. ” … ez nagyon felszínes kijelentésnek tűnik …a népszerűség és a minőség biztosítása nem azonos, és semmiképpen nem jelenti azt, hogy a második ” az első helyébe ” lép.
  • A MacPorts most a Github-ot használja. Lásd: guide.macports.org/#project.github : ” A MacPorts projekt a Git elosztott verzióvezérlő rendszert használja a teljes projekt kódjának kezeléséhez. Fő tárházaink a GitHubon vannak tárolva. Szinte az összes projektkód és dokumentáció nyilvános tárhelyet tartunk fenn, beleértve a GitHub adattárat a MacPorts rendszerhez, a MacPorts portokhoz és még az útmutatóhoz is, amelyet éppen olvas. ”

Válasz

Valami, amit más (eddig) válaszok nem említenek, az az, hogy a MacPorts kiválóan támogatja a macOS régi verzióit. A Homebrew csak azokat az operációs rendszereket támogatja, amelyeket az Apple jelenleg támogat, ami általában az utolsó három kiadást jelenti. Például 2020 augusztusától csak a Catalina, a Mojave és a High Sierra kompatibilis a Homebrew-val.

Ezzel szemben a MacPorts telepíthető a Tiger-re (!), És a projekt a szoftverek megőrzéséhez speciális javításokat tart fenn. ahol csak lehet. Fenntartanak egy ” örökölt támogatási ” könyvtárat is, amely a szimbólumokat a macOS új verzióiból a régebbiekbe támogatja; Ha ezt a könyvtárat összekapcsolja fordítás közben, akkor mindenféle új szoftver hirtelen működhet a régebbi rendszereken!

Tehát, ha a macOS régi verzióját futtatja, vagy ha úgy gondolja, hogy szükség lehet egy az operációs rendszer lejárta után az Apple lejárati dátumát, ez mindenképpen ok a MacPorts használatára.

Válasz

A Brew teljesen elkészült simán használható, így képtelen vagyok elmondani a hátrányait. A MacPorts néhány hátránya:

Számos nagyon népszerű kérdés merül fel az első két ponttal kapcsolatban.

Hozzászólások

  • Ez volt az én tapasztalatom az ImageMagick telepítése a 10.6-ra; a főzés nagyon egyszerű volt, de nem ‘ nem tartalmazza a JP2 delegáltat. imagemagick.org/script/binary-releases.php
  • a főzéshez és a macportokhoz csak Xcode parancssori eszközökre van szükség, így itt is.
  • @Mark I ‘ nem tudom biztosan, mire gondolsz, de a főzés tökéletesen működött nekem Xcode nélkül.
  • Te ‘ Szüksége lesz a brew és MacPorts-ra, amely az Xcode parancssori eszközökön keresztül telepíthető. Nem lesz szükséged az Xcode alkalmazásra .
  • Elfelejtettem, hogy milyen csúnya szinkronizálni azt a dolgot, amikor tűzfal mögött van … jaj!

Vélemény, hozzászólás?

Az email címet nem tesszük közzé. A kötelező mezőket * karakterrel jelöltük