2011/02/22

Ubuntu 11.04 (Natty Narwhal) & Linux 2.6.38

Un'opzione interessante di Ubuntu, a partire dalla prossima release, è relativa alla configurazione del kernel: non ho mai nascosto di detestare le impostazioni predefinite di Canonical, eppure con Linux 2.6.38 qualcosa cambierà. Con la separazione da EMBEDDED=y persino Ubuntu ha attivato l'opzione EXPERT=y, che offre più controllo.

Rispetto alle versioni precedenti di Ubuntu, s'intende: il grosso limite è sulle funzioni compilate a propria insaputa, se non si configura manualmente un nuovo kernel, come built-in. È comunque un passo in avanti. Caricando o, mettendo i moduli in blacklist si può ottenere un sistema migliore nelle possibilità della distribuzione.

Le funzioni che richiedono espressamente di essere compilate come moduli sono relativamente poche: l'unico modo di modificarle è la creazione di un pacchetto del kernel aggiornato, compromettendo potenzialmente l'update dell'intero sistema. È la struttura di Ubuntu che non prevede a differenza di altre un lavoro di fino sul kernel.

XZ Utils, Git & Gentoo / 1

Partendo da XZ Utils, comincio un progetto di revisione dei “pacchetti” di Gentoo: nelle mie intenzioni, dovrebbe portare a qualcosa di molto vicino a un fork della distribuzione. L'obiettivo è quello di riscrivere i pacchetti (definisco così i file con estensione .ebuild), perché consentano il controllo totale della configurazione.

Probabilmente, creerò un overlay gestito da Git (su GitHub?) allo scopo. È un lavoro immane, forse persino inutile e che può interessare un numero limitato di utenti. Addirittura di Gentoo. Non garantisco né la riuscita del progetto, né una roadmap di riferimento. Principalmente, mi serve per ottenere un sistema pressoché perfetto.

La scelta è ricaduta su XZ Utils per varie ragioni: anzitutto, è una dipendenza necessaria a elevare il livello di EAPI da 2 a 3. Quindi, l'algoritmo LZMA2 è entrato nel kernel — tra le opzioni built-in di compressione. Seguirò la Gentoo-way, eliminando patch ed eventuali variabili user-defined. Il più «vanilla» possibile, insomma.