Blog

Sunday 13 February 2011

read/add comments (3)

Oggi mi è stato chiesto di configurare una chiavina Internet Tre su un portatile con Ubuntu 10.04. Mi ero preparato al peggio (ho avuto a che fare con una chiavina simile un po’ di tempo fa, non era stata un’esperienza piacevole), ma la mia preparazione non copriva in alcun modo quello che ho visto.

Appena inserita la chiavina, questa viene riconosciuta come unità ottica: trucco standard per dispositivi di questo tipo, che hanno una piccola memoria flash interna contenente i driver, la quale viene nascosta al sistema operativo una volta che i driver in questione sono stati installati.

Dentro la finta unità ottica ci sono una manciata di file, tra i quali spiccano due directory dal nome piuttosto interessante: Linux e Linux Driver. Interessante, dicevo, soprattutto perché sulla scatola non si accenna in alcun modo al supporto per il pinguino…

La directory Linux Driver contiene un tarball, quindi lascio perdere per il momento e guardo dentro l’altra: i file chiamati autorun.sh e install_linux sembrano essere molto promettenti.

Ovviamente a questo punto mi scontro con il fatto che nessuno dei due file è marcato come eseguibile, e non si possono cambiare i permessi in un filesystem read–only, quindi copio tutto nella home ed eseguo install_linux come root (autorun.sh è solo un piccolo wrapper).

Succede qualcosa! Lo script mi chiede dove installare il programma, proponendo una directory sotto /usr/local. Mi sembra il posto migliore dove relegare dei loschi eseguibili di dubbia qualità, quindi accetto. A questo punto salta fuori un xterm, sul quale scorrono tutta una serie di scritte – scompatta cose in /usr/src? Cerca di compilare un modulo del kernel? Sta usando in qualche modo ndiswrapper? Troppo veloce per capirlo – che si fermano pochi secondi dopo, lasciando una scritta rossa che mi suggerisce di installare make, gcc e gli header del kernel.

Torno in cima all’xterm, cercando di capire cosa diavolo abbia cercato di fare quello script, e ho appena iniziato a leggere quando compare una finestra, grande, con davanti una più piccola: quest’ultima i chiede il codice PIN, ed entrambe sembrano uscite da Windows XP, decorazioni comprese.

Inserisco il PIN, pigio “Connetti”, e dopo pochi istanti si apre il browser. Si è effettivamente connesso.

Faccio un giro veloce in /usr/local, e trovo 47MB di librerie varie, compresa una copia delle Qt, più tutta una serie di eseguibili, sia in formato 32bit che 64bit, più altri file binari divisi in directory che hanno il nome di distribuzioni. Ubuntu e Debian brillano nella loro assenza.

Conclusione: la chiavina funziona. Non so come faccia. Non credo di volerlo sapere. Quello che posso fare è sperare in un futuro in cui i produttori di hardware, invece di pagare persone per stare chiuse in uno scantinato a scrivere in totale segretezza loschi driver per Linux, paghino li stessi tizi per mantenere quei driver all’interno del kernel, e lascino perdere gli orrendi programmini personalizzati per passare a Network Manager, eventualmente contribuendo allo sviluppo delle funzionalità che ritengono necessarie.