El d�a 22 may 2003, Jes�s Roncero escrib�a: > Hola, llevo ya un tiempo "lurking" esta lista de correo. As� que sirva este > mensaje de presentaci�n. Hace ya tiempo que uso debian y cada d�a estoy m�s > encantado. > > Tengo en mi casa un sistema de sensores de temperaturas conectados a una caja > debian que me va registrando la temperatura y haciendo unas bonitas gr�ficas > (http://www.roncero.org/temp). Utilizo un programa que lee de los sensores > http://www.brianlane.com/digitemp.php y, al no encontrarse este empaquetado > para debian ni tenerlo el autor en su web me gustar�a crearle unos debs. > > Teo Ru�z Su�rez me anim� a empaquetarlo y que si ten�a alg�n problema le > preguntase (gracias). Como veo que lee esta lista, hago mis preguntas aqu� y > as� las comparto con todos vosotros (�es la lista correcta?).
S�.
>
> El programa en s� no es mucha cosa, se compone de un binario y poco m�s, algo
> de documentaci�n y los readme. No tiene ni p�gina man (se qu epara debian hay
> que hacer una). el fichero de configuraci�n se guarda en el directorio que tu
> le especifiques (no tiene por qu� ser el $HOME/), con lo cual es m�s f�cil
> hacerlo. He estado haciendo un paquete siguiendo la gu�a del nuevo mantenedor
> de debian y, la verdad, no he tenido muchos problemas despu�s de leerme casi
> todo el tema. Aunque tengo algunas dudas/problemillas que me gustar�a
> comentar.
>
> La primera dificultad que le veo, es que los fuentes y el makefile est�n
> preparados para crear dos tipos de binarios. Resulta que el sistema �ste de
> los sensores puede utilizar dos tipos de adaptadores (para el puerto serie),
> uno pasivo (que te puedes hacer tu si tienes ma�a y soldando) y otro activo,
> que le puedes comprar al fabricante (que lleva unchip para gestionar toda la
> comunicaci�n con el bus). El makefile est� dise�ado para que construyas o
> bien un binario u otro, eligiendo algunos ficheros fuente en C u otros,
> dependiendo del tipo de adaptador que tengas. El resultado es que tienes un
> binario, con el mismo nombre pero preparado para un sistema u otro.
> O sea, yo hago make ds9097 y tengo soporte para el adaptador pasivo. Si hago
> make ds9097u tengo soporte para el adaptador activo.
>
> Para hacer unas pruebas, modifiqu� el makefile para que hiciese s�lo el
> binario para el ds9097, que es el adaptador que yo tengo. Y cre� el deb. S�lo
> tuve un problema y es que no me incluy� la p�gina man que est�n en
> debian/digitemp.1 (�hay que ponerlo as�, no?). De todas formas, la p�gina era
> la de ejemplo y no se si hice algo mal. tengo que seguir investigando.
> Hacer un paquete �nico as�, con este, me ha resultado en cierto punto f�cil,
> pero supongo que la aproximaci�n para tratar este software (los dos binarios)
> es un tanto diferente.
La p�gina de manual la tienes que incluir t� mediante una orden en el
debian/rules. Como supongo que estar�s usando debhelper, m�rate la
p�gina de dh_installman.
> Primeramente, hab�a pensado en hacer dos paquetes, uno para que tuviese cada
> binario, a partir de los mismos fuentes. Supongo que eso se hace eligiendo
> "multiple package" con el dh_make, �no? y luego modificando los ficheros
> debian/* en concordancia pero, si en �mbos paquetes el binario ses llama
> igual, tendr�n que ser incompatibles, no? Otra forma ser�a que el binario se
> llamase de de distinta forma, ie digitemp y digitempu, pero eso deber�a
> depender del upstream, no?
>
> Me gustar�a recibir alg�n consejo de c�mo hacer esto y/o alguna indicaci�n al
> respecto para ir trabajando sobre el paquete y,si tengo alguna duda,
> preguntarlo aqu�.
Lo de los dos paquetes es un poquillo complicado, porque tienes que
hacer que el programa se compile dos veces, una con cada opci�n. No es
que sea imposible, s�lo digo que no es trivial y hay que entender el
proceso.
Dos ejemplos de c�mo hacer esto los tienes en abiword y vim. B�jate
las fuentes y m�rate c�mo lo hacen. B�sicamente la cosa consiste en
tener "objetivos" del debian/rules paralelos. As� tendr�as un
build-serial y un build-smart (por ejemplo), un install-serial y un
install-smart y as�. Lo que tienes que hacer es que el
dpkg-buildpackage los llame en el orden correcto (clean, cofigure,
build-serial, install-serial, clean-serial, build-smart,
install-smart).
El problema de los nombres se soluciona o haciendo los paquetes con un
conflicts o cambiando el nombre al binario. Lo m�s f�cil es lo
primero, porque en el otro caso, aunque cambiar el nombre es f�cil (es
un 'mv' en el debian/rules) te deber�as meter con historias de
alternativas para que haya un comando 'digitemp' que es el que espera
el usuario.
Un saludo y �nimo :)
--
Jose Carlos Garcia Sogo
[EMAIL PROTECTED]
pgpe6IgTsEEoc.pgp
Description: PGP signature

