¿Qué es Macports?

Entonces, he leído la documentación en Macports. Como se describe:

MacPorts es un sistema fácil de usar para compilar, instalar y administrar software de código abierto. Los MacPorts pueden dividirse conceptualmente en dos partes principales: la infraestructura, conocida como MacPorts base, y el conjunto de puertos disponibles. Un puerto MacPorts es un conjunto de especificaciones contenidas en un Portfile que define una aplicación, sus características y cualquier archivo o instrucción especial requerida para instalarla. Esto le permite usar un solo comando para decirle a MacPorts que descargue, compile e instale automáticamente aplicaciones y bibliotecas. Pero el uso de MacPorts para administrar su software de código abierto ofrece otras ventajas significativas.

La mayor parte de esto pasa por encima de mi cabeza. Supongo que no estoy lo suficientemente familiarizado con la informática para entender su propósito. ¿Alguien puede proporcionarme una explicación simple (para un usuario promedio, en lugar de un "superusuario") de las siguientes preguntas:

  • ¿Para qué sirve Macports? ¿Puedes darme un ejemplo concreto?
  • ¿Cómo se relaciona con "X11"?

Si la respuesta es simplemente, "necesitas entender estos términos para entender qué es Macport", entonces está bien. Gracias.

Respuestas (1)

Macports es una herramienta para instalar aplicaciones y herramientas de línea de comandos en su Mac, con una enorme biblioteca de "puertos" (el término de Macports para algo que se puede instalar). Lo usas en Terminal.app así:

$ sudo port install nmap

Para desglosar este comando:

  1. El $al principio generalmente significa que debe ingresar el resto de la línea en la Terminal. En la documentación oficial, es un %%, pero ambos significan lo mismo; no pegue ni escriba esa parte, solo el comando después de ella. Verá la $derecha antes de su cursor en la Terminal.
  2. sudosignifica que hará esto como el "usuario raíz", que puede hacer (casi) cualquier cosa con su sistema. Ten mucho cuidado cuando lo uses. Solo funciona si eres administrador y tienes que ingresar tu contraseña.
  3. portes el nombre del comando de Macports en sí.
  4. installes un argumento (también conocido como opción de línea de comandos) para el portcomando. Es posible que vea que se hace referencia a esto como un "subcomando", que se debe a que está diciendo portqué hacer en general, en lugar de dar algo específico como el nombre de lo que desea instalar. Los argumentos están separados por espacios.
  5. nmapes el nombre del programa a instalar. Es otra herramienta de línea de comandos, y la usa para cosas como el escaneo de puertos.

Entonces, ese comando usa portla herramienta. Es posible que esté instalando cosas que tienen ventanas reales y una GUI con más frecuencia, y ahí es donde entra en juego X11.installnmap

X11

El sistema X Window es un sistema que se utiliza para mostrar ventanas, controles y elementos de la interfaz de usuario en general. El proyecto XQuartz es una implementación del sistema X Window en Mac OS X. Es una aplicación que muestra todas las ventanas de las aplicaciones que usan X11. Por lo general, X11 es la forma más fácil de hacer algo que se puede usar tanto en OS X como en Linux sin código adicional, por lo que verá muchos "puertos" de Macports usándolo.


A veces es difícil mantener los "binarios" finales sincronizados con la fuente, por lo que algunas cosas deben compilarse (convertirse de fuente a archivo/aplicación ejecutable) en su computadora.

Es realmente complicado bajo el capó, pero el objetivo es que la gente pueda hacer todo esto automáticamente (con un poco de conocimiento de Terminal y Unix) sin tener que preocuparse por eso. La parte de "portfile" de lo que citó es solo la entrada en la base de datos de Macports que explica todo lo que Macports necesita hacer para instalar algo. Lo que significa que podría ser un script que podría ejecutar en Terminal, o algún otro programa, pero el punto es hacerlo para que no tenga que hacer nada del trabajo duro.

Actualmente, Homebrew es una alternativa más popular a Macports, pero no tiene tantas aplicaciones con ventanas (X11). Este tipo de cosas generalmente se denominan administradores de paquetes.

Esta es una respuesta perfecta. Literalmente exactamente lo que estaba buscando. ¡Gracias!
MacPorts no solo instala software, crea software a partir del código fuente, realiza un seguimiento de las dependencias necesarias para crear el código, actualiza todo el software con el que trabaja, incluido él mismo, y se administra a sí mismo y a todo el software que crea. También puede instalar binarios precompilados si se lo indica. MacPorts es nada menos que las rodillas de las abejas y todo lo que los administradores de pseudopaquetes como Mac y iOS App Store deberían haber sido y, lamentablemente, no lo son. Homebrew tiene objetivos similares a MacPorts, pero no está ni cerca de lograrlos. MacPorts es maduro, estable, completo y simplemente funciona.
Esta es una respuesta genial.