Disable Bamboo Finger in xorg with multitouch

I had a problem on my Mac using my Wacom Bamboo Touch and Pen. I cannot disable the Finger input, it was not detected listing the devices:

$ xsetwacom --list devices
Wacom Bamboo Craft Pen stylus id: 9 type: STYLUS 
Wacom Bamboo Craft Pen eraser id: 14 type: ERASER 

Given the fact I was able to disable the Touch input on another machine without trackpad, I started searching for my lost input.

My xorg.conf is very simple:

$ cat /etc/X11/xorg.conf

Section "InputClass"
	MatchIsTouchpad "true"
	Identifier "touchpad"
	Driver "multitouch"
EndSection

Section "Device"
	Identifier	"Default Device"
	Option	"NoLogo"	"True"
EndSection

hmmm… perhaps the MatchIsTouchpad is grabbing some input before it can reach the wacom driver…

Grepping for Trackpad in dmesg I found that I can refine the Match for the InputClass to match something in:

$ dmesg | grep -C3 -i trackpad
[    2.976094] usb 3-6: new full-speed USB device number 2 using ohci_hcd
[    3.200107] usb 3-6: New USB device found, idVendor=05ac, idProduct=0237
[    3.200113] usb 3-6: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[    3.200116] usb 3-6: Product: Apple Internal Keyboard / Trackpad
[    3.200119] usb 3-6: Manufacturer: Apple Inc.
[    3.231183] usbcore: registered new interface driver usbhid

For example:

$ diff -u X11/xorg.conf.old X11/xorg.conf
--- X11/xorg.conf.old	2013-04-23 22:52:24.256969000 +0200
+++ X11/xorg.conf	2013-04-23 23:02:09.688969000 +0200
@@ -1,5 +1,6 @@
 
 Section "InputClass"
+	MatchVendor "Apple Inc."
 	MatchIsTouchpad "true"
 	Identifier "touchpad"
 	Driver "multitouch"

Now I can succesfully list the Finger input

$ xsetwacom --list devices
Wacom Bamboo Craft Pen stylus   	id: 9	type: STYLUS    
Wacom Bamboo Craft Finger touch 	id: 10	type: TOUCH     
Wacom Bamboo Craft Pen eraser   	id: 14	type: ERASER    
Wacom Bamboo Craft Finger pad   	id: 15	type: PAD       

and disable it in my .xinitrc

$ cat .xinitrc 
#!/usr/bin/env bash
xsetwacom --set "Wacom Bamboo Craft Finger touch" Touch off
export $(gnome-keyring-daemon -r)
export $(gnome-session)

Flessibilità e precarietà

Ieri alla manifestazione “Il nostro tempo è adesso” a Torino, c’erano tante persone.

Non tantissime, ma si può considerare un buon successo, in fondo è un movimento nuovo, senza bandiera politica, che non difende se stesso ma lotta perché certe realtà in Italia non esistano più.

Ma… cosa chiede un precario? Più che altro cosa rivendica?

Ogni precario afferma che non è giusto che un lavoratore con meno diritti guadagni meno di un lavoratore più tutelato. Semplice, banale, come nel gioco, se rischi vuoi un guadagno proporzionale al rischio, altrimenti non giochi.

Il problema è quando non si può scegliere come giocare, non si può scegliere tra uno stipendio modesto ma sicuro ed uno stipendio alto ma rischioso. Tutti devono giocare rischiando tanto e guadagnando poco.

… tutti, poi qualcuno passa con la fotocopia gigante della pagina di giornale con la liquidazione milionaria di Geronzi ed allora emerge chiaramente che esiste il concetto di flessibilità, manca la volontà politica di creare lavoro flessibile. Molto più economico il lavoro precario.

Perché la scusa è sempre quella, non ci sono i soldi per garantire alle nuove generazioni i diritti delle vecchie. Solo che questi conti vengono fatti ogni anno giusto allo scadere dei termini per presentare la nuova legge finanziaria, sono mera contabilità e mancano dell’ampio ampio respiro che tutti si aspetterebbero.

