Wallpaper GNESIS 3.0

— [ edit | raw ] migrated from node/585
Aquí podeís ver un wallpaper inspirado por la alegría de la próxima gnesis. blender + gimp + freesans bold. http://www.brue.org/?q=node/27 La versión de 1280x1024 está aquí Espero que os guste.

TES: Eliminar ficheros basura generados por Emacs

— [ edit | raw ] migrated from node/589
Estaba harto de encontrarme ficheros ~, ## y .semantic por todas partes, y puede llegar a ser muy aburrido borrarlos periódicamente. ¡Tiene que haber alguna manera de optimizar esto! Y, efectivamente...

Ingredientes

Pues el Emacs. No más.

backups

Hoy vamos a tocar a saco el .emacs (recordad que en Windón es _emacs). Para empezar, veamos los backups, es decir, los ficheros ~. Éstos se crean como medida de recuperación ante fallos. Hay gente a la que le gustaría que no existieran. Hay gente que quiere más backups. Existe una variable llamada version-control que nos permite crear ficheros loquesea~1~ de tal manera que podamos tener más de 1 backup. Sus valores son t para que se hagan; nil para que no se hagan y t never que es lo mismo pero así, como con más énfasis: ¡que no pongas versiones!. Yo me quedo con una única versión, así que tengo:
(setq version-control t never)
Por si acaso, le digo también que me borre las versiones viejas:
(setq delete-old-versions t)

Situar ficheros

Vale, ahora ya se hacen los backups que yo quiero... Pero sigo teniendo los *~, #*# y *.semantic por todas partes:
(setq backup-directory-alist (quote ((".*" . "~/.emacs_backups/"))))
(setq semanticdb-default-save-directory "~/.emacs_semantic/")
La primera instrucción indica dónde quiero que me deje los ~ y la segunda, dónde los .semantic. Es MUY IMPORTANTE que estos directorios existan. Además, hago que comiencen por punto, para que así existan, pero yo no los veo ;) La segunda de las instrucciones indica dónde debe dejar los .semantic, como es evidente. Y con esto tengo los directorios limpitos de basura (vamos, con la justa ;D )

Referencias

Aunque aún no lo he puesto, la referencia es obvia: El manual de Emacs.

Próxima semana:

A veces es un poco aburrido encontrarse con 20 Emacs diferentes abiertos, sobre todo cuando activamos la opción tabbar. Bien, pues hay una manera de hacer que se reutilice siempre el mismo...

Lentejas libres

— [ edit | raw ] migrated from node/586

Si quieres las tomas o si no las estudias y distribuyes las modificaciones.

Peras en reducción de vino

— [ edit | raw ] migrated from node/582

Un postre para quedar bien.

GNU/Linux en el Vaticano

— [ edit | raw ] migrated from node/583
Pues sí amiguitos, tal como lo oís. En una entrevista a la hermana Judith Zobelein explica como utiliza Linux pero bajo Mac. No entro en polémica con Unix. La hermana Judith es la responsable del departamento de internet del Vaticano. Lo que más me ha llamado la atención ha sido la frase: No sabemos que sistema operativo utiliza Dios, el Vaticano usa Linux. Hay lo llevas :P

GNU IS NOT LINUX

— [ edit | raw ] migrated from node/584
Segun kernel.org:

Patentes: esta vez paga Micro$oft (1.5 millones de millones de dólares)

— [ edit | raw ] migrated from node/581
Increble sentencia que hace que M$ tenga que pagar 1.5 billones de dólares a Alcatel por licenciar la reproducción de mp3. Todos creíamos que la patente del mp3 la tenía "Fraunhofer-Gesellschaft", pues M$ también ... ale ... quien a hierro mata, a hierro termina. Leedlo aquí

Avances en GNESIS 3.0

— [ edit | raw ] migrated from node/578
¡Hola a todos!

Tabletas Wacom en X.Org

— [ edit | raw ] migrated from node/574
Hola! Dado que en GNU tenemos estupendísimos programas como Inkscape o The Gimp es cada vez más común el querer disponer de una tableta digitalizadora chula para poder trabajar con gráficos de una forma más cómoda y fácil. Si habéis pensado en comprar alguna y tenéis miedo del soporte que linux os pueda brindar, os recomiendo las Wacom, tienen un soporte estupendo (parece ser que wacom colabora con el desarrollador de los drivers).

