La colección FreeBSD Ports es un sistema de administración de paquetes para el sistema operativo FreeBSD , que proporciona una forma fácil y consistente de instalar paquetes de software. A febrero de 2020, hay más de 38,487 puertos [1] disponibles en la colección. También ha sido adoptado por NetBSD como base de su sistema pkgsrc .
Instalando desde la fuente
La colección de puertos utiliza archivos MAKE organizados en una jerarquía de directorios para que el software se pueda construir , instalar y desinstalar con el comando make . Al instalar una aplicación, se requiere muy poca (si alguna) intervención del usuario después de emitir un comando inicial como make install o make install clean en el directorio de puertos de la aplicación deseada . En la mayoría de los casos, el software se descarga automáticamente de Internet , se parchea y configura si es necesario, luego se compila , instala y registra en la base de datos del paquete. Si el nuevo puerto necesita dependencias de otras aplicaciones o bibliotecas, estas se instalan de antemano de forma automática.
La mayoría de los puertos ya están configurados con opciones predeterminadas que, en general, se han considerado apropiadas para la mayoría de los usuarios. Sin embargo, estas opciones de configuración (llamadas perillas ) a veces se pueden cambiar antes de la instalación usando el comando make config , que abre una interfaz basada en texto que permite al usuario seleccionar las opciones deseadas.
Históricamente, cada puerto (o paquete de software) ha sido mantenido por un mantenedor de puerto individual que es responsable de asegurar la moneda del puerto y brindar soporte general. Hoy en día, muchos puertos son mantenidos por grupos de trabajo especiales o subproyectos, cada uno con una lista de correo dedicada (por ejemplo, [email protected], [email protected], etc.), mientras que los puertos no mantenidos se asignan al grupo genérico ports @ FreeBSD.org. En general, cualquiera puede convertirse en mantenedor de puertos contribuyendo con su software favorito a la colección. También se puede optar por mantener un puerto existente sin un mantenedor activo. [2]
Paquetes
Los puertos precompilados (binarios) se denominan paquetes . Se puede crear un paquete desde el puerto correspondiente con el comando make package ; Los paquetes prediseñados también están disponibles para su descarga desde los repositorios de paquetes alojados en FreeBSD. Un usuario puede instalar un paquete pasando el nombre del paquete al comando pkg install . Esto descarga el paquete apropiado para la versión de lanzamiento de FreeBSD instalada , luego instala la aplicación, incluidas las dependencias de software que pueda tener. De forma predeterminada, los paquetes se descargan del repositorio de paquetes principal de FreeBSD (pkg.freebsd.org), pero si hay algún problema después de actualizar los paquetes, la versión anterior de los paquetes no se puede instalar porque el repositorio niega los índices de subcarpetas. En este caso, el usuario debe actualizar la versión del sistema operativo a la última versión e instalar los paquetes más recientes.
FreeBSD mantiene una granja de compilación llamada clúster pointyhat en el que se compilan todos los paquetes para todas las arquitecturas compatibles y las versiones principales . Los registros de compilación y los errores conocidos para todos los puertos integrados en los paquetes a través del clúster pointyhat están disponibles en una base de datos [3] y los registros de compilación semanales también están disponibles a través de archivos de listas de correo. [4]
Estos paquetes precompilados están separados en categorías por las arquitecturas para las que están disponibles. Los paquetes se separan en varios directorios de "versiones", uno para cada versión de producción actual creada a partir de la colección de puertos y enviada con la versión. Estos directorios de versiones de producción nunca se actualizan.
También hay directorios estables y actuales para varias de las principales ramas de la versión. Estos se actualizan más o menos semanalmente. En la mayoría de los casos, un paquete creado para una versión anterior de FreeBSD se puede instalar y usar en un sistema más nuevo sin dificultad, ya que la compatibilidad binaria con versiones anteriores está habilitada de forma predeterminada.
Un sistema de empaquetado para paquetes binarios [5] llamado pkg
ha reemplazado al sistema de administración de paquetes en FreeBSD 10. [6]
Historia
Jordan Hubbard envió su port make macros al repositorio CVS de FreeBSD el 21 de agosto de 1994. [7] Su suite de instalación de paquetes Makefile se había comprometido un año antes (26 de agosto de 1993). [8] En un principio, Hubbard junto con Satoshi Asami mantuvo el marco de los puertos centrales durante varios años. Posteriormente, se formó el Equipo de Gestión de Puertos para manejar esta tarea.
El pkgsrc de NetBSD y la colección de ports de OpenBSD tienen sus raíces en FreeBSD.
DPortos
Desde la versión 3.6, el proyecto DragonFly BSD usa FreeBSD Ports como base para su propia colección de puertos DPorts . John Marino del proyecto DragonFly BSD creó el repositorio DeltaPorts , una colección de parches y archivos que superponen y modifican los puertos FreeBSD para generar DPorts. [9] [10]
Ver también
Referencias
- ^ "Acerca de los puertos FreeBSD" . freebsd.org . Consultado el 8 de diciembre de 2019 .
- ^ "Manual de Porter" . Proyecto FreeBSD.
- ^ "Registros y errores de construcción del paquete FreeBSD (clúster puntual)" . freebsd.org . Consultado el 26 de marzo de 2010 .
- ^ https://lists.freebsd.org/mailman/listinfo/freebsd-pkg-fallout
- ^ https://www.freebsd.org/doc/handbook/pkgng-intro.html
- ^ https://www.freebsd.org/releases/10.0R/relnotes.html
- ^ "Registro CVS para puertos / Mk / bsd.port.mk" . Proyecto FreeBSD. Archivado desde el original el 15 de abril de 2013 . Consultado el 5 de enero de 2020 .CS1 maint: URL no apta ( enlace )
- ^ "Registro de CVS para src / usr.sbin / pkg_install / Makefile" . Proyecto FreeBSD. Archivado desde el original el 14 de abril de 2013 . Consultado el 26 de mayo de 2018 .
- ^ Sherrill, Justin (12 de enero de 2013). "Una educación temprana DPorts" . DragonFly BSD Digest . Consultado el 12 de abril de 2014 .
- ^ Marino, John. "DeltaPorts" . GitHub . Consultado el 12 de abril de 2014 .
enlaces externos
- Página web oficial de FreeBSD Ports
- FreshPorts : sitio web que rastrea las actualizaciones de los puertos
- Port-Tags : proyecto para agregar etiquetas a la colección de puertos
- Instalación de aplicaciones: paquetes y puertos del manual de FreeBSD (Capítulo 4)