Tuesday, September 7, 2010

Fedora 14, features missing?

I was not the only one noticing there are not many features in Fedora 14 compared to the former releases, but I wondered how much this is anecdotal and how much it's reality.

So I actually counted them from the Feature pages and here is the results:

Fedora  8     21 Features
Fedora  9     30 Features
Fedora 10     28 Features
Fedora 11     52 Features !!!
Fedora 12     42 Features
Fedora 13     38 Features
Fedora 14     20 Features

So it is true Fedora 14 is the least feature equipped release we had since Fedora 8, and it's even worse if you compare side by side the features list and note how many features in the current release are just updates to (admittedly important) packages like boost or python.

So why did it happen? I think it all boils down to Red Hat Enterprise Linux 6:  the exact date for the release is not known but surely it should be nearing by now; add to this the notion most features we have in the distro carry a @redhat.com owner and the result starts to be less surprising.

So, how bad is this? Surely, other distributions could potentially move on and improve while we are "distracted" in another direction, raising the bar for us to really "lead the advancement of free, open software and content".

However it is also true more and more reports indicate Red Hat employees as leading contributors in upstream projects so, in a way, we can afford being lazy for a release because upstream would slow down as a result and we could catch up easier.

So what's the truth? I am not sure, but if it is the latter, maybe RHEL 6 also delayed GNOME 3, or at least contributed to...

Monday, September 6, 2010

Test Day: systemd

Domani, 7 Settembre, si svolgerà un Test Day un po' speciale, quello per systemd. Speciale in primo luogo perchè si svolge di martedì invece dell'usuale giovedì, e perchè lo spostamento è determinato dall'importanza che questa feature riveste per Fedora 14.

Infatti systemd è una alternativa al sistema di init SysV, tradizionalmente usato da diverse distribuzioni, e Upstart, il progetto di Canonical che lo ha di recente rimpiazzato. Dato il compito delicato che svolge (init è il primo processo che il kernel attiva al boot, e si occupa di far partire tutti i servizi necessari per avere un sistema funzionante) è chiaro che difetti in questo componente possono provocare malfunzionamenti dell'intero sistema.

Per questo motivo si è deciso di anticipare il Test Day a prima della Beta Change Deadline (la data oltre la quale non è più possibile aggiornare i pacchetti che compongono la Beta) ed usare i risultati di questa giornata per decidere se systemd sarà il sistema di init di default per Fedora 14 o sarà necessario rimanere col vecchio sistema.

Al solito, è molto semplice partecipare a questa giornata di test. La pagina sul wiki ha tutte le istruzioni sui quelli da eseguire, e come minimo ci si può limitare a scaricare l'immagine Live più recente e provare ad avviarla sul proprio hardware.

Ovviamente sarà anche molto utile utilizzare il nuovo sistema per configurare i servizi che si attivano di solito (ovviamente in questo caso sarà necessaria una installazione completa) assicurandosi che systemd rimanga in grado di avviare e stoppare il sistema regolarmente.

Il maintainer del progetto e il team QA saranno disponibili nel canale #fedora-test-day su Freenode, per chi non fosse pratico su questa pagina si trovano le istruzioni per usare IRC.

Wednesday, September 1, 2010

Tornano i Test Days: Preupgrade

La versione Alpha di Fedora 14 è stata rilasciata da pochi giorni ed è giunto il momento di far partire i Test Days, determinanti per assicurare che il rilascio finale soddisfi i criteri di qualità che ci si aspetta.



Il primo Test Day in programma riguarda Preupgrade, uno degli strumenti consigliati per eseguire l'aggiornamento da una versione di Fedora all'altra, la cui peculiarità è quella di determinare la lista dei pacchetti necessari all'aggiornamento scaricandoli nel sistema corrente.

In questo modo, l'utente è libero di continuare il proprio lavoro fino a che l'upgrade vero e proprio non è pronto per essere eseguito.

Il Test Day si svolgerà domani, Giovedì 2 Settembre, focalizzandosi sugli scenari di aggiornamento più comuni:
  • aggiornamento dalla 13 (/boot con spazio a sufficienza)
  • aggiornamento dalla 12 (/boot con spazio insufficiente)
  • aggiornamento dalla command line
Come al solito, chiunque sia interessato troverà sviluppatori e membri del team QA nel canale IRC #fedora-test-day.


Ci vediamo lì!

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!