Articulo de referencia

Puertos de FreeBSD

La colección FreeBSD Ports es un sistema de gestión de paquetes para el sistema operativo FreeBSD . Los puertos de la colección varían según el software aportado. En febrero de ...

La colección FreeBSD Ports es un sistema de gestión de paquetes para el sistema operativo FreeBSD . Los puertos de la colección varían según el software aportado. En febrero de 2020 había 38.487 puertos disponibles [ 1 ] y en septiembre de 2024, 36.504 [ 2 ]. NetBSD también la ha adoptado como base de su sistema pkgsrc .

Instalación desde el código fuente

La colección de puertos utiliza archivos Makefile organizados en una jerarquía de directorios para que el software pueda compilarse , instalarse y desinstalarse con el comando `make` . Al instalar una aplicación, se requiere muy poca (o ninguna) intervención del usuario después de ejecutar 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, y luego se compila , instala y registra en la base de datos de paquetes. Si el nuevo puerto tiene dependencias necesarias de otras aplicaciones o bibliotecas, estas se instalan automáticamente con antelación.

La mayoría de los puertos ya vienen configurados con opciones predeterminadas que se consideran generalmente adecuadas para la mayoría de los usuarios. Sin embargo, estas opciones de configuración (denominadas parámetros ) a veces se pueden modificar antes de la instalación mediante el comando `make config` , que abre una interfaz de texto que permite al usuario seleccionar las opciones deseadas.

Históricamente, cada puerto (o paquete de software) ha sido mantenido por un mantenedor individual responsable de garantizar su actualización y brindar soporte general. Actualmente, muchos puertos son mantenidos por grupos de trabajo o subproyectos especiales, cada uno con su propia lista de correo (por ejemplo, kde@FreeBSD.org, java@FreeBSD.org, etc.), mientras que los puertos sin mantenimiento se asignan al grupo genérico ports@FreeBSD.org. En general, cualquiera puede convertirse en mantenedor de un puerto contribuyendo con su software favorito a la colección. También se puede optar por mantener un puerto existente sin un mantenedor activo. [ 3 ]

Paquetes

Los puertos precompilados (binarios) se denominan paquetes . Se puede crear un paquete a partir del puerto correspondiente con el comando `make package` ; también hay paquetes precompilados 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 FreeBSD instalada y luego instala la aplicación, incluyendo cualquier dependencia de software que pueda tener. Por defecto, los paquetes se descargan del repositorio principal de paquetes de FreeBSD (pkg.freebsd.org), pero si hay algún problema después de actualizar los paquetes, no se pueden instalar versiones anteriores porque el repositorio deniega 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 la que se compilan todos los paquetes para todas las arquitecturas y versiones principales compatibles. Los registros de compilación y los errores conocidos de todos los puertos compilados en paquetes a través del clúster pointyhat están disponibles en una base de datos [ 4 ] y los registros de compilación semanales también están disponibles a través de los archivos de la lista de correo. [ 5 ]

Estos paquetes precompilados se clasifican en categorías según las arquitecturas para las que están disponibles. A su vez, se dividen en varios directorios de "lanzamiento", uno para cada versión de producción actual compilada a partir de la colección de puertos y distribuida con la versión. Estos directorios de versiones de producción nunca se actualizan.

También existen directorios estables y actualizados para varias ramas de lanzamiento principales. Estos se actualizan aproximadamente cada semana. 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 reciente sin dificultad, ya que la compatibilidad binaria con versiones anteriores entre las principales versiones está habilitada por defecto.

Un sistema de empaquetado para paquetes binarios [ 6 ] llamado pkgha reemplazado al sistema de gestión de paquetes en FreeBSD 10. [ 7 ]

Historia

Jordan Hubbard subió sus macros de compilación de puertos al repositorio CVS de FreeBSD el 21 de agosto de 1994. [ 8 ] Su archivo Makefile para la instalación de paquetes se había subido un año antes (26 de agosto de 1993). [ 9 ] El marco principal de puertos fue mantenido inicialmente por Hubbard junto con Satoshi Asami durante varios años. Posteriormente se formó el Equipo de Gestión de Puertos para encargarse de esta tarea.

El archivo pkgsrc de NetBSD y la colección de puertos de OpenBSD tienen sus orígenes en FreeBSD.

Puertos D

Desde su lanzamiento, el proyecto DragonFly BSD 3.6 utiliza 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 se superponen y modifican FreeBSD Ports para generar DPorts. [ 10 ] [ 11 ]

Véase también

Referencias

  1. "Acerca de los puertos de FreeBSD" . freebsd.org . Consultado el 8 de diciembre de 2019 .
  2. "El proyecto FreeBSD" . El proyecto FreeBSD . Consultado el 30 de octubre de 2024 .
  3. "Manual de Porter" . Proyecto FreeBSD.
  4. "Registros de compilación y errores de paquetes de FreeBSD (clúster pointyhat)" . freebsd.org . Consultado el 26 de marzo de 2010 .{{cite web}}: CS1 maint: servicio de archivado obsoleto ( enlace )
  5. "Listas de correo de FreeBSD: suscripción a freebsd-pkg-fallout" .
  6. "Capítulo 4. Instalación de aplicaciones: paquetes y puertos | Portal de documentación de FreeBSD" .
  7. "Notas de la versión FreeBSD 10.0-RELEASE | El proyecto FreeBSD" .
  8. " [ puertos ] Revisión 5" . Proyecto FreeBSD. Archivado del original el 21 de julio de 2026. Recuperado el 21 de julio de 2026 .
  9. " [ base ] Revisión 327" . Proyecto FreeBSD. Archivado del original el 21 de julio de 2026. Recuperado el 21 de julio de 2026 .
  10. Sherrill, Justin (12 de enero de 2013). "Una educación temprana sobre DPorts" . DragonFly BSD Digest . Archivado del original el 28 de febrero de 2014. Recuperado el 12 de abril de 2014 .
  11. Marino, John. "DeltaPorts" . GitHub . Consultado el 12 de abril de 2014 .
  • Página web oficial de puertos de FreeBSD
  • FreshPorts : sitio web que realiza un seguimiento de las actualizaciones de los puertos.
  • Port-Tags archivado el 10 de enero de 2014 en Wayback Machine - Proyecto para agregar etiquetas a la colección de puertos
  • Instalación de aplicaciones: Paquetes y puertos del manual de FreeBSD (Capítulo 4)