E questo è un danno, per tutti:

  • E’ un danno per i giovani, perché non hanno modo di realizzarsi come persone, dipendono di genitori, non possono prendersi un mutuo, non hanno il coraggio di avere figli e di farsi una famiglia perché non possono contare sul fatto di veder apprezzate le proprie capacità.
  • E’ un danno per la pubblica amministrazione/assistenza che ai precari deve la propria operatività. Pochi contabilizzano i milioni di euro nascosti nella continua formazione dei nuovi precari che vanno a sostituire i precedenti. Quando si parlava di formazione continua non credevo s’intendesse questo.
  • E’ un danno per le imprese, che vorrebbero fare piani di sviluppo su più anni, ma non c’è Governo che non faccia leggi retroattive, marcia indietro su promesse fatte, magari scrivendo leggi convolute e incomplete. E questo non solo svantaggia le imprese italiane sui mercati, ma scoraggia anche gli investimenti stranieri.
  • E’ un danno per l’Italia, perché tanti validi giovani intraprendenti, formati a spese di tutti gli italiani, scappano e vanno a firmare brevetti, a fondare aziende, a far guadagnare un altro Stato che nulla ha speso per la loro formazione ma che ne gode i frutti.

Anche il Ministro della Gioventù Meloni condivide tutte le ragioni della protesta in una sua nota su facebook, anche se conclude in modo un po’ misero con le solite attenzioni a non farsi strumentalizzare. Forse non ha capito che non si tratta di essere strumentalizzati, si tratta proprio di essere sfruttati. E non il giorno della protesta, i 100 giorni precedenti e, se altri che sono al potere parlano senza agire, anche i 100 giorni successivi. Viene da chiedersi A chi stanno a cuore i precari?

Alcuni passanti però scuotevano la testa, non rendendosi conto che lasciare un giovane senza futuro è ancor più tremendo che togliere ad un vecchio i suoi ricordi.

F2PY rulez!

I recently found some old Fortran code from the paper Algorithm AS197 A Fast Algorithm for the Exact Likelihood of Autoregressive-Moving Average Models (Melard 1984) [pdf] [code].

I’m not very fluent in Fortran77 and I don’t like the idea of rewriting a well tested piece of code introducing new bugs, so why not give a try to F2PY?

F2PY is a tool that provides an easy connection between Python and Fortran languages. F2PY is part of NumPy.
F2PY creates extension modules from (handwritten or F2PY generated) signature files or directly from Fortran sources.

Continue…

Insanabile frattura?

Libero News – Berlusconi accusa i pm: “Violata la costituzione”

Questo tipo scrive in italiano, non è stato banalmente circuito dalla televisione, è proprio convinto di ciò che dice.

Commento 73 | Postato da premiumserramenti | 20/01/2011 alle 10.06

ATTENZIONE IL CAVALIERE E’ L’UNICA BARRIERA AL COMUNISMO

certa magistratura lo vuole distruggere per questo, perchè è l’unico ostacolo all’invasione comunista. Senza di lui, è certo, il colpo di stato strisciante e l’instaurazione della dittatura del proletariato. Espulsione certa per gli imprenditori come Marchionne. E instaurazione del fancazzismo! Ci vuole ordine, ordine e ordine. Il Cavaliere è il garante di ciò. E la prova di quanto dico è che lo vogliono arrestare perchè è stato con più donne! Alla sua età, essere stato con più donne, è dimostrazione di essere un superuomo! Capito mezzepippe?!

Queste sono le cose che non capisco.

Upgrade MacBook (13-inch, Mid 2010) Hard Disk

If you have a MacBook and you want a dual boot system, perhaps you will soon fill at least one of your partition., because unluckily HFS+ is writable only with journaling disabled from Linux (yes, this time the kernel without GNU!), and the same is for ext4 from OsX.

But this is not a problem! Storage is cheep!

The steps for a successful upgrade are:

  1. Buy a external HD (I found a Trans 500GB StoreJet2.5in, well done, easy to open, but you will have to «remove the ‘do not remove’ stickers»)
  2. Burn the latest Clonezilla live CD
  3. Follow the device-device mode and clone you disk (I had a 2GB/min average speed)
  4. Follow the official MacBook User Guide to remove the old hard-disk from the MacBook.
    1. pinzeThe guide is ok, but if you don’t have the right tool to open the 4 mounting Torx screws placed on the disk itself, you can carefully use some pliers (as I did).
  5. Swap the drives and reboot.

In my experience everything was ok, and I got a working copy of the disk with 250GB of unpartitioned space.

Now launch gdisk (GPT enabled fdisk), backup the GPT table and add the new partitions you want. I forgot to backup the GPT (you can’t backup it on the drive you are working on…), but luckily I took a picture of the partitions listing with my phone. That saved me from a complete failure :)
Now it’s the turn of LVM2 and btrfs!