Si quieres investigar más las posibilidades que nos aporta la cara UNIX del Mac OS, pasa y lee.
Es conocido cómo obtener e instalar software libre para OS X y X11 desde uno de los mayores depósitos de este tipo de aplicaciones: fink. Ésta no es la única fuente de software de código abierto para mac y hoy intentaremos mostrar otra: DarwinPorts. Seguimos esperando que el tercer gran proyecto Portage de Gentoo sea accesible al público en general, pues actualmente se halla en fase de desarrollo.
DarwinPorts es un proyecto que tiene como objetivo proporcionar una vía sencilla para instalar productos software de código abierto en Darwin, Mac OS X, FreeBSD o Linux.
Traduciendo libremente de la página principal de su web, encontramos que los promotores de este proyecto afirman que hay algunos cientos de ports completos y utilizables y que se siguen añadiendo nuevos.
Una lista completa de estos puede consultarse en la página titulada Available ports, o sea «Puertos» disponibles». En esta página se pueden consultar los puertos por categorías o acceder a una lista completa por orden alfabético. El día 7 de diciembre se disponía de 664 paquetes en 34 categorías (v. cuadro 1).
Lo primero a tener en cuenta es que aunque fink y DarwinPorts] son proyectos concurrentes y poseen un mecanismo para trabajar en común llamado Metapkg (los desarrolladores, no los sistemas) intentando evitar incompatibilidades, éstas existen y pueden llegar a ser bastante poderosas. Es conveniente entonces escoger únicamente uno de los sistemas, a no ser que uno sea un usuario muy avezado en este tipo de herramientas.
INSTALACIÓN DE DARWINPORTS
Una vez hechas estas consideraciones, empezamos el proceso de instalación. Repasamos los requerimientos: Mac OS X (Jaguar o Panther) con las herramientas de desarrollo (Developer Tools o Xcode, respectivamente) instaladas.
DarwinPorts se basa en CVS o sea, Concurrent Versions System, la herramienta predominante en el mundo del software de código abierto para el desarrollo y distribución de software. Fink también la usa, aunque de un modo bastante más transparente para el usuario.
La primera acción es comprobar si el repositorio CVS de DarwinPorts funciona. Para ello, tecleamos los siguientes comando en una ventana del terminal:
cvs -d :pserver:anonymous@anoncvs.opendarwin.org:/Volumes/src/cvs/od co -P darwinports
Respondiendo con la tecla <<ENTER>> cuando el servidor nos pida contraseña.
Estos comandos instalan una carpeta llamada darwinports en la carpeta de inicio de nuestro usuario.
En el caso de que estos comandos no funcionaran, se dispone de un paquete comprimido descargable en la siguiente dirección: http://darwinports.opendarwin.org/darwinports-nightly-cvs-snapshot.tar.gz, el cual, una vez descomprimido nos proporciona la susodicha carpeta. Este paquete se actualiza cada seis horas, así que proporciona prácticamente la misma carpeta que el método CVS.
A continuación, nos situamos en el directorio ~/darwinports/base y ejecutamos los siguientes comandos, siempre desde el terminal:
make
sudo make install
Estos comandos compilan e instalan el software necesario para que nuestro sistema DarwinPorts funcione. Ahora es necesario configurarlo
CONFIGURACIÓN DE DARWINPORTS
Para que DarwinPorts pueda encontrar los paquetes, es necesario editar el fichero /etc/ports/sources.conf, por ejemplo invocando el fichero pico con el siguiente comando
El resultado debe ser similar al de la Figura 1. Es decir, hay que añadir una línea que contenga lo siguiente: file:///Users/minombredeusuario/darwinports/dports obviamente sustituyendo minombredeusuario por el nombre corto de usuario en Mac OS X.
Clic para ampliar
Figura 1: Configurando /etc/ports/source.conf usando pico
Los ficheros ejecutables de DarwinPorts se situan en el directorio /opt/local/bin y para poder invocarlos necesitamos que esa información se encuentre en la variable de entorno PATH. La forma de hacer esto dependerá de la shell que estemos usando. En la que viene por defecto en Jaguar se puede usar el fichero .cshrc añadiéndole la línea
En Panther, el fichero a modificar será .profile, el cual deberá contener una línea:
Ahora tenemos una distribución de DarwinPorts en funcionamiento. El comando más importante es el comando port, que es el que se usa para instalar, actualizar y desinstalar paquetes.
USO DE DARWINPORTS
El uso del comando port es muy simple. Por ejemplo, para instalar XChat, el conocido cliente de IRC, simplemente tecleamos
y DarwinPorts descarga, compila e instala XChat, sin necesidad de ninguna acción más por nuestra parte. Es posible que en algunas ocasiones debamos ejecutar el comando como administrador, es decir:
Otras opciones del comando port son search, fetch, configure, build, destroot, clean, variant, deps y contents:
busca los paquetes que contienen xchat. search usa expresiones regulares, así que es un potente motor de búsqueda.
descarga del repositorio el paquete xchat y no hace nada más. Este subcomando y los siguientes se usan cuando estamos probando un paquete. Del mismo modo, los comandos.
port build xchat
port destroot xchat
respectivamente, configura un paquete (en nuestro ejemplo, siempre xchat) para su compilación, lo compilan o finaliza su instalación.
Para desinstalar un paquete se usa
mientras que
elimina los ficheros intermedios creados durante la instalación. El contenido de un paquete, las posibles variantes del mismo y las dependencias se pueden obtener también mediante distintos comandos port:
port variants xchat
port deps xchat
Una vez instalada una aplicación, esta se arrancará desde un terminal de X11. Por supuesto, será necesario arrancar antes un servidor XWindow, por ejemplo el X11 de Apple o XDarwin. En un terminal del servidor de ventanas, escribiremos <>, por ejemplo:
Este mecanismo es incómodo, pero podemos configurar el servidor X11 de Apple para arrancar las aplicaciones desde los menús desplegables. Para ello, escogemos en el menu Applications la opción Customize. Obtenemos una ventana donde podemos configurar este menú, añadiendo, modificando o eliminando items. En la columna de la izquierda se colocan los nombres que queremos que aparezcan en el menú desplegable y en la columna de la derecha el comando que se ejecutará, el cual puede o no corresponder a un paquete de DarwinPorts.
ACTUALIZACION DE DARWINPORTS
DarwinPorts guarda en nuestro directorio ~/darwinports una guía del árbol de paquetes. De vez en cuando es necesario actualizar esta guía mediante los comandos
portindex
cvs -z3 -d :pserver:anonymous@anoncvs.opendarwin.org:/Volumes/src/cvs/od update -dP
con el objetivo de poder descargar e instalar los paquetes nuevos y las actualizaciones de los antiguos.
Para actualizar un paquete no existe una orden directa, así que debemos hacer
sudo port install xchat
También podemos actualizar la base de DarwinPorts mediante las órdenes:
cvs -d :pserver:anonymous@anoncvs.opendarwin.org:/Volumes/src/cvs/od -z3 update -dP
cd ~/darwinports/base
./configure
make clean && make
sudo make install
Espero que os sirva esta pequeña guía de introducción a Darwinports.
ANEXO: PAQUETES DISPONIBLES EN DARWINPORTS POR CATEGORÍAS:
amusements : | (Diversiones) 4 paquetes. |
aqua : | 8 paquetes, entre ellos una paquete gráfico de gestión de DarwinPorts sobre cocoa (para Mac OS X) en fase beta: PortsManager. Este paquete iba incluido en las betas de Panther, pero al final se desechó. |
archivers : | 14 paquetes de gestión de ficheros. |
audio : | 30 paquetes, desde librerías a sintetizadores en tiempo real. |
comms : | (comunicaciones) 7 paquetes: ssh, modem, sincronización de Palm, kermit… |
databases : | (bases de datos) 15 paquetes, principalmente relacionados con SQL, pero también con DB (Berkeley), OBDC o LDAP. |
devel : | 113 paquetes para desarrolladores de software: analizadores, compiladores, librerías… |
editors : | 16 editores de texto de uso general (abiword) o específicos (TeXShop para TeX o bluefish para html). También variantes de vi y de emacs, las potentes herramientas Unix. |
emulators : | 4 paquetes, incluyendo Bochs, que simula un procesador Intel. |
games : | 19 juegos. |
genealogy : | 1 aplicación para manejar genealogías. |
gnome : | 47 paquetes relacionados con el popular entorno de escritorio de Unix gnome. |
graphics : | 39 paquetes para gráficos, desde gimp (el «Photoshop» del software libre) hasta ImageMagick, una aplicación para convertir formatos gráficos y efectuar manipulaciones, tipo «Graphic Converter». |
irc : | 13 servidores, clientes y herramientas para IRC. |
java : | 1 analizador de Java. |
lang : | 37 herramientas y lenguajes de programación: lisp, prolog, C++, scheme, erlang, modula… |
mail : | 24 aplicaciones, principalmente clientes y servidores de correo, pero también filtros de spam y otros. |
math : | 8 paquetes, incluyendo octave, paquete manipulación simbólica similar a MatLab o a Mathematica. |
misc : | Darwinports, el paquete que mantiene la infraestructura de este sistema. |
multimedia : | 2 paquetes. |
net : | (redes) 108 paquetes: airport, modem, cvs, curl, prxys, sniffers, ethernet… |
news : | 4 paquetes para gestionar el protocolo NNTP. |
parallel : | 2 paquetes de computación paralela. |
print : | 9 paquetes de gestión de impresores, postscript, PDF… |
python : | 45 paquetes relacionados con este lenguaje. |
science : | (Ciencia) 12 aplicaciones y librerías para uso científico. |
security : | (Seguridad) 32 herramientas. |
shells : | 6 entornos de terminal. |
spelling : | 2 correctores ortográficos. |
sysutils : | 47 utilidades del sistema, incluyendo por ejemplo un grabador de CDs. |
textproc : | Proceso de textos. Esta categoría incluye 62 paquetes, entre sistemas completos (TeX, docbook), procesadores propiamente dichos (abiword), lectores de documentos .doc (antiword) y herramientas complementarias. |
www : | 32 aplicaciones. servidores, clientes, editores, analizadores, pasarelas… |
x11 : | 54 paquetes, desde el popular entorno de Unix KDE hasta librerías, temas de escritorio, etc. |
x11-wm : | 7 paquetes, principalmente gestores de ventanas sobre X11: fluxbox, blackbox, metacity, fvwm… |
zope : | 8 paquetes para zope… y no me pregunten qué es zope, porque me veré obligado a responder que zope es una aplicación de código libre construida en python que se usa para contruir gestores de contenido, portales, intranets y similares. |
Un artículo de Zifra.
Eso hay que probarlo pero que ya 😀
Saludos!
Zifra muy bueno tu artículo, me ha ayudado mucho, sin embargo, cómo puedo desinstalar completamente todos los archivos (inclusive ports) de darwinport. Basta con borrar la carpeta darwinport y /opt ?
Gracias por tu ayuda,
Rafael, perdona por no responderte antes.
Sí, con esoò˜ouinstalas Darwinports