<?xml version="1.0" encoding="UTF-8"?>
        <?xml-stylesheet type="text/css" href="http://www.madritel.es/personales4/raragon/styles/feed.css"?>
<rss version="2.0"
 xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
 xmlns:dc="http://purl.org/dc/elements/1.1/"
 xmlns:admin="http://webns.net/mvcb/"
 xmlns:atom="http://www.w3.org/2005/Atom"
>
<channel>
<title>Comidilla</title>
<atom:link href="http://www.madritel.es/personales4/raragon/rss.xml" rel="self" type="application/rss+xml" />
<link>http://www.madritel.es/personales4/raragon</link>
<description>¿Cómo?<sup><a href=comidilla.html>2</sup></a></sub></description>
<dc:language>es-es</dc:language>
<dc:creator>Roberto Aragón</dc:creator>
<dc:date>2010-03-16T02:42:49+01:00</dc:date>
<admin:generatorAgent rdf:resource="http://nanoblogger.sourceforge.net" />

<item>
<link>http://www.madritel.es/personales4/raragon/archives/2010/03/index.html#e2010-03-10T13_45_16.txt</link>
<guid isPermaLink="true">http://www.madritel.es/personales4/raragon/archives/2010/03/index.html#e2010-03-10T13_45_16.txt</guid>
<title>Otro grano de arena: SCJP 1.6</title>
<dc:date>2010-03-10T13:45:16+01:00</dc:date>
<dc:creator>Roberto Aragón</dc:creator>
<dc:subject> Sitio</dc:subject>
<description><![CDATA[<br /><br />
Un resumen siempre ayuda. Si estás planteándote pasar el SCJP 1.6 (te lo
recomiendo), <a href="mini-manuales/scjp/index.html">este</a> te puede venir muy bien.
<br /><br />
Es un resumen del texto <em>oficial</em> (aunque algo así realmente no existe),
pero si ya has comenzado a buscar a información y a formarte, verás que los
objetivos son los oficiales y están bien cubiertos. He añadido algunos ejemplos
interesantes de código hechos con mucho cuidado (sí, compilan y funcionan) y
algunos recordatorios sacados de los test también oficiosos. Espero que te sea
de utilidad.
<br /><br />
¡Ah! Si necesitas alguna ayuda más, no dudes en contactar. ]]></description>

</item>
<item>
<link>http://www.madritel.es/personales4/raragon/archives/2007/05/index.html#e2007-05-21T22_36_59.txt</link>
<guid isPermaLink="true">http://www.madritel.es/personales4/raragon/archives/2007/05/index.html#e2007-05-21T22_36_59.txt</guid>
<title>Actualización a NanoBlogger 3.3</title>
<dc:date>2007-05-21T22:36:59+01:00</dc:date>
<dc:creator>Roberto Aragón</dc:creator>
<dc:subject> Sitio</dc:subject>
<description><![CDATA[<br /><br />
Por fin me he atrevido a actualizar el sitio a NanoBlogger 3.3, aunque lo he
hecho <i>sin querer</i>  <img src="http://www.madritel.es/personales4/raragon/moods/smilies/wink.gif" alt=";)" /> .
<br /><br />
El resultado, ya estáis viendo, excelente. No solo ha mejorado en aspecto y en
la calidad de las plantillas, si no que además incluye soporte multi-idioma,
así que me he puesto como un loco a traducirlo y, si consigo traducir la
ayuda, mandaré al señor Wood la traducción, ya que tiene francés, alemán e
inglés, pero no la lengua de Cervantes...]]></description>

