I problemi della nuova Ubuntu Hardy 8.04

ubuntu_logoIl 24 aprile è uscita la tanto attesa Ubuntu Hardy 8.04, sicuramente una tra le distribuzioni piu’ utilizzate al momento dagli utenti Linux.

Trattandosi di una release LTS (long time support, ovvero supportata per ben 3 anni dal rilascio) ci si aspettava che potesse trattarsi di una distribuzione assai stabile. Dopo circa una decina di giorni di utilizzo (avevo iniziato a fare l’upgrade pochi giorni prima dell’uscita ufficiale), devo purtroppo confermare le lamentele che molti stanno sollevando riguardo a questa versione.

Molti fattori, tra cui l’instabilità di alcuni applicativi che sono stati distribuiti con questa versione, non ancora pronti al momento del rilascio, hanno fatto si che questa versione risulti una delle piu’ instabili tra tutte quelle che sono state rilasciate fino ad ora.

Qui di seguito farò una panoramica dei problemi che ho personalmente riscontrato, premettendo che si tratta ovviamente di una lista di problemi non completa e relativa in particolare ai miei due PC sul quale ho avuto modo di testarla:

Firefox 3: la versione di Firefox distribuita al momento del rilascio della Ubuntu 8.04 è la versione 3.0 beta 5. Pur trattandosi di una versione “abbastanza stabile”, non è del tutto esente da alcuni fastidiosi bug, in particolare si riscontrano frequenti crash del browser quando si cerca di visualizzare video tramite il plugin Flash.

PulseAudio: il nuovo sistema di gestione audio adottato da Ubuntu, sebbene abbia sulla carta ottime funzionalità, non è ancora compatibile con la maggior parte dei programmi in circolazione. Questo fa si che, ad esempio, anche programmi opensource come il client ufficiale di Last.Fm abbiano problemi nel gestire la periferica audio, dando spesso il seguente errore “The Alsa soundsystem is either busy or not present”.

Bluetooth: fino alla versione 7.10 di Ubuntu riuscivo ad inviare correttamente le foto dal mio Nokia N73 al PC. Con la 8.04 non ci riesco piu’. Il bug è già stato segnalato e riguarda anche altre persone oltre a me.

Clock Applet: cliccando sull’orologio per visualizzare il calendario, va in crash gnome-panel. Anche questo bug è stato già segnalato ed era stato “fixato” prima del rilascio della versione definitiva, ma ancora il problema non è risolto.

Evolution e Google Calendar: una delle funzioni tanto attese sarebbe dovuta essere la possibilità di integrare Calendar di Google nel calendario di Evolution. Purtroppo si tratta di un altro bug ancora non risolto.

Nvidia ed il driver proprietario: sia a me che ad altre persone, non viene installato correttamente il drive  r proprietario aggiornato, dopo aver aggiornato ad Ubuntu 8.04. Io ho risolto disattivando il modulo e reinstallandolo da capo. Il problema però non è ancora stato risolto.

Tracker: il tool di indicizzazione integrato nella Ubuntu, non indicizza correttamente il contenuto di alcuni file. Cercando ad esempio “Benedetta” vengono fuori anche i documenti che contengono “Benedetto”. Anche questo bug è stato segnalato.

In conclusione, non mi sento proprio di consigliare, almeno per il momento, l’aggiornamento alla Ubuntu 8.04 a meno che non si voglia contribuire attivamente alla segnalazione dei bug, in modo che il team di sviluppo di Ubuntu possa correggerli al piu’ presto. Non ci resta che attendere la versione 8.04.1 che uscirà prossimamente e conterrà i principali fix dei bug che sono stati segnalati in questi giorni.

Diventa un Ubuntero!

ubuntu_circle_trasparent.pngVorrei segnalarvi un sito web che forse molti di voi conosceranno già: https://launchpad.net/
è un sito messo in piedi dalla Canonical (la società che finanzia lo sviluppo di Ubuntu) e presenta alcune funzioni molto interessanti:

Code: è possibile pubblicare qui una propria patch ad un programma, in modo che gli sviluppatori la possano unire al codice ufficiale.

Bugs: un modulo per segnalare i bug della Ubuntu e degli altri progetti che sono registrati su launchpad.

Blueprints: il posto dove pubblicare le proprie idee, proposte di miglioramento, suggerimenti sulle future funzionalità ecc…. della Ubuntu. Se avete un’idea originale per una funziona che ancora non è presente in Ubuntu, potete scriverla qui.