Instalando software necesario

Los drivers soportan tanto linux 2.4.x como 2.6.x, nosotros explicaremos como instalarlo y configurarlo en linux de la rama 2.6. En Debian (como no podía ser de otra forma):
$ m-a ai wacom
Y ya tenemos los módulos para el linux, ahora debemos instalar el driver para X.Org:
$ apt-get install xserver-xorg-input-wacom
También puede ser útil contar con:
$ apt-get install wacom-tools
Bien, ya tenemos todo listo para configurarlo, vamos a ello...

Configurando X.Org

Si todavía queda alguien que use Xfree86, esto es completamente compatible... ;)
Las wacom disponen de varios dispositivos físicos apuntadores: el lápiz, un ratón, etc. Son capaces de detectar qué dispositivo estamos usando, es decir: si estamos utilizando el lápiz o el ratón (en mi caso). En el archivo de configuración de X.Org configuraremos los distintos tipos que soporta el driver y podremos tener configuraciones específicas para cada uno, así por ejemplo el puntero se comportará de una forma si usamos lápiz o de otra si estamos con el ratón (esto es genial!). Pues aquí va mi código para el archivo /etc/X11/xorg.conf:
## Wacom Volito
#
Section "InputDevice"
        Driver          "wacom"
        Identifier      "stylus"
        Option          "Device"                "/dev/input/wacom"
        Option          "Type"                  "stylus"
        Option          "USB"                   "on"
        Option          "Threshold"             "15"
        #Option         "Mode"                  "Relative"
        Option          "Vendor"                "WACOM"
EndSection

Section "InputDevice"
        Driver          "wacom"
        Identifier      "eraser"
        Option          "Device"                "/dev/input/wacom"
        Option          "Type"                  "eraser"
        Option          "USB"                   "on"
        Option          "Threshold"             "15"
        #Option         "Mode"                  "Relative"
        Option          "Vendor"                "WACOM"
EndSection

Section "InputDevice"
        Driver          "wacom"
        Identifier      "cursor"
        Option          "Device"                "/dev/input/wacom"
        Option          "Type"                  "cursor"
        Option          "USB"                   "on"
        Option          "Threshold"             "15"
        #Option         "Mode"                  "Relative"
        Option          "Vendor"                "WACOM"
EndSection
...y añadiremos en la Section "ServerLayout" del mismo fichero:
        InputDevice     "stylus"                "SendCoreEvents"
        InputDevice     "eraser"                "SendCoreEvents"
        InputDevice     "cursor"                "SendCoreEvents"
En las opciones de los dispositivos se puede controlar TODO, hay muchísimos parámetros (consultad el manual). Pincipalmente tenemos Threshold (sensibilidad) y Mode, que puede ser Relative o Absolute (por defecto). El modo absoluto significa que las esquinas de la tableta son las esquinas de la pantalla, recorrer la tableta es recorrer la pantalla. El modo relativo sirve para trabajar con mayor precisión, pero es más incómodo y necesitaremos usar un ratón también.

El dispositivo /dev/input/wacom

Si instaláis en Debian (y supongo que en otras igual) os aparecerá un dispositivo /dev/input/wacom que será un enlace simbólico débil a /dev/input/eventX, siendo X un número de 1 al que sea. Esto es así porque debe existir una regla para udev tal que así (archivo /etc/udev/rules.d/10_wacom.rules):
KERNEL="event*", SYSFS{idVendor}="056a", NAME="input/%k", SYMLINK="input/wacom%e"
Con este archivo ahí y ejecutando lo que tenéis en la sección Comportamiento errático del puntero os debería aparecer ese enlace. De todas formas, si no os aparece esta es mi cutre-solución-o-matic-2000: Mediante wacdump averiguaremos el dispositivo de nuestra wacom:
 $ wacdump /dev/input/event2
