lunes, julio 23, 2007

Configurar CUPS en openSuse 10.0 + Applets y Java 1.6 sobre Linux

Estuve probando una aplicación generada con Genexus 9.0 + Java + MySQL sobre
un cliente Linux.

Tengo instalado un openSuse 10.0 con GNOME como escritorio, hasta ese
momento no tenía ningún problema ya que la aplicación al estar generada con
java no debería tener problemas.

La única particularidad es que necesitaba tener una impresora con un nombre
especifico ya que mi aplicación busca entre la lista de impresoras
instaladas una que se llame "geoimpresora".

A pesar de mi gusto por Linux como todo desarrollador que trabaja la mayor
parte del tiempo sobre un Windows hay detalles que se escapan o en mi caso
se me "olvidan". En estos casos recuerdo la frase que dice "La práctica hace
al maestro..."

Desde el yast instale la impresora sin problemas pero no encontré en donde
cambiarle el nombre por lo que tuve que "googlear" un rato para ver como se
modificaba el nombre de una impresora. Obviamente tenía que ser algo
sencillo pero al no estar en "la pomada" me costo mas de lo que esperaba.

Encontré el sistema de impresión llamado cups (http://www.cups.org/), este
sistema me permite administrar todas las impresoras del sistema, lo
interesante es que me permite modificar el nombre o lo que quiera de una
manera muy fácil y con una administración web que levanta en
http://localhost:631. Después que pude levantar cups el mismo me pedía un
usuario y password por lo que tuve que volver a "googlear" hasta que
encontré la forma de configurarlo sin problemas para que no me pidiera
usuario y password. Lo que hice fue lo siguiente:

useradd cups
lppasswd -a cups

Con eso pude solucionar el problema de las impresoras, esto es algo que
puedo parecer muy sencillo pero en mi caso la falta de conocimiento sobre un
escritorio como GNOME me hizo pasar un rato para hacer algo tan tonto como
configurar una impresora. :-)

El segundo problema que tuve es que mi aplicación utiliza un applet para
leer la lista de impresoras instaladas en el sistema, este applet no me
funcionaba en Linux ya que existe un bug en el JRE que fue solucionado en el
JRE 1.6.02.

La experiencia de instalar una impresora me sirvió para estar un rato sobre
un Linux ya que lamentablemente al trabajar sobre Windows uno olvida la
mayoría de las cosas interesantes de Linux. A la prueba está que en
ocasiones hasta las cosas más sencillas sobre un Linux pueden llevar un
rato. :-)