Translations: consente di visualizzare le stringhe ed i messaggi non ancora tradotti dei programmi di Ubuntu e permette di scrivere la propria traduzione, nella lingua desiderata. La traduzione verrà poi sottoposta ad approvazione. Un ottimo modo per suddividersi il lavoro di traduzione dei vari programmi.

Answers: qui è possibile fare domande (come su un forum) e rispondere alle domande che ancora sono “open” (cioè senza risposta).

Tutti i contributi che date in una di queste sezioni, vanno ad aumentare il vostro “karma”, ovvero la notorietà, la popolarità e l’importanza all’interno della community di Ubuntu.

La mia pagina ad esempio è questa: https://launchpad.net/~andy80

Se non vi sentite ancora dei programmatori esperti, ma volete comunque far qualcosa per migliorare la Ubuntu (o altri progetti registrati in quel sito), quello è il posto giusto nel quale spendere un po’ del proprio tempo.

Scratchbox on Ubuntu Hardy troubleshooting

Yesterday I upgraded from Ubuntu 7.10 to the new 8.04 RC and I “broke” my Scratchbox installation. I tried to install it again and I had still some problems logging into Scratchbox and installing the SDK.

The I found this page: http://suppressingfire.livejournal.com/35277.html

that explain how to fix these problems. In particular if you get this kind of error trying to log into Scratchbox:

Inconsistency detected by ld.so: rtld.c: 1192: dl_main: Assertion `(void *) ph->p_vaddr == _rtld_local._dl_sysinfo_dso' failed!

You can fix it in this way:

echo 0 | sudo tee /proc/sys/vm/vdso_enabled

You can read the complete fix in my updated wiki: http://www.ptlug.org/wiki/Howto_Installing_Maemo_SDK_4

Installing Maemo SDK 4 HowTo Updated

I’ve updated my previous howto that explain how to install Maemo SDK 4 (Chinook). The other howto was written when Maemo SDK 4 Beta was out, now it’s updated to 4.0.1 version of the SDK.

You can find it, as usual, on this wiki: http://www.ptlug.org/wiki/Howto_Installing_Maemo_SDK_4

If you have any suggestion or if you want to give me any idea to improve this howto, please leave me a comment.

Using GtkIconView in Python: a small tutorial

In these days I was looking for a simple tutorial to understand how to use GtkIconView, but the only thing I was able to find was an example in PHP-Gtk. So I decided to translate it in Python language, thinking it would be useful for other people trying to use that Gtk control. You can find the code here:

import gtk
import gobject

DEFAULT_IMAGE_WIDTH = 100

# Main Window setup
window = gtk.Window(gtk.WINDOW_TOPLEVEL)
window.set_size_request(400,  240)
window.connect("destroy", gtk.main_quit)
window.set_title("Python GtkIconView Test")

# Add a VBox
vbox = gtk.VBox()
window.add(vbox)

# Setup Scrolled Window
scrolled_win = gtk.ScrolledWindow()
scrolled_win.set_policy(gtk.POLICY_AUTOMATIC, gtk.POLICY_AUTOMATIC)

# Setup ListStore to contain images and description
model = gtk.ListStore(gtk.gdk.Pixbuf,  gobject.TYPE_STRING)

# Create a tuple with image files
immagini = ("BD786-TFR.jpg", "guido_sottozero.jpg", "IMG_0056.JPG", "movies_card.jpg")

for im in immagini:
    try:
        pixbuf = gtk.gdk.pixbuf_new_from_file(im)
        pix_w = pixbuf.get_width()
        pix_h = pixbuf.get_height()
        new_h = (pix_h * DEFAULT_IMAGE_WIDTH) / pix_w   # Calculate the scaled height before resizing image
        scaled_pix = pixbuf.scale_simple(DEFAULT_IMAGE_WIDTH, new_h, gtk.gdk.INTERP_TILES)
        model.append((scaled_pix, im))
    except:
        pass

# Setup GtkIconView
view = gtk.IconView(model)  # Pass the model stored in a ListStore to the GtkIconView
view.set_pixbuf_column(0)
view.set_text_column(1)
view.set_selection_mode(gtk.SELECTION_MULTIPLE)
view.set_columns(0)
view.set_item_width(150)

# Pack objects and show them all
scrolled_win.add(view)
vbox.pack_start(scrolled_win)
window.show_all()

gtk.main()

The important thing to notice is that you have to store all the images in a GtkListStore and pass it to the GtkIconView as “model” parameter. I hope this example is clear. If you have any question, please comment this post and I’ll try to answer.

This is a screenshot of this example:

gtkiconview