Mayo 17th, 2008
Existe un plugin o complemento para Gedit (el editor por defecto en Gnome) que permite unir/dividir líneas en un texto. Esto permite que si tenemos un texto con líneas demasiado largas, podamos dividirlas en líneas de por ejemplo 80 caracteres. Este plugin me estaba siendo muy útil para manejar los textos en LATEX. Sin embargo, debía ir haciendo la separación de líneas párrafo a párrafo, ya que el plugin sino mezclaba todos los parrafos en uno sólo. Para comprender lo que les digo, inténten usarlo.
Lo que hice fue hacer un parche para el plugin para que soporte párrafos. No es que haya tenido algún error ni nada, sino que esta funcionalidad me resulta más útil. Les dejo el parche, y adjunto además, un nuevo plugin igual al Unir/Dividir líneas pero con el parche aplicado para los que no quieran parchear el original. Éste tiene las mismas combinaciones de teclas, por lo que no será compatible a la vez con el otro (le cambie apenas el nombre para que no haya conflictos). Para utilizarlo cópienlo en su $HOME/.gnome2/gedit/plugins/
El plugin si se selecciona todo (CTRL+A), y se presiona la combinación de teclas (CTRL+SHIFT+J) funcionando logra lo siguiente (espero que las imagenes expliquen más que las palabras)
(CTRL+A)

(CTRL+SHIFT+J)

El parche a aplicar sobre /usr/lib/gedit-2/plugins/joinlines.py
220c220,221
< while ord(char) and (not (char in (' ', '\t', '\n', '\r'))):
---
> twoBL = False
> while ord(char) and (not twoBL) and (not (char in (' ', '\t'))):
222a224,233
> if (char in ('\n', '\r')):
> text_iter.forward_char()
> char = text_iter.get_char()
> if (char in ('\n', '\r')):
> while (char in ('\n', '\r')):
> text_iter.forward_char()
> char = text_iter.get_char()
> else:
> text_iter.backward_char()
> twoBL = True
Archivos del complemento modificados. Además el patch.
joinlines2.tar.gz
Actualización:
El que subí tenía un error (además que el parche era reverso). Ahora joinlines2.tar.gz apunta al script corregido. El parche anteriormente publicado se puede aplicar sobre el joinlines.py que trae Gedit. Debajo dejo un parche para corregir el error sobre mi script si ya lo están utilizando (o sea sobre joinlines2.py)
231d230
< twoBL = True
234c233
<
---
> twoBL = True
Posteado en GNU/Linux, Probando herramientas, Software Libre | 2 comentarios »
Mayo 13th, 2008
En un post anterior, escribí acerca de un “bug” que tenía el winepreloader, el cual no permitía ejecutar aplicaciones de 16 bit o aquellas que requirieran el área de memoria ahora protegida por el kernel. Sin embargo en su release candidate 1.0 esto fue solucionado.
En este artículo donde muestro como correr Smalltalk Express con Wine, se explica como actualizar el respositorio para tener la última versión de Wine.
http://nacho.larrateguy.com.ar/2008/03/04/smalltalk-express-corriendo-con-wine-de-nuevo/
Actualización:
La solución al bug, se puede ver acá
winevdm: Move the DOS memory range check to not trigger for Win16 apps.
Posteado en Probando herramientas, Software Libre | No hay comentarios »
Abril 24th, 2008
¿Necesitás que alguien insista en bajar una archivo por vos, del cuál supones la URL pero que actualmente tiene un terrible 404? Pensemos un ejemplo… mmm.. ya sé! La imagen ISO de UBUNTU Hardy Heron 8.04 Long Term Support Edtion (nombre apellido paterno y materno)
Esta noche queda corriendo esto:
#!/bin/bash
while [ 1 ]; do
wget -c $1
sleep 1800
done;
Con parámetros así
# ./bajar.sh http://cdimages.ubuntu.com/releases/8.04/release/ubuntu-8.04-dvd-i386.iso
Un reintento cada 1/2 hora no me parece mucho, además cuando empieza a bajar.. listo!
Copien, usen, cambien, compartan el código, acá mismo le decreto licencia BSD jajaja
Para los que les gusta el artwork, el afiche de Ubuntu de algún fanático.
http://www.vivalinux.com.ar/distros/poster-ubuntu-8.04-hardy-heron.html
Posteado en GNU/Linux | 1 comentario »
Abril 23rd, 2008
Este sábado 24/6 se hace la FLISOL en Santa Fe (Festival Latinoamericano de Instalación de Software Libre). Para más detalle del evento dirigirse a la web oficial.
http://www.flisolsantafe.com.ar/
Para los que anden buscando pareja y le falten recursos “para tirar los galgos”, quizá esta tira cómica les de ideas jajaja

