Competizione tra distro

Leggevo questo articolo che parla di “competizioni tra distro”.

Credo abbia centrato il punto dicendo che è facile finire a comparare mele e arance.

Anche le distro desktop hanno target molto diversi: Ubuntu ha gli utenti inesperti come obiettivo primario, mentre Fedora punta più agli sviluppatori ed agli studenti esperti. OpenSUSE punta… mmm agli utenti di SUSE credo (mi spiace, ma non son mai riuscito a farmela piacere!).

Poi ci sono distro come Mandriva che, a parte i problemi economici che ha avuto, va forte in Francia. Tra l’altro stanno sviluppando cose interessanti per il desktop semantico, anche se gli manca quella scintilla che ai tempi di Mandrake 8 e 9 ne aveva fatto la distro di riferimento per l’ambito desktop. A quei tempi innovarono molto dal lato usabilità e anche a livello di sistema (con l’introduzione di urpmi).
Ci sono varie altre distro più o meno grandi con target “locale”, mi viene in mente, ad esempio, RedFlag, cinese, ma ce ne sono decine.

Poi? Mint è una distro onesta, basata su Ubuntu (o Debian, se preferite), con qualche tool personalizzato ben piazzato. Trovo che sia una valida alternativa a Ubuntu, anche se ovviamente la community è molto più piccola.

PCLinuxOS non mi ha particolarmente colpito e non capisco bene quale sia il target. Puppy è ben fatta, anche se non mi piace affatto che giri totalmente da root e la trovo un po’ limitata come distro desktop, però gira ottimamente anche su sistemi più datati.

Io continuo a vivere col dubbio su quale distro installare. Probabilmente a questo punto attenderò Fedora 15 e andrò con l’opzione btrfs + snapshot.

Altri candidati per il posto di "Distro ideale"

Leggendo le news (leggo un sacco di news per lavoro), oggi mi sono imbattuto in un articolo che parlava del progetto CUT, Constantly Usable Testing, una release Debian che punta ad avere una Debian “rolling release” con un sistema sempre funzionante e, allo stesso tempo, sempre aggiornato. Celestiale, nèvvèro?

Questa si aggiunge a Linux Mint Debian Edition, che avevo già adocchiato e prometteva più o meno le stesse cose.

In alternativa, stavo pensando che potrei continuare ad utilizzare Fedora, ma spostarmi sul repository rawhide e usare gli snapshot btrfs per avere un versioning del sistema, in modo da poter sempre tornare ad un sistema funzionante.

Alla ricerca della distro perfetta

Non è un caso che esistano tante distribuzioni nel mondo Linux: la libertà si vede anche in questo continuo lavorìo di packaging e personalizzazione, alla ricerca della distribuzione perfetta.

Nella mia ormai lunga storia di utente Linux, ho usato quasi tutte le distribuzioni principali: partii con Mandrake 5.3 (KDE 1.0 e kernel 2.0), passando poi a Red Hat 6 e poi 6.2. Una volta presa un po’ di confidenza col sistema, passai a Slackware. Su Slack imparai ad usare veramente Linux: scomparsi i tool automatici di RH/MDK, la configurazione procedeva a colpi di vi sui file di conf in /etc e nella mia home.

Poi ho usato Debian e Gentoo, fino a quando mi sono trovato a dover disporre di un PC fisso “sempre funzionante” su cui lavorare. Nel frattempo era nata Ubuntu: basata su Debian (testing e unstable), con tutta una serie di automatismi per la configurazione automatica.

L’anno scorso, per lavoro, sono passato a Fedora, ma ora la Fedora 13 che ho installato sta arrivando alla fine del supporto ed è ora di pensare a cosa usare come prossima distribuzione.

Ho provato Fedora 15 alpha con Gnome 3 e sto usando Ubuntu 11.04 alpha con Unity, ma nessuna delle due mi è piaciuta in modo particolare.

Non mi piacciono le distribuzioni da “aggiornare” ogni 6 mesi, preferisco le “rolling release”, però questo si scontra in parte col bisogno di un sistema sempre utilizzabile: Debian Testing per quanto sia un po’ più stabile della unstable, è comunque passibile di Errori Catastrofici[tm].

