41 votos

MacPorts vs Fink vs Homebrew

Siempre usé MacPorts para instalar y mantener mi compiladores GCC y otros programas. Ahora he escuchado acerca de Fink y Homebrew. Al parecer estas dos utilidades están ganando terreno en la comunidad de Mac, pero no entiendo la diferencia entre ellos.

¿Cuál es la diferencia principal entre Fink, MacPorts y el Homebrew? ¿Hay alguna diferencia en la calidad o rendimiento?

31voto

Banjer Puntos 1209

Fink ha existido por lo menos desde 2001. Fink y MacPorts son los gestores de paquetes que queremos ser "ortogonal" para el sistema, es decir, instalar su propia versión de la python, perl, librerías, compiladores, etc. en los propios árboles (/sw para Fink, /opt/local para MacPorts). La razón para esto es que ellos no tienen control de lo que hace Apple con su software, y de vez en cuando rompió las cosas cuando Apple actualiza sus propias cosas.

Por lo que yo entiendo, Homebrew quiere ser más "integrado" con el sistema, utiliza las librerías que proporciona Apple, y se instala con sus cosas en /usr/local/bin y otras carpetas estándar. Supongo que eso significa que la elección de software es más limitada con Homebrew, no me puedo imaginar que se podría instalar KDE con él, pero no lo he probado.

Un punto por Fink vs MacPorts: un par de años atrás, el proyecto Fink proporcionan paquetes binarios; que se puede descargar e instalar los paquetes sin compilar tú mismo. Su gestor de paquetes todavía tiene esa capacidad, sólo ha habido no está disponible para un largo tiempo. No sé si esto ha cambiado en el ínterin.

Así que en resumen: sin el binario cosas, Fink y MacPorts son muy similares. Deberían tener más paquetes disponibles de Homebrew, mientras que el Homebrew debería tomar menos espacio en disco, por las razones que he dicho anteriormente. En cuanto a la calidad: nunca he instalado el Homebrew, y entre Fink y MacPorts normalmente prefiero el que no estoy usando actualmente.

Así que si usted está satisfecho con MacPorts, sólo permanecer con él.

P. S. La razón, nunca he intentado Homebrew es que yo uso algunos paquetes precompilados. Estos por lo general también se instalan en /usr/local/bin y similares, que sólo gritos de problemas.

8voto

Richard Puntos 223

Yo diría que las principales diferencias son:
La providencia, los resultados y el método de distribución.

El detalle más importante va a ser para usted para comprobar si el sistema que usted elija contiene el paquete(s) para el software que usted desea. Paquete de cuenta son aproximadamente de: 19k Macports, 22k Fink, 3k Homebrew, 10k pkgsrc.

  • Macports, antes de Darwin, los puertos que parece ser un estilo BSD sistema de puertos como el de pkgsrc que se obtiene de la fuente, parches, construye e instala. Si es muy semejante a la de pkgsrc que va a hacer este uso de secuencias de comandos de shell. Se utiliza para confiar en las herramientas de la Xcode, pero que comenzó a causar problemas, así que ahora también puede bootstrap gcc. Además hay algunos paquetes binarios por ahí, pero usted no puede encontrar la más reciente versión de su sistema cada vez. Vino de Darwin, la Manzana de código abierto BSD basado en el OS X del kernel que dejó de distribución. Se instala los paquetes a /opt/local que probablemente no serán tocados por otros paquetes de instalación o actualizaciones del sistema.
  • Fink, re: los pinzones de ser el sujeto de Charles Darwin estudio, es un paquete de sistema basado en Debian Package Manager, lo que significa que las características de uso de dpkg y apt-get el principal beneficio de ser que los que usted puede encontrar de forma segura los paquetes binarios.. suponiendo que tiene una aguas arriba de un repositorio de paquetes que contiene los archivos binarios para su actual versión del sistema operativo. También salió de Darwin base de usuarios, pero probablemente más populares con los que vinieron de Debian Linux [para mac, o PPC] buscando un poco más estable en el soporte de hardware... mientras duró. Se instala los paquetes en /sw por razones de no sobrescribir o sobreescritos lo que otros instaladores pueden instalar. También algo sobre el compilador de rutas de búsqueda y el defecto PATH que contengan /usr/local/bin ya.
  • Homebrew es un tipo de sistema de puertos en concepto, pero escrito en ruby. No proviene de un sistema operativo independiente del mundo y fue diseñado para usuarios de Mac OS X (los otros son bien utilizado y probado por el mismo). A partir de mediados de 2014 se trata de construir, básicamente, cada paquete (ellos les llaman fórmula), aunque pocos están disponibles en formato binario llamado botellas, y usted puede hacer un depósito de botellas para compartir en su grupo social si usted está inclinado en semi-estandarización de usted y de su amigo toolchains (ídem para otros sistemas). En el lado positivo, se construye utilizando como muchas de las bibliotecas como usted probablemente ya tiene que vino de Manzana. Creo que no necesita de Xcode para que funcione en la mayoría de los casos, pero que "apoya y recomienda". Usted puede instalar cada elemento en su propio prefijo, pero el valor predeterminado es relativamente integrados /usr/local creo que se puso en marcha y es más reciente que la de los demás. He encontrado personalmente he utilizado este uno más porque yo rara vez necesitan interdependiente de los paquetes, y estoy claro en lo bien que mac homebrew admite. Homebrew tiene el objetivo de obligar a un uso más adecuado de los gestores de paquetes de software que se origina a partir de un acoplado, el administrador, como cpan, joyas y similares.
  • pkgsrc estaría disponible para Mac OS X, tiene paquetes binarios, y viene de NetBSD, que la mantiene y, a su vez basado en FreeBSD del sistema portuario. NetBSD estaba tan concentrado en la portabilidad a través de arquitecturas de que era probablemente el mejor candidato para el sistema portuario para iniciar la compatibilidad con otras plataformas, la que tiene. Es similar en mi descripción a Macport, pero no lo he usado (excepto en NetBSD), y creo que se instala en / pero construye y mantiene los paquetes en /pkg. Probablemente hay un montón de paquetes (como 12k) y el 20% no puede construir, o, la más reciente versión de la fuente no puede parche con la última mantenido parche. Es por eso que los paquetes binarios son de mi preferencia con estos tipos de sistemas.

