La mayor parte de los usuarios noveles que abandonan Linux lo hacen después de pelearse infructuosamente con alguna actualización del sistema, pese a las ventajas que supone poder actualizar solamente algunos de los componentes del programa y no tener que hacerlo con toda la aplicación. La falta de un sistema tipo InstallShield en un entorno (el desktop) donde prima la facilidad de actuación por encima de la flexibilidad, ayuda a negar la entrada en masa de Linux en este mercado.
Cuando instalamos un programa en un sistema Linux estamos sujetos a que previamente estén instalados en el sistema todos los otros programas o librerías que éste necesita. De hecho, todos los sistemas operativos tienen estas dependencias (pongamos por ejemplo las famosas DLL's de Windows), pero en ninguno otro se manifiestan más abiertamente que en Linux. Si instalando un nuevo programa, comprobamos que no disponemos de uno de los paquetes software que este requiere para funcionar, deberemos volver atrás en la instalación y conseguir primero ese programa o librería. El problema viene porque, a su vez, este programa o librería puede tener también dependencia respecto a otros programas o librerías, por lo que el proceso se entorpece, dificulta y enlentece.
Existen herramientas avanzadas cómo APT, que permiten instalar paquetes chequeando previamente las dependencias necesarias y su cumplimiento. APT fue desarrollado para la distribución Debian, y sufre el problema de depender de servidores centralizados para realizar su función. Esto causa que a veces podamos no encontrar el paquete que buscamos o, simplemente, que sus dependencias no estén especificadas, con lo que volvemos al problema anterior. Además, cada distribución acostumbra a implementar su propio repositorio de aplicaciones, por lo que el trabajo con APT desde el lado del proveedor se dificulta, debiendo destinar operarios y recursos al mantenimiento de este repositorio.
Para solucionar este y otros problemas relacionados con el sistema de gestión de paquetes, ha nacido AutoPackage, un proyecto de Mike Hearn que no rompe con el sistema de dependencias de Linux, pero que sí intenta enmascararlo para que el usuario final no deba sufrirlo. Algunas de las características de AutoPackage son:
- Neutral respecto a la distribución. No está relacionado con ninguna en concreto, si no que un paquete creado con AutoPackage puede instalarse en cualquier distribución.
- Flexible. Basado en scripts de instalación, puede ser adaptado específicamente para realizar tareas concretas si el caso o la distribución donde va a ser instalado lo requieren. De esta forma puede también adaptarse a las diferentes distribuciones existentes mediante el uso de bucles case (si la distribución es Debian, haz esto, si es Red Hat, haz lo otro, si es SuSE...)
- Basado en Internet. A diferencia de otros sistemas de paquetes cómo el RPM de Red Hat, nacidos para gestionar el software desde la instalación del sistema, AutoPackage está concebido más para la actualización de los programas descargando los nuevos paquetes desde la Red. Hearn también ha anunciado que más adelante trabajará en una versión para la instalación desde un medio de almacenamiento local cómo un CD.
- Base de datos de dependencias independiente del sistema.
- Front-end independiente. Pueden implementarse diversas interfaces de usuario en un paquete AutoPackage, de forma que se mostrará la más adecuada en cada caso. Así, los programadores pueden adaptar sus creaciones a un entorno determinado cómo KDE o Gnome.
Este proyecto no sólo está en marcha, si no que ha dado ya sus primeros resultados en forma de versión 0.12 que ya es capaz de materializar buena parte de lo prometido.
Mike Hearn es un joven Inglés de 18 años que trabaja para el ministerio de defensa de Gran Bretaña y mantiene el site theoretic.com