Monday, August 30, 2010

Mediawiki search and replace automation in python

As part of my translator work for Fedora I noticed a page with a stylistic issue with an Italian word, 'obbiettivo' which is better spelled as 'obiettivo'. Now, I quickly edited the page and the few other found by searching for the term, then realized there were a lot more with the plural form, so it was not practical to do the work manually.

Fortunately, Mediawiki (the program powering Fedora's wiki) has a very good API, which is accessible with python; in particular in Fedora we ship python-mwclient and it turned out I could search and replace all occurrences in 10 lines of code. Magic!

If someone is wondering, here is the script I used:

#!/usr/bin/python
# Wiki Search And Replace

import mwclient, re
site = mwclient.Site('fedoraproject.org')
site.login( 'login', 'password' )

pages = site.search('obbiettivi', what='text')

for pagedata in pages:
    page = site.Pages[ pagedata['title'] ]
    text = page.edit()
    newtext = re.sub( r'([o|O])bbiettivi', r'\1biettivi' , text )
    page.save( newtext, summary='Obbiettivo->Obiettivo', minor=True)


I found the mwclient documentation a bit lacking so the hard part was figuring out the value for some parameters in the function calls. At the end, I mostly relied on the help(mwclient) content, available from the python interpreter, in conjunction with the Mediawiki API reference you get by pointing the browser to http://fedoraproject.org/w/api.php

Wednesday, August 25, 2010

Cisco Anyconnect VPN in Fedora 12

Recentemente ho avuto la necessità di collegarmi ad una VPN basata su una soluzione Cisco AnyConnect.

Come spesso accade, il mio committente non aveva idea di come effettuare il collegamento da Linux e visto che il client ufficiale (scritto in Java) non sembrava neanche partire sulla mia Fedora 12 mi sono rivolto alla mailing list di NetworkManager per avere lumi.

Il risultato è stato molto positivo: per prima cosa, ho scoperto che il mio era un classico problema PEBKAC, ovvero che il plugin necessario alla connessione non era installato, ma andava aggiunto al sistema con un:

yum install NetworkManager-openconnect

purtroppo anche dopo l'aggiunta non riuscivo a connettermi correttamente in quanto la connessione falliva senza che mi venissero chieste login e password.

Anche questa volta il problema è stato rapidamente identificato e risolto riavviando il sistema in modo che NetworkManager potesse utilizzare correttamente il plugin appena installato.

Come ciliegina sulla torta, Dan Williams è intervenuto mettendo mano al codice per risolvere il problema (riportato sia in Ubuntu che in Fedora) una volta per tutte!

Tuesday, August 24, 2010

Flash in Fedora 64 bit

Non è una notizia nuova, ma mi sono da poco ritrovato a dover fare questa procedura e penso che possa essere utile anche a qualcun altro.

Se avete una versione di Fedora a 64bit (in "gergo", x86_64), fino a poco tempo fa c'era la possibilità di usare un plugin Flash della Adobe a 64bit, sperimentale ma, almeno per quello che mi riguarda, perfettamente adeguato.

Recentemente, questa versione a 64 bit è stata rimossa, e anche la pagina da cui era scaricabile non fornisce molti dettagli a proposito, lasciando gli utenti senza aggiornamenti per i problemi di sicurezza emersi in seguito.

Vediamo quindi come risolvere il problema installando l'ultima versione del plugin a 32 bit sul nostro sistema a 64.

Per prima cosa, scaricate il plugin dal sito Adobe; consiglio la variante "tar.gz" che contiene il solo file libflashplayer.so e va scompattato in /usr/lib/mozilla/plugins (attenzione, non /usr/lib64/mozilla/plugins!).

Poi installate il supporto per il plugin a 32bit con:
yum install nspluginwrapper.x86_64 \
nspluginwrapper.i686 alsa-plugins-pulseaudio.i686 \
libcurl.i686


infine, fate partire Firefox e verificate che il plugin sia stato correttamente caricato inserendo "about:plugins" nella barra degli indirizzi.

Saturday, August 7, 2010

Fedora 14: seconda iterazione per lo sfondo di default

Una nuova iterazione per quello che diventerà lo sfondo di default di Fedora 14 è stata prodotta, e sarà presente nella versione Alpha la cui disponibiltà è prevista per il 17 Agosto.

Ovviamente, fin d'ora è possibile fornire commenti e suggerimenti per migliorare l'immagine: a tale scopo è stata preparata una pagina nel wiki.

In alternativa, potete lasciare un commento a questa notizia, nel qual caso mi occuperò di inoltrare il vostro parere al Design Team.

Tuesday, August 3, 2010

Blog redesign

Come avrete notato, ho speso un po' di tempo per dare una rinfrescata al design del blog, cosa piuttosto semplice grazie al nuovo Template Designer messo a disposizione da Blogger.

Se avete commenti o suggerimenti, metteteli pure qua sotto :)

PS. visto che mi è stato già chiesto, il font usato è "Molengo", recentemente rilasciato da Google insieme ad altri "web fonts"