Video della webcam verde con Skype per Linux su Ubuntu

Aggiornamento: guida ancora valida per Ubuntu 9.04, Jaunty Jackalope e Ubuntu 9.10 Karmic Koala.

Scenario

La mia compagna è partita per uno stage e per mantenerci in contatto utilizziamo entrambi Skype.

Purtroppo, sin dal primo tentativo di effettuare una videochiamata, la mia webcam mostrava una laconica schermata verde. Questo ovviamente faceva adirare non poco la mia ragazza impossibilitata dal vedermi, maledicendo ogni forma di Linux. Che poi, dico io, come si fa a non amarlo il pinguino anche se ti fa arrabbiare!

skype_video_verde

Bestemmie a parte, ho tentato di vederci chiaro e sono arrivato alla radice del problema trovando una soluzione che mi permettesse di non essere lasciato in tronco.

Inoltre sarebbe stato difficile spiegare agli amici di essere stato abbandonato a causa di un bug di Ubuntu, anche se con una storia del genere finirei sicuramente in homepage su Digg

Il bandolo della matassa

In realtà tutto è ricollegato al modo in cui è cambiata la gestione delle webcam con il kernel fornito in Ubuntu Intrepid, esattamente il 2.6.27.

Come spiega Hans de Goede sul suo blog, la maggior parte delle cam supportate dal nuovo driver gspca usano una compressione per i dati basata su una varietà di algoritmi proprietari, che nessuna applicazione nativamente sa come gestire. Il vecchio driver risolveva il problema operando una conversione di formato all’interno del kernel, ma questa caratteristica è stata rimossa nella nuova versione in quanto ritenuta una soluzione potenzialmente pericolosa e non elegante.

Lo stesso Hans dunque si è rimboccato le maniche partorendo libv4l che ristabilisce l’ordine naturale delle cose.

Come fare

Purtroppo il pacchetto distribuito sul sito ufficiale di skype non è stato patchato per usare tale libreria, per cui è necessario un workaround al fine di evitare che gli utilizzatori di Linux sparsi per tutto il mondo rimangano tristemente single.

Su Ubuntu Intrepid è necessario innanzitutto installare, se già non presente, libv4l o lib32v4l ( amd64) e assicurarsi di aver prima rimosso qualsiasi precedente versione.

Il repository di Stéphane Marguet contiene una versione fresca fresca di impacchettazione, per tutte le altre distribuzioni rivolgersi al proprio spacciatore di pacchetti di fiducia o compilare da sorgente.

Il consiglio è quello di aggiungere il repository, installare o aggiornare solo libv4l e poi commentare la riga corrispondente nel sources.list per evitare che vengano coinvolti altri pacchetti nell’aggiornamento. Non inserisco il link diretto perché il software è in continua evoluzione.

Adesso è necessario procurarsi skype dai repository Medibuntu, che stando a quanto recita il changelog integra l’hack necessario al corretto funzionamento della webcam

skype (2.0.0.72-0medibuntu4) intrepid; urgency=low