La nuova OpenSUSE (11.4) ha un’opzione “rolling”, però SuSE non mi è mai piaciuta (nulla di personale! è una cosa così, a pelle). L’altra che ho adocchiato è Mint Debian Edition, anch’essa rolling e basata su Debian Testing, però è una distro giovane e la community mi sembra ancora piuttosto piccola (le uniche due con la massa critica, al momento, mi sembrano quella Debian/Ubuntu e quella di Fedora).

Rimango fortemente indeciso.

Fedora 15 Alpha con Gnome 3

Oggi ho partecipato alla seconda giornata di testing di Gnome 3. L’ISO di test è uscita in ritardo, quindi non sono riuscito a completare tutti i test, ma comunque il team di Fedora prende molto sul serio il termine “alpha”: il software è ancora molto instabile e presenta parecchi bug.

Della checklist presente sul sito sono riuscito a testare solo i common shortcuts (ok), la data (fail, nel pannello in cima mi rimaneva una data diversa da quella di sistema), il keyring (fail, non salvava la passphrase WPA), il volume (ok per le funzioni del volume, ma totem è crashato e mentre installavo i pacchetti per debuggarlo è crashato tutto il sistema, probabilmente un problema di OOM killer).

Per come la vedo io, dato il passaggio di Fedora a Gnome 3 (uscita prevista a Maggio) e di Ubuntu a Unity (fine aprile), nei prossimi mesi prevedo ancora più utenti per Mint (che userà un’interfaccia stile Gnome 2, anche se basata sulle librerie della 3), che comunque ha già superato anche Fedora nella classifica di Distrowatch. In alternativa, alcuni utenti si potrebbero spostare su KDE (e quindi OpenSUSE, di cui è appena uscita la 11.4).

Vedremo, per il momento mi sento di puntare più su Mint.

Gnome 3, di suo, è abbastanza interessante. L’ambiente è totalmente accelerato 3D (c’è un fallback per le schede che non lo supportano) e l’aspetto grafico è ancora più minimalista di quello visto fino ad oggi. Tra l’altro, per default non esistono i tasti di riduzione a icona e massimizzazione della finestra. Per massimizzare si può trascinare la finestra in alto e verrà allargata a tutto schermo o, meglio, “a tutto workspace”. I virtual desktop, infatti, ora si chiamano “workspace” e su questo concetto vogliono basare l’usabilità della piattaforma. A me non dispiace, dato che sono abituato ad usare un desktop per ogni applicazione (o giù di lì), ma immagino che parecchia gente si possa trovare spaesata.

Altra cosa poco bella è che per default chiudendo il monitor del portatile viene attivata la sospensione e non c’è modo di cambiare questa impostazione dall’interfaccia grafica, solo tramite gconf (che ora ha cambiato nome e si chiama gsettings). Non esattamente l’ideale per i newbie.

Il nuovo design di Nautilus è molto pulito e lineare, piacerà un sacco a chi viene da OS X (già, ma chi viene da OS X?).

Nelle prossime settimane vedrò di rimetterci le mani!

Specified key was too long MySQL error creating index

I stumbled across this error while coding my Ultimate RSS Reader[tm]. I was using (admittedly, not the best choice) TEXT fields to store URI for RSS feeds. Anyway, my table looked like this:

mysql> create table simple (ID integer auto_increment primary key 
not null, content text) charset utf8 engine innodb;

Query OK, 0 rows affected (0.07 sec)

mysql> show create table simple;
+--------+---------------------------------------------------------+
| Table  | Create Table                                            |
+--------+---------------------------------------------------------+
| simple | CREATE TABLE `simple` (
  `ID` int(11) NOT NULL AUTO_INCREMENT,
  `content` text,
  PRIMARY KEY (`ID`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 |
+--------+---------------------------------------------------------+
1 row in set (0.00 sec)

And my create index query (and error) was something along these lines:

mysql> create unique index `content_idx` on `simple` (content(256));
ERROR 1071 (42000): Specified key was too long; max key length is 767 bytes

I didn’t understand why 256 (or more) characters were too much for the 767 bytes limit on InnoDB tables. Turns out that UTF8 could use up to 4 bytes for each character, and MySQL 5.1 uses by default 3 bytes for each character (this has changed in MySQL 5.5), then the limit for this value is 255 characters, or 255*3 bytes and (255*3) is less than 767.

By the way, since MySQL 5.0 the VARCHAR data type could host up to 64k characters, so the correct data type for storing your URIs could be something like VARCHAR(4096).

Many thanks to Patrizio, Stardata CEO for clarifying this issue to me!