Creador de «Service packs»

Esta herramienta se puede abrir usando
.Un «Service pack» es un archivo tar que contiene un conjunto de paquetes y sus dependencias. Para explicar mejor qué es un «Service pack», lo mejor es mostrar algunos casos de uso.
Puede añadir varios paquetes a un «Service pack» separando los nombres de los paquetes por comas. Por ejemplo, hal,gnome-power-manager.
- Tiene siete escritorios que acaba de instalar con Fedora 9. Cada uno de ellos necesita instalar 204Mb en actualizaciones.
- Tiene un portátil que necesita controladores de red antes de poder descargar actualizaciones, y tiene cerca un portátil similar actualizado con acceso a Internet. El controlador de red necesita algunas dependencias, y que se actualicen otros paquetes antes de poder instalarlas.
- Frecuentemente instala Linux en el equipo de otras personas. Lleva al menos una live-cd y un soporte USB con un único archivo de 204 Mb Fedora-updates-SP1.servicepack que contiene todas las actualizaciones desde la última semana.
- Una revista de software libre quiere distribuir un complemento multimedia cargado de patentes y programas con la última versión en DVD de Fedora. Quieren una forma en la que hasta el usuario más vago puede tener las cosas instaladas sin armar mucho escándalo.
Internamente el archivo del paquete es sólo un archivo tar descomprimido, con los paquetes y un archivo metadata.conf en su interior. El archivo de metadatos es sólo el identificador de la distribución y la hora de la creación. Esto le asegura que no intenta instalar un «Service pack» de fedora-9-i386 en una máquina ubuntu-intrepid-ppc.
Se necesita un archivo de destino porque no se conoce qué paquetes están instalados en el equipo de destino. Por ejemplo:

El equipo A tiene instalados los siguientes paquetes, y tiene acceso a Internet.
- glib
- dbus
- dbus-glib
- libgnome
El equipo B tiene instalados los siguientes paquetes, y no tiene acceso a Internet.
- glib
- dbus
- kdebase
- kdeapps
El equipo B quiere tener un «Service pack» que contenga una versión más nueva de k3b para poder grabar DVD-RW.
El programa k3b depende de dbus, dbus-glib y kdebase. Ahora, si se pide al equipo A que descargue k3b, descargará k3b y kdebase pero no dbus-glib. Antes de crear el service pack se debe proporcionar al equipo A información sobre los paquetes que el equipo B tiene instalados.
Si se genera una lista de paquetes en el equipo B y se copia al equipo A en un soporte USB o en un CDRW, se pueden descargar los paquetes correctos. En este caso se podrá descargar k3b y dbus-glib y empaquetarlos en el nuevo «Service pack».
El «Service pack» no se puede llevar del equipo A al equipo B en un soporte USB.
La herramienta de línea de comandos pkgenpack se puede usar también para crear archivos de un «Service pack».