La colección de portes y paquetes NO recibe la misma auditoría de seguridad que sigue OpenBSD. Aunque nos esforzamos en mantener la gran calidad de la colección de paquetes, no disponemos de los suficientes recursos humanos como para poder asegurar el mismo nivel de estabilidad y fiabilidad.
La colección de portes, que al principio se tomó de la colección de FreeBSD, rellena este vacío. El concepto es el de disponer, para cada software proveniente de terceras partes, un fichero Makefile que controle
Los paquetes son los equivalentes binarios de los portes. Un porte compilado se convierte en un paquete que se puede registrar en el sistema usando pkg_add(1).
Los paquetes parecen simples archivos .tgz, pero se
deben añadir siempre usando
pkg_add(1),
ya que puede haber información adicional que sólo
pkg_add(1)
sabe cómo gestionar.
Una pista: puede distinguir entre los paquetes y los archivos .tgz
usando pkg_info(1).
Añadir un paquete es tan sencillo como hacer
pkg_add pkgname.tgz. Si va a obtener los paquetes de una
única fuente (un repositorio de paquetes), configure PKG_PATH
para que señale la URL de ese repositorio para obtener las
dependencias.
Por ejemplo, para instalar el paquete gimp para la versión 2.8 en una máquina i386 desde el sitio de ftp (incluyendo las dependencias), haga lo siguiente:
# setenv PKG_PATH ftp://ftp.openbsd.org/pub/OpenBSD/2.8/packages/i386/
# pkg_add ${PKG_PATH}gimp-1.1.27.tgz
Con la versión 2.7 se introdujo la rama -stable al árbol de portes.
Por ejemplo, para bajarse la rama -stable para la versión 2.8 haríamos lo siguiente:
$ cd /usr/ports
$ cvs -q -d anoncvs@some.anon.server:/cvs up -r OPENBSD_2_8 -Pd
A partir de la versión 2.8, también se encuentran disponible una selección de paquetes binarios. Gracias a Christian Weisgerber por encargarse de la dura tarea de coordinar los camios en la rama stable. Por favor, la la página de los paquetes estables para saber qué paquetes son importantes y cuáles han sido actualizados en la rama stable.
A fin de evitar cualquier riesgo de confusión entre un paquete de la versión oficial y un mismo paquete con algún error solucionado, los nombres de los paquetes siempre cambian cuando el paquete ha sido actualizado.
A partir de OpenBSD 2.8, para actualizar un paquete debe:
Puede bajarse por ftp la versión oficial correspondiente desde el directorio pub/OpenBSD/[versión] (en donde [versión] es el número de la versión) de cualquiera de las réplicas de ftp. Las versiones oficiales ("releases") son las que vienen en el CDROM, y han pasado más pruebas que cualquier versión de prueba ("snapshots"). Puede encontrar más información al respecto en la página de manual de ports(7).
El árbol de portes, como el resto del árbol de OpenBSD, está cambiando constantemente. El ciclo de vida normal del árbol de portes es de este modo:
El cambio de estado se publicará en las listas de correo.
El árbol actual de los portes no puede ser usado con la versión anterior una vez que el cambio para el seguimiento de OpenBSD-current tenga lugar. Esto se debe a cambios, sobre todo en el proceso de compilación de los portes, que requieren de código basado en el árbol de fuentes de OpenBSD-current.
El árbol de portes funciona como una entidad única.
Actualizar un solo directorio no garantiza que vaya a funcionar, ya que
las dependencias de un paquete puede forzarle a actualizar y recompilar
una amplia parte del árbol de portes. Se recomienda que los
usuarios no sigan los portes de current a menos que estén
preparados para los consiguientes problemas. Por ejemplo, algunas
versiones del paquete de portes podría haber dejado de estar
disponible. Por tanto, tendría que obtener y usar una
versión más nueva del árbol de portes.
Nótese que el árbol de ports-current se comprueba con el
de OpenBSD-current, y NO está garantizado que
funcione con la versión estable anterior. Se recomienda
encarecidamente a los usuarios que no hagan seguimientos de
ports-current a menos que estén dispuestos a hacer un
seguimiento completo de OpenBSD-current, incluidos los fuentes. Las
listas de correo como la de
source-changes@openbsd.org o tech@openbsd.org
serán probablemente de gran ayuda.
El árbol ports-current se puede obtener por medio de:
Hay algo de magia en los ficheros de configuración de XFree para OpenBSD que permite que el árbol de portes instale en /usr/local aplicaciones basadas en imake.
En la actualidad OpenBSD no incluye XFree 4.0.x para varios motivos.
La magia de estos portes no funciona con la distribución XFree
4.0.x (todavía). Para que XFree 4.0.x funcione con el
árbol de portes de OpenBSD, debe aplicar el parche
/usr/ports/infrastructure/patches/patch-xfree-4.0 a la
distribución binaria de XFree 4.0.x.
Las futuras versiones de XFree 4.0.x probablemente incluirán la magia necesaria.
Suponiendo que hubiera conseguido obtener un árbol de portes y que quisiera compilar e instalar la herramienta de descompresión de archivos unzip, podría hacer algo parecido a esto:
% cd /usr/ports/archivers/unzip
% su
# make
# make install
# exit
Fácil, ¿no es cierto? Especialmente si consideramos todo
lo que ha ocurrido en un plano de fondo:
Con OpenBSD 2.8, casi todos los portes compilarán paquetes de forma automática cuando se instalen.
Según se van compilando portes, el directorio /usr/ports/distfiles se va llenando con fuentes de programas, y /usr/ports/packages se va llenando con paquetes de binarios. Los usuarios con mala conexión pueden ver en la página de manual de mirror-distfiles(7) una buena referencia sobre un modo eficiente de bajarse todos los distfiles de una vez. En OpenBSD-current, puede usar el guión /usr/ports/infrastructure/fetch/clean-old para llevar un seguimiento de los viejos programas en distfiles. Note que el CD de OpenBSD sólo incluye el árbol de fuentes y los paquetes seleccionados. Si quiere tener los fuentes de los programas en distfiles, tendrá que obtenerlos por un medio distinto.
Si está interesado en ayudar a expandir el árbol de portes de OpenBSD, antes que nada debería leer porting.html. Esa página hace referencia a la sección de portes del FreeBSD handbook así como a la política de OpenBSD al respecto y algunas pistas que le servirán de ayuda.
Si tiene algún problema con los portes, o si necesita información sobre cómo crear nuevos portes, por favor envíe un mensaje a la lista de correo sobre portes de OpenBSD ports@openbsd.org. Las correcciones siempre se agradecen pero en cualquier caso, por favor incluya:
uname -a,