El 14/12/13 10:18, JJ Merelo escribió:
Hola, para mi "novela-en-un-módulo-CPAN" necesito un diccionario de
hunspell, y por mucho que he buscado, parece que no hay forma de
expresar prerrequisitos no-perleros en ninguna de las formas estándar
de distrbuir módulos CPAN. En alguna (Module::Install) le puedes
decir qué prerrequisitos en forma de programas ejecutables necesitas,
aunque no hay forma de decir qué hace falta para que se instale, pero
en ninguna se puede decir, como en mi caso, que hace falta no sé qué
diccionario que está contenido en no sé qué paquete.
La verdad es que a estas alturas de la película debería ser más fácil
hacer este tipo de cosas; en Travis-CI, por ejemplo, es muy fácil
decirle qué paquetes hay que preinstalar a la hora de testear algo,
aunque es específico de la máquina, pero lo suyo sería contar con
órdenes tipo Vagrant o Puppet para decirle: necesito estos paquetes y
tú ya te apañas para instalarlos antes de testear mi distro.
Otra opción es, por supuesto, fallar en caso de que los paquetes no
estén instalados con un mensaje que indique al usuario que lo instale
a mano, pero es poco devops, esto.
Un breve rant... mientras tanto, si queréis leer mi novela, la
compráis en Amazon, la leéis en GitHub o cpan Text::Hoborg (en unos
minutos, espero, sin cpan --force) y luego perldoc
Text::Hoborg::Manuel
Saludos
-- JJ
_______________________________________________ Madrid-pm mailing
list [email protected] http://mail.pm.org/mailman/listinfo/madrid-pm
Bueno, el Makefile.PL no deja de ser un ejecutable Perl, así que se puede hacer
de -casi- todo dentro de él.
Como dices, con Module::Install::External se puede ver si el hunspell está
instalado. Si no lo está, el Makefile.PL se muere.
En otras distribuciones que dependen de archivos/bibliotecas externas, hacen lo
siguiente:
* incluir esos archivos en la propia distribución del módulo. Ejemplo:
DBD::SQLite
* bajar los archivos extra en el momento de la instalación. Con
Module::Install::Fetch, se puede hacer una conexión FTP o HTTP a un determinado
servidor, y bajarlos
* poner en las instrucciones de instalación que es el usuario el responsable de
hacerlo, y si falla uno de los test, recordar que tiene que hacerlo
JF
_______________________________________________
Madrid-pm mailing list
[email protected]
http://mail.pm.org/mailman/listinfo/madrid-pm