Algunas veces, la gente quiere utlilizar una versión específica de un programa disponible sólo en código fuente, sin un paquete Debian. Para el sistema de empaquetamiento puede ser problemático el hacer esto. Suponga que quiere compilar una nueva versión de un servidor de correo. Todo esta bien, pero varios paquetes de Debian dependen de un MTA (Mail Transport Agent). Desde que instala algo que compila, el sistema de adminstración de paquetes no sabe nada al respecto.
Aquí es donde equivs entra a la escena. Para utilzarlo, instale
el paquete con ese nombre. Lo que hace es crear un paquete vacio que
posibilita el satisfacer las dependencias, haciendo que el sistema de
administración de paquetes crea que las dependencias han sido satisfechas.
Antes de iniciar, es bueno recordarle que hay maneras más seguras de compilar un programa que esta ya empaquetedo para Debian con diferentes opciones, y que no se debería utilizar equivs para reemplazar dependencias si no sabe lo que hace. Consulte Trabajando con los paquetes fuente, Capítulo 6 para mas informacion.
Continuemos con el ejemplo del MTA, usted acaba de instalar su
postfix recién compilado y ahora instalará mutt. De
repente descubre que mutt quiere instalar otro MTA. Pero usted ya
tiene el suyo.
Vaya a algún directorio (/tmp, por ejemplo) y ejecute:
# equivs-control name
Sustituya name por el nombre del archivo de control que quiera crear. El archivo será creado como se muestra:
Section: misc
Priority: optional
Standards-Version: 3.0.1
Package: <enter package name; defaults to equivs-dummy>
Version: <enter version here; defaults to 1.0>
Maintainer: <your name and email address; defaults to username>
Pre-Depends: <packages>
Depends: <packages>
Recommends: <packages>
Suggests: <package>
Provides: <(virtual)package>
Architecture: all
Copyright: <copyright file; defaults to GPL2>
Changelog: <changelog file; defaults to a generic changelog>
Readme: <README.Debian file; defaults to a generic one>
Extra-Files: <additional files for the doc directory, commaseperated>
Description: <short description; defaults to some wise words>
long description and info
.
segundo párrafo
Nosotros sólo necesitamos modificar esto para hacer lo que queremos. Eche un vistazo al formato del campo y a sus descripciones, no hay necesidad de explicar cada una, vamos a hacer lo que se necesita:
Section: misc
Priority: optional
Standards-Version: 3.0.1
Package: mta-local
Provides: mail-transport-agent
Si, eso es todo. mutt depende de
mail-transport-agent, este es un paquete virtual provisto por
todos los MTA, yo podría simplemente nombrar el paquete
mail-transport-agent, pero prefiero usar el esquema de paquetes
virtuales, utilizando "Provides".
Ahora sólo necesita crear el paquete:
# equivs-build name
dh_testdir
touch build-stamp
dh_testdir
dh_testroot
dh_clean -k
# Add here commands to install the package into debian/tmp.
touch install-stamp
dh_testdir
dh_testroot
dh_installdocs
dh_installchangelogs
dh_compress
dh_fixperms
dh_installdeb
dh_gencontrol
dh_md5sums
dh_builddeb
dpkg-deb: building package `name' in `../name_1.0_all.deb'.
The package has been created.
Attention, the package has been created in the current directory,
E instalar el .deb creado.
Como se puede ver, hay muchos usos para equivs. Se puede crear un
paquete my-favorites el cual dependiera en los paquetes que usted
usualmente instala, por ejemplo. Sólo deje volar su imaginación, pero sea
cuidadoso.
Es importante recalcar que hay archivos de control ejemplo en
/usr/share/doc/equivs/examples. Revíselos.
Muchos Debianeros utilizan sólo un "locale". Un usuario Mexicano de Debian, por ejemplo, usualmente utulizará el es_MX todo el tiempo y no le importará el de.
localepurge es una herramienta muy útil para estos usuarios.
Puede liberar mucho espacio dejando sólo instalados los que realmente necesita.
Sólo ejecuta apt-get install localepurge.
Es muy fácil de configurar, las preguntas de debconf guían al usuario en una configuración paso a paso. Sea cuidadoso en contestar la primer pregunta, una respuesta errónea podría eliminar todos los archivos de localización, aún aquellos que necesitas. La única manera de recuperarlos es reinstalando todos lo paquetes que los proveen.
apt-show-versions es un programa que muestra que paquetes en el
sistema pueden ser actualizados y mucha información mas. La opción
-u muestra una lista de paquetes actualizables:
$ apt-show-versions -u
libeel0/unstable upgradeable from 1.0.2-5 to 1.0.2-7
libeel-data/unstable upgradeable from 1.0.2-5 to 1.0.2-7
APT HOWTO
1.8.4 - April 2003kov@debian.orgh.mora@melix.com.mx