Traducción del chiste:
Verde: Deja ver si entendí… Pedís a las personas sus archivos de configuración de programas y los compartis con otras por acá?
Gris: Sip
V: Genial.
G: Es como un servicio web para compartir achivos, sólo que en vivo y en directo.
V: Hablás en serio, o estás jodiendo?
G: Bien.. en verdad me gustaría cambiar un .vimrc con aquella chica de allí que está programando…
V: Ah…
Yo usé en el pasado tácticas como “veamos una peli pero usemos una distro Linux que se vé mejor y más rápido”, “querés que veamos algo de Minix?” jajaja. No creo que haya sido eso, pero hace 4 años disfruto de los resultados y aún me aguanta!!! (aunque ahora me tironee de la cuerdita).
Bueno, vayan a la FLISOL! Desfragmenten sus discos, si usan Windows. Hagan copia de seguridad de sus cosas importantes y las que no. Y luego se acercan con su gabinete que allá les van a instalar la distro que quieran de Linux (se pueden llevar una o aceptar las que les ofrezcan).
Más links acerca de FLISOL
http://www.flisol.info/
http://www.flisol.info/FLISOL2008/Argentina/Santa_Fe
Leer el resto »
Posteado en Humor | 3 comentarios »
Abril 16th, 2008
Que lindo encontrarse con este error, más estando con una distribución que se va a convertir seguro en la principal en mi PC de escritorio y en el portátil. Estoy hablando de Hardy Heron, la nueva distro de Ubuntu.
Aunque según estuve investigando, el error se debe a una nueva política de seguridad en el Kernel. Acá se explica el por qué del cambio. Este error o mejor dicho advertencia (warning) es visible cuando quiero ejecutar cualquier programa mediante el Wine preloader. Especificamente me comenzó a ocurrir cuando quise probar el Smalltalk Express (que documenté aquí como hacerlo correr en GNU/Linux). Para mi desgracia luego de estos warnings terminó en un error.
Para ir al grano. La aplicación es de 16 bits, por lo tanto seguramente el error es reproducible con otras. Les pego el error que obtengo:
nacho@nacho-laptop:~/programas/oSTEXPRES$ wine VW.EXE
preloader: Warning: failed to reserve range 00000000-60000000
preloader: Warning: failed to reserve range 00000000-60000000
preloader: Warning: failed to reserve range 00000000-60000000
err:dosmem:setup_dos_mem Cannot use first megabyte for DOS address space, please report
preloader: Warning: failed to reserve range 00000000-60000000
err:dosmem:setup_dos_mem Cannot use first megabyte for DOS address space, please report
err:dosmem:setup_dos_mem Cannot use first megabyte for DOS address space, please report
preloader: Warning: failed to reserve range 00000000-60000000
err:dosmem:setup_dos_mem Cannot use first megabyte for DOS address space, please report
err:dosmem:load_winedos Could not load winedos.dll, DOS subsystem unavailable
winevdm: unable to exec '--app-name': 16-bit support missing
Buscando por la red encontré varios bugs anteriores que daban el mismo error. Pero fue éste y precisamente éste comentario, el que me enseñó la luz. En un artículo de Kerneltrap se puede leer que se decidió para evitar futuros ataques, proteger ese espacio de memoria. Sin embargo hay un mínimo que se puede utilizar, continuando con la protección, y que permite que se ejecuten en este caso, las aplicaciones de 16 bits con Wine sin problemas.
Hay que editar el archivo /etc/sysctl.conf y modificar la línea con el valor 4096 (0 desactiva la protección)
# protect bottom 64k of memory from mmap to prevent NULL-dereference
# attacks against potential future kernel security vulnerabilities.
# (Added in kernel 2.6.23.)
# vm.mmap_min_addr = 65536
vm.mmap_min_addr = 4096
para que el cambio se efectúe permanentemente. Si lo queremos hacer temporal, se puede hacer con
# echo 4096 > /proc/sys/vm/mmap_min_addr
o bien
# sysctl -w vm.mmap_min_addr=4096
En cuanto al proyecto Wine, están proponiendo un parche que al menos informe sobre esta incompatibilidad con el cambio en el parámetro del Kernel.
Posteado en GNU/Linux, Probando herramientas, Software Libre | 5 comentarios »