ZYpp (o libzypp ; "Zen / YaST Packages Patches Patterns Products" [6] ) es un motor de gestión de paquetes que potencia aplicaciones Linux como YaST , Zypper y la implementación de PackageKit para openSUSE y SUSE Linux Enterprise . [7] A diferencia de algunos gestores de paquetes más básicos, proporciona un solucionador de satisfacibilidad para calcular las dependencias de los paquetes. [8] Es un proyecto de software libre y de código abierto patrocinado por SUSE y licenciado bajo los términos de la Licencia Pública General GNU v2 o posterior. ZYpp se implementa principalmente en el lenguaje de programación C++ .
Zypper es la interfaz de línea de comandos nativa del gestor de paquetes ZYpp para instalar, eliminar, actualizar y consultar paquetes de software de medios locales o remotos (en red). Su equivalente gráfico es el módulo gestor de paquetes YaST . Se ha utilizado en openSUSE desde la versión 10.2 beta1. En openSUSE 11.1, Zypper alcanzó la versión 1.0. El 2 de junio de 2009, Ark Linux anunció que había completado su revisión de los solucionadores de dependencias y había elegido a ZYpp y sus herramientas para reemplazar al envejecido APT-RPM , [9] como la primera distribución en hacerlo. Zypper también forma parte de las distribuciones móviles de Linux MeeGo , Sailfish OS y Tizen .
Tras las adquisiciones consecutivas de Ximian y SuSE GmbH en 2003, Novell decidió fusionar ambos sistemas de gestión de paquetes, el gestor de paquetes YaST y Red Carpet , con el objetivo de aprovechar al máximo cada una de las soluciones, ya que hasta entonces se utilizaban en Novell. En 2005, tras analizar las herramientas de código abierto existentes y su grado de madurez, ninguna cumplía los requisitos y era capaz de funcionar sin problemas con el software de infraestructura de gestión de Linux existente desarrollado por Ximian y SUSE, por lo que se decidió obtener las mejores ideas de las piezas existentes y trabajar en una nueva implementación. Se planeó que Libzypp, la biblioteca resultante, fuera el motor de gestión de software de las distribuciones de SUSE y el componente de gestión de Linux de la suite de gestión Novell ZENworks .
El solucionador de Libzypp era un port del solucionador Red Carpet, que fue escrito para actualizar paquetes en sistemas instalados. Usarlo para el proceso de instalación completo lo llevó a sus límites, y agregar extensiones como soporte para dependencias débiles y parches lo hizo frágil e impredecible. [10] Aunque esta primera versión del solucionador de ZYpp funcionó satisfactoriamente en los productos empresariales de la compañía con el demonio ZMD acoplado, condujo a una versión openSUSE 10.1 que salió en mayo de 2006 con un paquete de sistema que no funcionaba como se esperaba. En diciembre de 2006, la versión openSUSE 10.2 corrigió algunos defectos de la versión anterior, utilizando el ZYpp v2 revisado. ZMD se eliminó posteriormente de la versión 10.3 y se reservó solo para los productos empresariales de la compañía. Si bien ZYpp v3 proporcionó a openSUSE un administrador de paquetes relativamente bueno, equivalente a otros administradores de paquetes existentes, sufrió algunas fallas en su implementación que limitaron en gran medida su rendimiento de velocidad.
Un área en la que libzypp necesitaba mejoras era la velocidad del solucionador de dependencias. libsolv se está escribiendo y publicando bajo la licencia BSD revisada . [11]
Proyectos como Optimal Package Install/Uninstall Manager (OPIUM) [12] [13] y MANCOOSI [14] intentaban solucionar problemas de resolución de dependencias con un solucionador SAT . Los solucionadores tradicionales como Advanced Packaging Tool (APT) a veces muestran deficiencias inaceptables. Se decidió integrar algoritmos SAT en la pila ZYpp; los algoritmos de resolución utilizados se basaron en el popular solucionador minisat. [15]
La implementación del solucionador SAT tal como aparece en openSUSE 11.0 se basa en dos bloques principales, pero independientes:
Después de varios meses de trabajo, los resultados de referencia de esta cuarta versión de ZYpp integrada con el solucionador SAT son más que alentadores, colocando a YaST y Zypper por delante de otros administradores de paquetes basados en RPM en velocidad y tamaño. [16] [17]
{{citation}}
: CS1 maint: nombres numéricos: lista de autores ( enlace )