Si eso se trata de una wacom aparecerá algo como:
MODEL=Wacom Volito                      ROM=1.4-1
CLS=USB  VNDR=Wacom  DEV=Volito  SUB=MODEL-VOL
Pulsáis Ctrl+C (o Ctrl+X+Alt+Esc+X+F+win+5+Ctrl+Esc+U si fuese emacs) para salir y hacéis el enlace:
$ ln -s /dev/input/event2 /dev/input/wacom
Ahora, si reinciamos X.Org, tendremos la tableta funcionando... casi...

Comportamiento errático del puntero

Lo más normal es que mováis un poco el lápiz y el puntero se vuelva loco y se empiece a cliquear todo y se os quede la sesión "medio muerta" y me mandéis un mail poniéndome verde... pues bien, os comento el problema: cuando conectáis la tableta, el módulo usbmouse reclama el nuevo hardware y lo maneja él... MAL! Debemos hacer que se cargue primero el módulo wacom y luego lo que tenga que venir. También se puede configurar udev para ello... pero como tampoco me he pegado con eso, ahí va mi solución cutre:
$ /etc/init.d/udev stop
$ rmmod wacom usbmouse ehci_hcd ohci_hcd usbhid
$ modprobe wacom
$ /etc/inid.d/udev start
...y ya podemos reiniciar X.Org y disfrutar de nuestra tableta! :)

Apéndice A: instalación y compilación from scratch

Pues nada... nos gusta vivir al límite... eh? vayamos a la página del proyecto Linux Wacom y pinchamos en Project Status en la versión en desarrollo (actualmente 0.7.7-4), guardamos el archivo en disco y lo descomprimimos:
 # unp linuxwacom-0.7.7-4.tar.bz2
#cd linuxwacom-0.7.7-4
Veamos qué conseguiremos con esto:
 # ./configure
...morralla sin significado aparente para nosotros...
----------------------------------------
  BUILD ENVIRONMENT:
       architecture - i486-linux-gnu
       linux kernel - yes 2.6.18
  module versioning - yes -DCONFIG_MODVERSIONS -DMODVERSIONS -include /lib/modules/2.6.18-3-686/build/include/linux/modversions.h
      kernel source - yes /lib/modules/2.6.18-3-686/build
           Xorg SDK - yes /usr/include/xorg
          XSERVER64 - no
           dlloader - yes
               XLib - yes /usr/lib
                TCL - yes /usr/include/tcl8.4/
                 TK - yes /usr/include/tcl8.4/
            ncurses - yes
  BUILD OPTIONS:
            wacom.o - no
            wacdump - yes
             xidump - yes
        libwacomcfg - yes
         libwacomxi - yes
          xsetwacom - yes
              hid.o - no
         usbmouse.o - no
            evdev.o - no
         mousedev.o - no
            input.o - no
        tabletdev.o - no
       wacom_drv.so - yes /usr/lib/xorg/modules/input
        wacom_drv.o - no
----------------------------------------
Aquí nos dice que elementos nos va a generar y de cuáles va a pasar olímpicamente. Nos interesa (sobre todo) que genere wacom.o (el módulo para el kernel) y wacom_drv.so (el driver para X.Org). Si no os aparece a yes puede ser por dos causas: por defecto no se generá (ejecutar ./configure --help y os indicarán los parámetros) o porque os falten librerías de desarrollo de las X o las cabeceras del núcleo. El resto de elementos a generar son módulos más o menos útiles cuya utilidad queda fuera de esta receta... Una vez hayamos ejecutado el configure y esté todo a nuestro gusto:
 # make
$ make install
Y si nada de esto da error... ya podemos empezar con la receta como si tal cosa... :)

Enlaces

Página del proyecto Linux Wacom

Sobre los gtk.RadioButton

— [ edit | raw ] migrated from node/575

Recientemente tuve una conversación muy interesante sobre la idoneidad de los widgets gtk.RadioButton. Vamos a ver… ¿por qué no son más intuitivos? ¿Qué piensas sobre ellos?

  • tiene pocos métodos?
  • es perfecta tal como está?
  • es un toogle disfrazado?
  • mierda de grupos!?

PD: Cleto, que tienes que decir?? :-p