* Add a hack for libv4l (LP: #260918):
- debian/skype.wrapper.in, debian/rules: rename the orig skype binary and
add a wrapper to call it with LD_PRELOAD
- debian/control: depends on lib32v4l-0 [amd64], libv4l-0 [!amd64].

-- Lionel Le Folgoc <mrpouit@ubuntu.com> Fri, 17 Oct 2008 20:25:47 +0200

ed il gioco è fatto!

L’alternativa

Se non doveste aver successo, disinstallate questa versione e installate quella del sito ufficiale e provate a far partire il programma con la seguente sintassi

LD_PRELOAD=/usr/lib/libv4l/v4l1compat.so skype

verificando poi il funzionamento della webcam. Se tutto è andato a buon fine, allora possiamo creare un piccolo script che ci permetta di evitare di scrivere manualmente la stringa di cui sopra.

I comandi da lanciare in sequenza sono

cd /usr/bin

sudo mv skype skype.real

gksudo gedit skype

Si aprirà la finestra di Gedit, all’interno della quale dovremo incollare

#!/bin/sh

LD_PRELOAD=/usr/lib/libv4l/v4l1compat.so /usr/bin/skype.real "$@"

Salviamo e rendiamo eseguibile il tutto

sudo chmod +x skype

testiamo il tutto ancora una volta, stavolta usando il normale collegamento nel menu.

L’ho scampata bella

Adesso con la mia compagna va tutto liscio, niente più litigi e la qualità della vita è migliorata sensibilmente.

skype_funziona

Per caso qualcuno ha anche una patch per sistemare i grossi bachi presenti nel sistema chiamato donna?

Banshee 1.4.1 si blocca all’avvio

AGGIORNAMENTO 23/01/2009: E’ uscita la versione 1.4.2 che risolve il bug

Prevent DAAP-related freeze by delaying initialization (BNC #450125)

dunque installandola non è più necessario eseguire i passaggi successivi.


Interfaccia di BansheeBanshee è il player audio che ho eletto come predefinito sulla mia linux box.

Purtroppo nella sua ultima incarnazione soffre di un fastidioso bug. Infatti su alcune configurazioni, compresa la mia, si blocca all’avvio e solo dopo parecchi tentativi si riesce a farlo partire normalmente.

Il problema è dovuto all’estensione DAAP che impedisce il corretto utilizzo del programma, va quindi disabilitata tramite la linea di comando dato che la finestra di Banshee risulta inaccessibile.

Su Ubuntu è sufficiente digitare

sudo mv /usr/lib/banshee-1/Extensions/Banshee.Daap.dll /usr/lib/banshee-1/Extensions/Banshee.Daap.dll.old

per rinominare il file, mentre su altre distribuzioni bisognerà trovare il percorso nel quale sono installate le librerie.

Gli sviluppatori hanno già risolto la situazione nella nuova versione di prossima uscita.

[ShotPress] Adobe issues warning for Linux users

Inversione di tendenza per Adobe, che trascura Windows e Mac per attenzionare Linux!

Infatti una nuova falla considerata critica da Secunia colpisce solo il pinguino e non i sistemi Microsoft ed Apple.

Grazie Adobe, continua così!

The flaw is in Adobe Flash Player for Linux 10.0.12.36 and Adobe Flash Player for Linux 9.0.151.0. An attacker could exploit the flaw by passing a malicious Shockwave flash SWF file. To correct the problem, Adobe issued a new version of its Flash Player for Linux.

Danish vulnerability clearinghouse, Secunia, gave the flaw a highly critical rating. Secunia said the flash player has a SWF processing error.

The issue does not affect the Macintosh or Windows versions of Flash Player, Adobe said

[Vai all’originale]

Gnome Do fa schizzare la CPU al 100%

Una delle interfacce di Gnome Do
Una delle interfacce di Gnome Do

Un recente aggiornamento di Gnome Do ( 0.6.0.1 ) ha introdotto un fastidioso bug che porta il programma a far schizzare l’uso della CPU al 100%, rallentando fortemente l’intero sistema. Il tutto è causauto dal modo in cui viene monitorata la clipboard.

Lo stesso David ammette l’errore e consiglia di non aggiornare.

Purtroppo questa stessa versione è al momento integrata all’interno dei repository di Intrepid  Ibex e, se installata, potrebbe compromettere la stabilità di centinaia di migliaia di sistemi. Sicuramente gli sviluppatori troveranno una soluzione prima della chiusura dei repository, pena l’esclusione dall’indice delle applicazioni disponibili.

In attesa dell’uscita di una nuova release ufficiale che risolva definitivamente il problema, gli assidui utilizzatori come me possono compilare l’ultimo aggiornamento del codice sorgente che include le patch per ovviare all’inconveniente.

Per scaricare i file necessari bisogna installare bazaar, il sistema di controllo di versione di Canonical, presente anche nei repository di Ubuntu

sudo apt-get install bzr

Si potrà poi lanciare il comando

bzr branch lp:do gnome-do

che si occuperà di recuperare l’ultimo aggiornamento del codice.

Le dipendenze si possono trovare sul wiki di Gnome Do a fondo pagina.

Prima di iniziare la compilazione è consigliabile disinstallare ogni installazione precedente e poi procedere con

./autogen.sh

make

sudo make install

Se non ci sono errori avremo finalmente uno Gnome Do che non crea più problemi.

Firefox 3 impalla il sistema

Fino a qualche tempo fa, durante la navigazione con Firefox 3 beta 5 su Ubuntu Hardy Heron, capitava che il browser desse segni di instabilità, di lentezza e nel contempo il disco rigido cominciasse a macinare ad elevata frequenza. Spesso sono addirittura incappato nell blocco completo del sistema per parecchi secondi.

Ma perché ciò si viene a verificare?

Le cause principali sembrano essere due:

  1. La libreria di compatibilità del sistema Pulseaudio che permette il funzionamento dell’audio con il plugin Flash, che comunque già di suo provoca rallentamenti non indifferenti.
  2. Un bug nella gestione di alcuni file da parte del browser

Per risolvere il primo in generale è sufficiente disinstallare il pacchetto libflashsupport e seguire alcuni consigli che ho dato in un precedente post per sentire ugualmente i suoni. Più radicalmente si potrebbe smettere di usare il plugin proprietario ed adottare la versione libera risparmiando tanti crash, ma non sempre ciò è possibile.

Per il secondo la questione è un po’ più complessa.

In effetti uno dei componenti alla base di Firefox effettuava troppi accessi ad un file di database dove vengono conservate alcune informazioni sulle url malevole, accessi quest’ultimi causati da una crescita troppo elevata del suddetto file che superava la cache disponibile per l’operazione rallentando dunque il processo e facendo schizzare la CPU su valori elevati.

Il problema sembra però essere stato risolto e basterà tenere aggiornato il sistema per ottenere automaticamente i pacchetti contenenti le correzioni del caso. Tuttavia c’è ancora qualcuno che lamenta gli stessi sintomi, seppur in maniera ridotta rispetto alla situazione precedente, pur avendo eseguito correttamente l’aggiornamento.

Per coloro i quali non avessero riscontrato miglioramenti esiste un’alternativa, che tuttavia potrebbe inficiare la sicurezza della navigazione.

Leggi tutto “Firefox 3 impalla il sistema”

Facciamo chiarezza sul bug che accorcia la vita degli hard disk su Ubuntu

Recentemente è tornato alla ribalta delle cronache la segnalazione di un bug su launchpad che avrebbe come risultato l’accorciamento della vita del disco rigido.

Si tratta di una scelta nella gestione del risparmio energetico dedicata sopratutto ai notebook; infatti, quando si passa dall’alimentazione tramite corrente elettrica a quella fornita dalla batteria, entrano in azione delle soluzioni atte a diminuire il consumo energetico, tra le quali quella che si occupa dello spin off dei piatti dell’hard disk, parcheggiando la testina nel suo alloggiamento a riposo.

Hard disk close_up
L’interno di un hard disk

Questo comportamento, se reiterato troppo spesso, accorcia effettivamente la longevità del disco, anche se si parla di valori limite abbastanza elevati e dipendenti dal tipo di utilizzo del computer.

Alcuni utenti di Ubuntu hanno dunque notato un aumento sconsiderato di un parametro che misura quante volte questo tipo di operazione viene eseguita, variabile che prende il nome di Load_Cycle_Count e contenuta tra i parametri S.M.A.R.T., e hanno imputato la colpa ad una cattiva implementazione della modalità di risparmio energetico chiamata laptop-mode.

In realtà la suddetta modalità è disattivata in una normale installazione di Ubuntu, è infatti necessario modificare il file /etc/default/acpi-support e settare il valore ENABLE_LAPTOP_MODE=false su true. Solo dopo aver abilitato questa funzione viene usato un metodo aggressivo per il disco.

Se ne deduce che, come affermato anche da Matthew Garret, Ubuntu Developer, Ubuntu non uccide gli hard disk visto che non cambia le impostazioni energetiche di questi ultimi, se non dietro esplicita volontà dell’utente; le modalità di risparmio energetico aggressive sono dunque da imputare a delle impostazioni usate dal firmware dell’hard disk o dal BIOS del notebook, principalmente sui portatitli ThinkPad e nei dischi marcati Hitachi.

Ma cosa succede su MacOs e Windows? La stessa cosa! Tuttavia, quando entra in azione il risparmio energetico in questi due sistemi operativi i valori non vengono lasciati di default come fa Ubuntu, ma sono bypassati a seconda delle impostazioni scelte, anche se ho letto ( non trovo il link purtroppo ) che ciò non sempre accade, adottando dunque un comportamento simile ad Ubuntu.

Insomma prendetevela con chi vi ha venduto l’hardware :P

Ma come facciamo a capire a che punto è la vita del nostro hard disk e prendere le dovute contromisure per impedire che entri in azione il risparmio energetico?

E’ necessario installare la suite smartmon che permette di visualizzare i parametri S.M.A.R.T.

sudo apt-get install smartmontools

e una volta installata digitare da terminale

sudo smartctl -a /dev/sda

che ci presenterà una serie di valori. Quelli che ci interessano sono (193) Load_Cycle_Count e (9) Power_on_seconds.

Se viene superata la barriera dei 600.000 cicli (valore puramente indicativo), se il disco ha più di due anni e mezzo o se questo valore cresce moltissimo ( nell’ordine delle centinaia ) nell’arco di 24 ore, allora è venuto il momento di cominciare ad effettuare il backup dei dati.

Per disabilitare dunque il risparmio energetico dobbiamo passare all’hard disk un comando che, pur diminuendo un po’ la durata della batteria, ne allungherà un pochino ( anche se è tutto da verificare ) la longevità

hdparm -B 255 /dev/sda

Soddisfatti?

Invece se sentite uno strano click allo spegnimento di Ubuntu, rivolgetevi all’amico divilunux :)

Ulteriori approfondimenti e fonti:

Ubuntu Demon

http://ubuntuforums.org/showthread.php?t=594796

http://ubuntuforums.org/showthread.php?t=589936

http://ubuntuforums.org/showpost.php?p=3675784&postcount=25

http://ubuntuforums.org/showpost.php?p=3675960&postcount=26

http://ubuntuforums.org/showpost.php?p=3673819&postcount=139