17.2. Generación de un paquete deb para PyKota

17.2.1. Descarga del código fuente de PyKota

Para obtener el código fuente de pykota, refiérase a la Sección 16.4.2, “Cómo obtener PyKota”.

Para la realización de esta documentación se ha elegido descargar el código fuente directamente del CVS. La versión que se ha empleado es la 1.19alpha20.

17.2.2. Modificaciones para generar el paquete deb

Tal y como se obtiene PyKota del CVS no permite la generación de un paquete deb, por este motivo se han realizado una serie de modificaciones al código fuente para que si sea posible esta generación.

Las modificaciones realizadas las puede encontrar en el Apéndice N, Parche para la generación de un paquete deb de PyKota. Aplique el parche que se muestra en el apéndice anterior al código de la versión 1.19alpha20 de PyKota de la siguiente forma:

Ejemplo 17.1. Aplicación del parche de modificaciones al código de PyKota

Sitúese en el directorio que contenga el código fuente de PyKota y teclee lo siguiente, suponiendo que el parche se encuentra en el directorio padre, se llama patch-pykota y está en texto plano:

$ /bin/cat ../patch-pykota | /usr/bin/patch -p1
patching file cgi-bin/printquota.cgi
patching file debian/changelog
patching file debian/conffiles
patching file debian/control
patching file debian/cron.daily
patching file debian/dirs
patching file debian/docs
patching file debian/etc/default/printquota
patching file debian/etc/pykota.cron.daily
patching file debian/Makefile.docs
patching file debian/postinst
patching file debian/printquota-default
patching file debian/rules
patching file setup.py
patching file stylesheets/pykota.css

Con la aplicación del parche ya se debería poder generar el paquete deb de pykota. La forma de hacerlo se verá en la siguiente sección.

17.2.3. Generación del paquete deb

Ejemplo 17.2. Generando el paquete deb de PyKota

Sitúese en el directorio que contenga el código fuente de PyKota, asegúrese de que el archivo debian/rules tiene permisos de ejecución y teclee:

$ /usr/bin/dpkg-buildpackage -rfakeroot -us -uc -b
dpkg-buildpackage: source package is pykota
dpkg-buildpackage: source version is 1.19alpha20.cvs.20040611-1
dpkg-buildpackage: source maintainer is Sergio Gonz'alez Gonz'alez <sergio.gonzalez@hispalinux.es>
dpkg-buildpackage: host architecture is i386
 fakeroot debian/rules clean
dh_testdir
dh_testroot
rm -f build-stamp
/usr/bin/python setup.py clean --all
running clean

...

/usr/bin/python setup.py install --prefix=`pwd`/debian/tmp/usr --no-compile
Do you want to install
        conf/pykota.conf.sample as /etc/pykota/pykota.conf (y/N) ? y
Configuration file /etc/pykota/pykota.conf and /etc/pykota/pykotadmin.conf installed.
Don't forget to adapt these files to your needs.
Please press ENTER when you have read the message above. [enter]
You can now activate the database caching mechanism
which is disabled by default.
It is especially recommended with the LDAP backend.
You can now disable the preservation of the complete
job history which is enabled by default.
It is probably more useful with the LDAP backend.
PLEASE LOOK AT THE SAMPLE CONFIGURATION FILE conf/pykota.conf.sample
TO LEARN HOW TO DO
Please press ENTER when you have read the message above. [enter]

WARNING : IF YOU ARE UPGRADING FROM A PRE-1.19alpha17 TO 1.19alpha17 OR ABOVE
AND USE THE POSTGRESQL BACKEND, THEN YOU HAVE TO MODIFY YOUR
DATABASE SCHEMA USING initscripts/postgresql/upgrade-to-1.19.sql
PLEASE READ DOCUMENTATION IN initscripts/postgresql/ TO LEARN HOW TO DO.
YOU CAN DO THAT AFTER THE INSTALLATION IS FINISHED, OR PRESS CTRL+C NOW.


YOU DON'T HAVE ANYTHING SPECIAL TO DO IF THIS IS YOUR FIRST INSTALLATION
OR IF YOU ARE ALREADY RUNNING VERSION 1.19alpha17 OR ABOVE.

Please press ENTER when you have read the message above. [enter]


WARNING : IF YOU ARE UPGRADING FROM A PRE-1.19alpha10 TO 1.19alpha10 OR ABOVE
YOU **MUST** MODIFY YOUR /etc/pykota/pykota.conf FILE BECAUSE accounter
AND requester DIRECTIVES SUPPORTED VALUES HAVE CHANGED.

YOU CAN DO THAT AFTER THE INSTALLATION IS FINISHED, OR PRESS CTRL+C NOW.


YOU DON'T HAVE ANYTHING SPECIAL TO DO IF THIS IS YOUR FIRST INSTALLATION
OR IF YOU ARE ALREADY RUNNING VERSION 1.19alpha10 OR ABOVE.

Please press ENTER when you have read the message above. [enter]
Checking for PygreSQL availability : NO.
ERROR : PygreSQL not available !
PygreSQL is mandatory if you want to use PostgreSQL as the quota storage backend.
You may continue safely if you don't need this functionnality.
PygreSQL is missing. Do you want to continue anyway (y/N) ? y
Checking for mxDateTime availability : OK
Checking for Python-LDAP availability : OK
Checking for SNMP Tools availability : OK
Checking for Netatalk availability : OK
running install
running build
running build_py
running build_scripts
running install_lib

...

dpkg-deb --build debian/tmp ..
dpkg-deb: construyendo el paquete `pykota' en `../pykota_1.19alpha20.cvs.20040611-1_all.deb'.
 dpkg-genchanges -b
dpkg-genchanges: binary-only upload - not including any source code
dpkg-buildpackage: binary only upload (no source included)

La acción anterior debería haber generado un archivo deb en el directorio padre del actual. El archivo en cuestión debería denominarse pykota_1.19alpha20.cvs.20040611-1_all.deb.

A partir de este momento, ya se está en disposición de instalar PyKota, el siguiente capítulo mostrará la forma de hacerlo.