</item>
<item>
<link>http://www.madritel.es/personales4/raragon/archives/2006/11/index.html#e2006-11-05T17_21.txt</link>
<guid isPermaLink="true">http://www.madritel.es/personales4/raragon/archives/2006/11/index.html#e2006-11-05T17_21.txt</guid>
<title>Soporte DRI en Xorg con Gentoo</title>
<dc:date>2006-11-05T17:21+01:00</dc:date>
<dc:creator>Roberto Aragón</dc:creator>
<dc:subject> GNU/Linux</dc:subject>
<description><![CDATA[Ya podeis mirar blogs (y los hay a millares) sobre como configurar con éxito
el soporte DRI (Direct Rendering Infraestructure) en vuestro servidor Xorg o
XF86 que no vais a encontrar ninguna referencia a 'xorg-server'.
<br /><br />
¿Que de qué estoy hablando? Pues de que todos los esfuerzos de configuración
se centran en los módulos a usar, en bajarse x11-drm etc y en la mayoría
incluso te recomiendan exoticas opciones para el driver.
<br /><br />
Luego esta la lucha entre le driver propietario <tt>fglrx</tt> y el de código
abierto <tt>radeon</tt>, pero ninguno entra en lo más importante, a parte,
claro está, de habilitar el soporte DRI en el kernel:
<br /><br />
¡Hay que compilar <tt>xorg-server</tt> con soporte DRI! Pues eso, basta con
añadir en <tt>make.defs</tt> la palabra clave <tt>dri</tt> para que, al
compilar el <tt>xorg-server</tt> tenga el soporte, que se traduce en que ha de
crear los módulos necesarios <tt>/usr/lib/xorg/modules/linux/libdrm.so</tt> y
<tt>/usr/lib/xorg/modules/linux/libdri.so</tt> y otros más que en el
directorio de extensiones que posibilitan la aceleración 3D.
<br /><br />
Para otros detalles (no este, ya digo que no lo encontrarás) consulta, por
ejemplo <a
href="http://ru.gentoo-wiki.com/HOWTO_direct_rendering_without_proprietary_drivers_for_ATI_Radeon_9600">HOWTO
direct rendering without proprietary drivers for ATI Radeon 9600</a> o <a
href="http://gentoo-wiki.com/HOWTO_DRI_with_ATi_Open-Source_Drivers">HOWTO DRI
with ATi Open-Source Drivers - Gentoo Linux Wiki</a> y <a
href="http://gentoo-wiki.com/HOWTO_ATI_Drivers">HOWTO ATI Drivers - Gentoo
Linux Wiki</a> si prefieres usar el driver propietario.
<br /><br />
¡Uf!]]></description>

</item>
<item>
<link>http://www.madritel.es/personales4/raragon/archives/2006/10/index.html#e2006-10-21T00_51.txt</link>
<guid isPermaLink="true">http://www.madritel.es/personales4/raragon/archives/2006/10/index.html#e2006-10-21T00_51.txt</guid>
<title>FuzzyCLIPS en Ubuntu 6.06</title>
<dc:date>2006-10-21T00:51+01:00</dc:date>
<dc:creator>Roberto Aragón</dc:creator>
<dc:subject> GNU/Linux</dc:subject>
<description><![CDATA[<i>CLIPS</i> (Sistema de Producción Integrada en Lenguaje C) es un entorno de
desarrollo de Sistemas Expertos. <i>FuzzyCLIPS</i> amplía
<i>CLIPS</i> proveyéndolo de capacidades de razonamiento difuso.
<br /><br />
Lamentablemente, en la página de descargas de la <i>National Research Council of
Canada</i> no existe una versión compilada de <i>FuzzyCLIPS</i> para GNU/Linux,
si bien es posible compilarlo a partir de la versión disponible para
<i>M$ Güindous</i>&copy;, aunque requiere alguna adaptación nada complicada.
<br /><br />
En primer lugar, se ha de descargar la versión para <i>M$ Güindous</i>&copy;
de la página <a href="http://www.nrc.ca">http://www.nrc.ca</a>. Se requerirá
darse de alta con una dirección de correo válida ya que, una vez seleccionado
el fichero a descargar, se enviará en enlace a esa dirección.
<br /><br />
El fichero descargado se llama <tt>fzclp610dWin.zip</tt> (a día de hoy). Al
descomprimirlo (p.e. con <tt>unzip</tt>), creará un directorio con el mismo
nombre. Abriremos una sesión de terminal en el subdirectorio <tt>source</tt>
dentro del anterior, donde habrá que editar dos ficheros:
<ul>
	<li><tt>setup.h</tt>: habrá que cambiar el 1 que tiene definido el símbolo
	<tt>IBM_TBC</tt> por defecto a 0 y cambiar el 0 del símbolo <tt>UNIX_V</tt>
	por un 1. Esto se hace para que la parte dependiente del sistema operativo
	de la compilación entienda que estamos en un Unix System V o similar, que es
	lo más aproximado que vamos a encontrar.</li>
	<li><tt>Makefile.cl</tt>: En mi caso (puede que en el tuyo no sea así), no
	tengo la librería <tt>libtermcap</tt> y en GNU/Linux no se usa, así que
	habrá que eliminar de esa línea la referencia a dicha librería.</li>
</ul>
<br /><br />
Para compilar, podemos ejecutar:
<br /><br />
<pre>$ make both</pre>
<br /><br />
o, para crear el ejecutable de línea de comandos:
<br /><br />
<pre>$ make -f Makefile.cl</pre>
<br /><br />
y para crear el IDE bajo X
<br /><br />
<pre>$ make -f Makefile.x</pre>
<br /><br />
En mi caso no he tenido que tocar el <tt>Makefile.x</tt> porque las
librerías y cabeceras para compilar con <i>Athena Widgets</i> (que son las librerías
que usa <i>FuzzyCLIPS</i> para el IDE) están incluidas en las rutas por defecto del
compilador. Puede que este no sea tu caso. Revísalo por si acaso.
<br /><br />
Claro que, para que este proceso vaya bien, será necesario tener un sistema de
compilación básico (compilador, ensamblador, etc) y las librerías de
desarrollo de <i>Xt</i> y <i>Athena Widgets</i> que son <tt>libxt-dev,
libxaw-headers, libxaw7-dev, libxpm-dev</tt> y <tt>xbitmaps</tt> (quizá falten
algunas dependencias).
<br /><br />
<b>Suerte</b>.]]></description>

</item>
<item>
<link>http://www.madritel.es/personales4/raragon/archives/2006/03/index.html#e2006-03-08T19_42.txt</link>
<guid isPermaLink="true">http://www.madritel.es/personales4/raragon/archives/2006/03/index.html#e2006-03-08T19_42.txt</guid>
<title>Oracle 10g en Gentoo: sí, es posible</title>
<dc:date>2006-03-08T19:42+01:00</dc:date>
<dc:creator>Roberto Aragón</dc:creator>
<dc:subject> GNU/Linux</dc:subject>
<description><![CDATA[Efectivamente. Gracias a una excelente página en <a
href="http://www.togaware.com/linux/survivor/Oracle_10g.shtml">Togaware</a>
(en inglés), a un poco de paciencia y a algunos trucos no muy ortodoxos, he
conseguido instalar Oracle 10g (la última versión, 10.2.0.1.0 que puede descargarse desde
<a href="http://download.oracle.com">Oracle</a>. Más concretamente, las versiones Windows y Linux
x86 pueden bajarse de <a
href="http://www.oracle.com/technology/software/products/database/xe/index.html">aquí</a> y
otras desde <a
href="http://www.oracle.com/technology/software/products/database/oracle10g/index.html">aquí</a>.
La documentación de la versión está <a
href="http://www.oracle.com/pls/xe102/homepage">aquí</a>. La guía explica como instalarlo en
Debian x86, pero casi todo es igual que en Gentoo, excepto, claro está, el
método de hacerse con el software de las dependencias de Oracle. También
existe otra guía para SuSE <a
href="http://www.puschitz.com/InstallingOracle10gOnSUSE.shtml">aquí</a>, pero no he seguido
ésta, aunque puede ayudarte con alguna duda.
<br /><br />
Poco que añadir al documento de Togaware; lo más cabal es seguirlo al pie de
la letra salvo en algunas pequeñas cosas:
<ul>
	<li>Las versiones de <em>libaio</em> compatibles con Oracle son <b>sólo</b> las
	anteriores a la 0.3.15 (103, 104, 106).</li>
	<li>No he necesitado realizar los procedimientos relativos al servicio <tt>
	cssd</tt> que mencionan en Togaware</li>
	<li>He tenido problemas con los programas de arranque <tt>dbstart</tt> y
	<tt>dbshut</tt>. Así que, en su lugar, he utilizado mi propio <i>script</i> de arranque y
	parada que puedes ver <a href="downloads/orcl.sh">aquí</a>. Para que funcione,
	déjalo en un directorio incluido en el <tt>PATH</tt> del usuario oracle y crea un
	enlace dinámico a este con el nombre de la base de datos que creaste en la
	instalación. Si, por ejemplo, llamaste a tu base de datos <b>jul0</b>,
	necesitarás ejecutar las siguientes órdenes:
	<pre>
# su - oracle
# cd ~/bin #<i>Si tienes ~/bin en el PATH</i>
# ln -s orcl.sh jul0
# jul0 start #<i>para arrancar la BD y...</i>
# jul0 stop #<i>para pararla</i>
	</pre>
	Como ves, no recomiendo que sea el usuario <tt>root</tt> el que realice el
	arranque y la parada. Si no tienes más remedio, te recomiendo que uses el
	<i>script</i> anterior a través de la orden <tt>su - oracle</tt>, lo que da,
	casi siempre, menos quebraderos de cabeza.</li>
	<li>Errores en la compilación: Al enlazar los ejecutables en la fase final
	de la instalación (es parte de la instalación desde tiempos inmemoriales de
	Oracle), encontré que faltaban dos bibliotecas de enlace dinámico que,
	curiosamente, sí estaban en mi sistema pero que, sin embargo, buscaba en otra
	ubicación. Mi solución fue crear enlaces simbólicos allí donde las buscaba;
	las órdenes fueron:
	<pre>
# ln -s /usr/lib/gcc/x86_64-pc-linux-gnu/3.4.5/libgcc_s.so.1 /lib64/libgcc_s.so.1
# ln -s /usr/lib64/libstdc++-v3/libstdc++.so.5.0.6 /usr/lib64/libstd++.so.5
	</pre>
	No sé si es posible eliminar después de la instalación estos enlaces,
	supongo que sí.</li>
	<li>En cuanto a las dependencias, y sólo a título de referencia, las
	versiones de los paquetes con los que pude instalar en Gentoo
	correspondientes a los que en Togaware se indican como requisitos
	preliminares son:
	<pre>
sys-devel/gcc-3.4.5
sys-devel/make-3.80-r3
sys-devel/binutils-2.16.1
x11-libs/openmotif-2.2.3-r8
dev-libs/libaio-0.3.106
	</pre>
	Date cuenta de que no he necesitado ni <tt>lesstif</tt> ni <tt>rpm</tt>,
	claro.</li>
	<li>Si te falla la creación de una base de datos e intentas volver a crearla
	con el mismo nombre, probablemente la herramienta te dirá que ya exista
	aunque borres los ficheros de la misma. Lo que hay que hacer es,
	simplemente, eliminar su entrada en el fichero
	$ORACLE_HOME/install/oratab</li>
	<li>Es difícil (o al menos a mí me lo pareció) encontrar cómo se arranca el
	servicio de <i>Oracle Web Enterprise Manager</i>. La orden es:
	<pre>
oracle$ emctl start dbconsole
	</pre>
	que es necesario para poder administrar las bases de datos de forma remota
	con esta herramienta.</li>
</ul>]]></description>

</item>
<item>
<link>http://www.madritel.es/personales4/raragon/archives/2006/03/index.html#e2006-03-07T09_51.txt</link>
<guid isPermaLink="true">http://www.madritel.es/personales4/raragon/archives/2006/03/index.html#e2006-03-07T09_51.txt</guid>
<title>Disculpas</title>
<dc:date>2006-03-07T09:51+01:00</dc:date>
<dc:creator>Roberto Aragón</dc:creator>
<dc:subject> Sitio</dc:subject>
<description><![CDATA[Quiero pedir disculpas por tantos meses sin ocuparme de actualizar mi sitio.
<br /><br />
Tampoco he estado tan ocupado, pero siempre tienes prioridades y a veces
hay que elegir. La buena noticia es que espero tener tiempo para añadir
en breve un montón de contenidos, así que, si estás leyendo esto, no te
olvides pasar pronto por aquí de nuevo.
<br /><br />
Gracias por visitarme.]]></description>

</item>
<item>
<link>http://www.madritel.es/personales4/raragon/archives/2005/04/index.html#e2005-04-09T02_14.txt</link>
<guid isPermaLink="true">http://www.madritel.es/personales4/raragon/archives/2005/04/index.html#e2005-04-09T02_14.txt</guid>
<title>Nuevos drivers de sistema de archivos</title>
<dc:date>2005-04-09T02:14+01:00</dc:date>
<dc:creator>Roberto Aragón</dc:creator>
<dc:subject> GNU/Linux</dc:subject>
<description><![CDATA[Coincidiendo con la última actualización de kernel que he realizado
(2.6.10), me he dejado llevar por la euforia y me he puesto a investigar dos
drivers <i>nuevos</i> de sistema de archivos: <b>pktcdvd</b> y
<b>squasfs</b>.
<br /><br />
El primero de ellos permite escribir en paquetes de 2K
sobre discos ópticos regrabables, a saber, CD-RW, DVD-RW y DVD+RW. El segundo
me interesó por la obvia preocupación de los que estamos acostumbrados a
quedarnos, invariablemente, sin espacio en disco; este driver
permite mantener un sistema de archivos (eso sí, de sólo lectura)
en un dispositivo de bloques o en un fichero comprimido. De este modo podría
comprimir selectivamente partes poco usadas, montarlas para lectura y así no
desperdiciar tanto espacio.
<br /><br />
<h4>Grabando directamente en discos +/-RW</h4>
Era algo que estaba esperando desde hace tiempo: usar los discos
regrabables directamente, borrando y añadiendo a mi antojo, sin preocupación y
sin abrir <i>k3b</i> u otros. Primero configuré el núcleo para compliar
<i>pktcdvd</i> como módulo y después me bajé las, hasta ahora desconocidas,
<i>udftools</i>. En el directorio <tt>/usr/src/linux/Documentation/cdrom</tt>
encontré un simple pero suficiente manual de cómo hacerlo,
<tt>packet-writing.txt</tt>. Allí cuenta que, una vez formateado el disco
(los CD-RW con <tt>cdrwtool</tt> y con <tt>dvd+rw-format</tt> los DVD+/-RW) hay
que ejecutar la órden <tt>pktsetup dev_name /dev/cdrom</tt>.
Sin embargo, me parecía un poco tedioso tener que ejecutar dos órdenes cada
vez que quisiese montar el disco para escritura, así que pensé en algún modo
de hacerlo todo a la vez. Ahí va mi método:
<br /><br />
<ul>
	<li>Preparar puntos de montaje distintos para discos grabables y no
	grabables: en mi caso ya tenía <tt>cdrom</tt>, así que creé
	<tt>cdram</tt>.</li>
	<li>Preparar la entrada de <tt>fstab</tt> para un montaje rápido:
	<pre>
/dev/pktcdvd/cdram0 /mnt/cdram udf noatime,defaults,noauto 0 0
	</pre>
	No hace falta especificar <b>rw</b>, ya que es por defecto, y el
	<b>noatime</b> está recomendado para minimizar las escrituras.</li>
	<li>El <i>super-truco</i>: crear (como <i>root</i>) el fichero
	<tt>/sbin/mount.udf</tt> con el siguiente contenido:
	<pre>
#!/bin/sh
dev=${1/*\/}
pktsetup $dev /dev/dvd
mount -i $*
	</pre>
	</li>
</ul>
<br /><br />
<i>Voilá</i>: según el manual de <tt>mount</tt>, cuando se monte un disco
<i>udf</i> se ejecutará el guión <tt>/sbin/mount.udf</tt>; este guión
preparará el disposivo de bloques <tt>cdram0</tt> a partir de
<tt>/dev/dvd</tt>, de modo que <tt>mount</tt> pueda montarlo según la entrada
de <tt>fstab</tt> anterior. De todos modos el método no es perfecto: si usas
DVD+RW, puede que se copien datos, pero el disco no esté <i>finalizado</i>.
Efectivamente, la primera vez que lo escribas debes esperar a que se copien
todos los datos y, antes de desmontar el disco, para mayor seguridad, ejecutar
<tt>pktsetup -d cdram0</tt>, ya que la <i>finalización</i> del disco puede
estar pendiente. Como regla general siempre es bueno hacer ésto antes de
desmontarlo.
<br /><br />
<h4>Comprimiendo directorios selectivamente</h4>
Aunque es una pena que <i>squashfs</i> no tenga soporte de escritura, sí
que soluciona un problema de espacio, lo que es importante en el caso en que
directorio a comprimir no se escribe casi nunca. Después de configurar el
núcleo, compilar e instalar el módulo <tt>squasfs</tt>, me bajé el paquete
<tt>squashfs-tools</tt>, que contiene el necesario <tt>mksquasfs</tt>. Es muy
fácil de usar, pero se explica mejor con un ejemplo:
<br /><br />
<ul>
	<li>Crear un fichero comprimido: usando <tt>mksquasfs</tt> especificamos el
	directorio que queremos <i>comprimir</i> y como destino un nombre de
	archivo.
	<pre>
$ mksquasfs mimúsica mimusica.squashfs
	</pre></li>
	<li>Cuando termine, renombramos el directorio recién comprimido.
	<pre>
$ mv mimúsica mimúsica.orig
	</pre></li>
	<li>Creamos un directorio vacío, desde donde se montará el nuevo subsistema.
	<pre>
$ mkdir mimúsica
	</pre></li>
	<li>Montamos el fichero comprimido bajo el directorio recién creado:
	<pre>
$ mount mimusica.squasfs mimúsica -t squasfs -o loop,ro
	</pre></li>
	<li>Ahora, por precaución antes de eliminar el directorio original, podemos
	comparar los contenidos a ver si todo fue bien:
	<pre>
$ diff -r mimúsica mimúsica.orig
	</pre></li>
	<li>Si todo fue bien, ya podemos eliminar el directorio original
	completamente, ya que lo tenemos comprimido y en línea:
	<pre>
$ rm -r mimúsica.orig
	</pre>
	<li>Para que este directorio se monte al arrancar, habrá que incluir la
	siguiente línea en <tt>fstab</tt>:
	<pre>
/home/miscosas/mimusica.squashfs /home/miscosas/mimúsica squasfs auto,defaults,ro 0 0
	</pre>
	Por ejemplo.</li>
</ul>
<br /><br />
Claro que todos estos pasos pueden simplificarse creando un guión para
hacerlo todo de un tirón, lo que no supondría demasiada dificultad.
<br /><br />
Algo curioso e interesante es que, si bien no es posible remplazar archivos
(se añadirían con un <i>número de versión</i>) sí es posible añadir ficheros
con <tt>mksquasfs</tt> y/o directorios al fichero comprimido incluso estando
en línea, aunque, claro está, hasta que no se monta de nuevo el sistema no se
verán los cambios.
<br /><br />
Las pruebas aportadas para la versión 2.1 indican que es más rápido y
comprime más que <tt>zisofs</tt> y <tt>cloop</tt>, pero pruébalo tú mismo.]]></description>

</item>
<item>
<link>http://www.madritel.es/personales4/raragon/archives/2005/03/index.html#e2005-03-14T10_53.txt</link>
<guid isPermaLink="true">http://www.madritel.es/personales4/raragon/archives/2005/03/index.html#e2005-03-14T10_53.txt</guid>
<title>Videoconferencia en Linux</title>
<dc:date>2005-03-14T10:53+01:00</dc:date>
<dc:creator>Roberto Aragón</dc:creator>
<dc:subject> GNU/Linux</dc:subject>
<description><![CDATA[Efectivamente: después de muchos años usando GNU/Linux, ahora se me ocurre
probar la videoconferencia. No era algo que me produjese demasiado interés, ya
que no tenía con quien conversar. Creo que la utilidad viene cuando tienes
amigos o familiares con tarifa plana y que estén conectados muchas horas al
día. Si ésto es así, este método de comunicación es genial.
<br /><br />
Mi segundo recelo fue: ¿será compatible GnomeMeeting con m$-netm3eting?
Lamentablemente, soy el único <i>linuxero</i> (aunque sea <i>de pastel</i>) de
la familia. Pues bien, me puse a la obra.
<br /><br />
En un principio instalé la versión 1.00 que <b>Gentoo</b> me ofreció como
estable, pero lejos de ser estable, cuando conectaba con GnomeMeeting 1.0.2 me
daba un <i>coredump</i> magnífico  <img src="http://www.madritel.es/personales4/raragon/moods/smilies/wink.gif" alt=";)" /> , así que decidí instalarme algo más
avanzado (digamos la 1.0.2), y ahí empezó mi pesadilla.
<br /><br />
No sé a quién echar la culpa (creo que a mí mismo, por iluso) pero, ¿por qué
narices se dice que una aplicación compila con una versión <b>igual o
superior</b> de las librerías tal y cual si es <b>imposible</b> (y seguro que
improbable) que lo haga con versiones superiores? Pues ahí está el problema.
después de pegarme con librerías que no compilan, fallos de dependencias y
demás (varias horas de compilación), me rindo a la evidencia: debo compilar
GnomeMeeting <b>exactamente</b> con las versiones de librerías que me sugiere,
no el famoso <i>emerge</i>, si no los propios <i>ebuilds</i> otra cosa no
funciona.
<br /><br />
Claro que aquí no terminan los problemas, ahora viene el bueno: abrir los
puertos en el firewall (<i>iptables</i>) para que todo funcione. Después de
sufrir desconexiones porque no había intercambio alguno de paquetes (ni de
audio ni de vídeo), caigo en la cuenta: el protocolo usa UDP para envío y
recepción, así que hay que abrir puertos UDP para transmisión y puertos TCP
para inicio y finalización de la comunicación. Ahí no acaba la cosa:
m$-netm3eting usa puertos diferentes de los de GnomeMeeting y además hay que
abrir el regreso de LDAP para poder conectarse en el servidor de directorio de
GnomeMeeting (ILS en Seconix). A ver, detallo las reglas:
<br /><br />
<pre>
##############
# Gnomemeeting
# 
# Devolución de la conexión: solo puertos altos y que tengan ya conexión saliente
-A INPUT -p tcp -m tcp --sport 1720 --dport 1024: -m state --state ESTABLISHED -j ACCEPT
# Intercambio de paquetes de A/V: bonito rango
-A INPUT -p udp -m udp --sport 1024: --dport 5000:5005 -j ACCEPT
<br /><br />
############
# m$-netm3eting
#
# Este va por libre
-A INPUT -p tcp -m tcp --sport 1024: --dport 1503 -j ACCEPT
# Probablemente sirva la vuelta del anterior, pero no me fío
-A INPUT -p tcp -m tcp --sport 1024: --dport 30000:30005 -j ACCEPT
# LDAP (ILS para Gnomemeeting): solo vuelta
-A INPUT -p tcp -m tcp --sport ldap --dport 1024: -m state --state ESTABLISHED -j ACCEPT
</pre>
<br /><br />
Por supuesto, la salida se supone que está totalmente autorizada. Para la
investigación de qué puertos se usan en la comunicación, os transmito un truco
que aprendí de alguien el la red (lo siento, no recuerdo el nombre). Consiste
en añadir una regla justo antes de la última, la que <i>tira</i> todos los
paquetes (la de <b>DROP</b>) que registre todos los paquetes. Esta la
mantendremos mientras hagamos pruebas solamente. Supongamos que la máquina con
la que estás probando es la 124.23.39.71; entonces, si la regla <i>DROP</i>
es la número 35, la regla de registro de paquetes sería:
<br /><br />
<pre>
$ iptables -I INPUT 35 -p all -s 128.23.39.71 -j LOG
</pre>
<br /><br />
Entonces, ejecuta un <tt>tail -f /var/log/messages</tt> y empieza a probar.
Empezará a cantar el jilguero, así que apunta los puertos de origen (SPT) y
de destino (DPT) de las entradas y saca tus conclusiones.
<br /><br />
Otras órdenes útiles: para listar las reglas con número de regla (muy útil
para eliminar reglas y para insertar reglas antes de las existentes)
<br /><br />
<pre>
$ iptables -nL --line-numbers | more
</pre>
<br /><br />
Así, por ejemplo, para eliminar la regla 24 a partir de la información anterior
por número (si lo haces por el contenido de la regla es más lioso):
<br /><br />
<pre>
$ iptables -D INPUT 24
</pre>
<br /><br />
Ahora sí puedo hacer videoconferencia, o al menos <i>audioconferencia</i> con
quien no tenga una cámara, manteniendo el cortafuegos bien configurado. De todos
modos mira en <i>SanGoogle</i>, ya que yo he sido muy cabezón y he querido
probarlo por mí mismo, pero más o menos esas son las reglas.
<br /><br />
¡Mucha suerte!  <img src="http://www.madritel.es/personales4/raragon/moods/smilies/smiley.gif" alt=":)" />]]></description>

</item>
<item>
<link>http://www.madritel.es/personales4/raragon/archives/2005/03/index.html#e2005-03-04T02_29.txt</link>
<guid isPermaLink="true">http://www.madritel.es/personales4/raragon/archives/2005/03/index.html#e2005-03-04T02_29.txt</guid>
<title>Fuente AWT por defecto</title>
<dc:date>2005-03-04T02:29+01:00</dc:date>
<dc:creator>Roberto Aragón</dc:creator>
<dc:subject> Java</dc:subject>
<description><![CDATA[Por segunda vez, he estado a tiros con la fuente que AWT (para el JDK de sun)
usa por defecto. Pasa que usa un tamaño excesivamente grande y claro, la
pregunta es lógica: "¿dónde se cambia ésto?".
<br /><br />
Bueno, pues después tenía una ligera idea del problema, pero nuevamente me
puse a investigar. El problema es que usa un tamaño en puntos ("point size")
de 140 debido a la resolución (puntos por pulgada) de mi monitor. Pues bien,
eso me parece muy, muy grande, y no me gustaba.
<br /><br />
Manos a la obra y a experimentar con el fichero <tt>font.properties</tt>.
Después de tocarlo un poco, recibo un bonito mensaje del tipo:
<br /><br />
<pre>Warning: Cannot convert string "-b&h-lucidasans-medium-r-normal--*-140-*-*-p-*-iso8859-1"
to type FontStruct"</pre>
<br /><br />
Claro, mi respuesta fue: "¿mande?". Hasta que vi el "problema". Parece que (no
sé si es sólo mi sistema) el doble guión después de "normal" no le hace
mucha gracia. A estos campos de un selector de fuente se les llama "xfld",
pues como falta el xfld de familia de fuente (o algo así), XWindow se queja.
De acuerdo, meto un asterisco y... ¿qué ocurre? Que las fuentes siguen siendo
enormes. Bueno, ahora viene la chapuza: si en lugar de "%d" en el octavo
"xfld" (creo) fuerzo a 85, pues la fuente por defecto es buena. No me
preguntéis por qué, pero funciona, aunque no sé hasta cuando y no sé si habré
roto algo más. ¡Ah! A raíz de ésto he aprendido a usar la orden:
<br /><br />
<pre>$ xfd -fn "nombre_de_fuente"</pre>
<br /><br />
que sirve para probar un selector de fuente y, si funciona, para ver qué
fuente selecciona.
<br /><br />
Espero que la experiencia sirva a alguien.
Hasta la próxima  <img src="http://www.madritel.es/personales4/raragon/moods/smilies/smiley.gif" alt=":)" /> .]]></description>

</item>
<item>
<link>http://www.madritel.es/personales4/raragon/archives/2005/03/index.html#e2005-03-02T01_13.txt</link>
<guid isPermaLink="true">http://www.madritel.es/personales4/raragon/archives/2005/03/index.html#e2005-03-02T01_13.txt</guid>
<title>WindowMaker</title>
<dc:date>2005-03-02T01:13+01:00</dc:date>
<dc:creator>Roberto Aragón</dc:creator>
<dc:subject> GNU/Linux</dc:subject>
<description><![CDATA[Me rindo  <img src="http://www.madritel.es/personales4/raragon/moods/smilies/huh.gif" alt=":huh:" /> .
<br /><br />
He vuelto a <em>WindowMaker</em>. Después de experimentar mucho con
<em>openbox</em>, <em>fluxbox</em> y otros, ningún gestor de ventanas te da el
control sobre las características de las ventanas y las recuerda como
<em>wmaker</em>.
<br /><br />
Lo que me gusta de <em>WindowMaker</em>  <img src="http://www.madritel.es/personales4/raragon/moods/smilies/smiley.gif" alt=":)" /> :
<ul>
	<li>Recursos: ahorrativo, el más ligero de todos, requiere un único proceso
	si no usas ningún plugin</li>
	<li>Memoria: conserva todas las preferencias de las ventanas como escritorio
	en que mostrarla, si es omnipresente, si debe flotar encima o quedar debajo,
	y todo ello puedes hacerlo incluso en ventanas hijas de las ventanas
	principales</li>
	<li>Escritorios: me gusta cambiar de escritorios con la rueda del ratón y
	que se muestre el nombre de cada escritorio, de este modo sé dónde arranco
	cada ventana y llego al escritorio que quiero sin tener que usar ningún
	menú.</li>
	<li>Control de ventanas: ¿para qué necesito botones de maximizar y
	minimizar? Teniendo múltiples escritorios, jamás se me ocurre minimizar una
	ventana y maximizar me horroriza: ¿dónde está mi menú, mis carpetas y el
	monitor del sistema? Todo bajo control</li>
</ul>
<br /><br />
Lo que no me gusta: ¿cuándo se podrán usar temas para los controles de las
ventanas? Supongo que nunca, aunque donde estén esos tan grandes... Imposible
fallar al cerrar la ventana, ¿no?
<br /><br />
Creo que lo primero que hay que aprender antes de hacer un gestor de ventanas
(o cualquier cosa que hagas) es saber copiar al mejor para después, si puedes,
mejorarlo. Todavía no he encontrado una copia de <em>WindowMaker</em>
medianamente decente  <img src="http://www.madritel.es/personales4/raragon/moods/smilies/wink.gif" alt=";)" /> .]]></description>

</item>
</channel>
</rss>