También he utilizado perlbrew que es un tipo de homebrew para perl, las aplicaciones creadas en perl y algunas dependencias. Es sobre todo una buena manera de mantener varias versiones de perl, y muy bien niega la necesidad de otros más generales paquete de sistemas (para su propósito). Pero, por supuesto, que también ha cpan y cpanminus.

Usted puede encontrar gestores similares para su propio mini-medio ambiente (como vundle para vim, o gema de ruby, el mecanismo nacional de prevención de node.js, pypm o pip para python, go construido-en go install ... etc?)

5voto

user13192 Puntos 130

Fink y MacPorts son competidores directos en que se instale un sistema ortogonal. Fink perdido considerable terreno para MacPorts hace varios años. No estoy completamente seguro de por qué ahora, pero MacPorts manejado casi todo lo mejor.

Hemos razón menos para ortogonal ahora la instalación de Mac OS X ha crecido menos loco pantalones. Brew fue otoh creado para una mejor integración con Mac OS X, lo que es más ligero y menos ortogonal, y también porque Rubyist reescribir todo.

En la práctica, MacPorts es un poco más complicado, pero MacPorts casi siempre funciona, mientras que la Cerveza es más sencillo, es más probable que se ejecute en una pared de ladrillo.

Pregúntate a ti mismo estas preguntas :

  • ¿El uso de Linux muchos ecosistema de herramientas?
  • ¿Necesita varias versiones?
  • ¿Experimentar con nuevas herramientas mucho?
  • ¿El uso de matemáticas/ciencias/herramientas de bibliotecas u otras herramientas insólitas?

Cualquier respuestas sí sugieren que usted debe elegir MacPorts. Cerveza es menos sobrecarga si instala relativamente pocos y comunes de los paquetes, pero la Cerveza no manejar complejidades. Brew contamina /usr/local que es posible que desee para las instalaciones manuales. En realidad, hay argumentos más detallados para MacPorts pero de nuevo, que probablemente no se aplica si usted respondió que no.

Por el contrario, si usted respondió que sí, pero su principal máquina Linux, y su Mac es sólo un juguete de ejecución mínimo de Linux de software, entonces usted podría hacer mejor con Cerveza.

2voto

Pliny the ill Puntos 455

Pero como una nota de lado, nada de Apple OS X en relación con la instalan en /usr/local/bin. Que usar /usr/lib , /usr/bin detrás de las escenas y marcos se empaqueta en /Library/Frameworks mientras que las cosas de instalar usted mismo a través de los regulares de Unix ./configure, make, make install usar /usr/local/bin, etc, y los servicios como la MacPorts utilizará /opt/ y posiblemente paquete de marcos a su personal en ~/Library/Frameworks/.

Mi recomendación es quedarse con MacPorts si eso es lo que estamos acostumbrados. Básicamente, la diferencia principal es que MacPorts utiliza un sistema que más se asemeja a la verdadera Unix/BSD árbol de ports de la aplicación con los ports de FreeBSD, mientras Fink utiliza aplicaciones portadas de los archivos de Debian Linux, y utiliza el mismo gestor de paquetes del sistema como Linux Debian.

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by: