next up previous contents
Next: Gestori di pacchetti Up: I pacchetti software Previous: Informazioni dei pacchetti   Indice


Formati più diffusi

Come già accennato, si sono evoluti molteplici formati di pacchetto. Le distribuzioni GNU/Linux hanno infatti intrapreso strade differenti per risolvere problemi comuni di gestione del proprio software. Questa divisione ha comportato, come spesso accade, sia un notevole dispendio di energie, sia un arricchimento dato appunto dalla diversità delle soluzioni proposte. È doveroso specificare che questo tipo di scelta è stato dettato soprattutto dalle peculia-rità di ogni specifica distribuzione: un importante ruolo è stato sicuramente giocato dalle politiche che ognuna di esse ha deciso di seguire.

I formati più maturi e diffusi sono senza dubbio il deb e il rpm nati rispettivamente su Debian e Red Hat: essi mantengono tutte le informazioni tipiche mostrate nella sezione precedente. Entrambi vengono supportati allo stato dell'arte in Debian, Fedora, Gentoo, Knoppix, Mandrake, Red Hat e SuSe.

La Slackware rimane invece fedele alla sua scelta storica: il tgz, il formato utilizzato per gli ordinari archivi di file. Tale decisione riflette il requisito di ``schiettezza'' di questa distribuzione ed apporta il vantaggio di una gestione semplificata (è infatti possibile installare un pacchetto estraendolo alla radice del file system ed eseguendo uno script noto), ma dalle potenzialità sensibilmente ridotte. Fra le mancanze più evidenti risultano l'assenza della risoluzione delle dipendenze e l'impossibilità di eseguire automaticamente programmi per preparare le operazioni di installazione o rimozione. Il nome, la versione e la release vengono desunti dal nome del pacchetto e la sua descrizione è specificata nel file install/slack-desc compreso nel sottoalbero dell'archivio.

Per visionare una tabella comparativa delle caratteristiche dei vari formati fin qui esaminati si rimanda a [Hes].

Gentoo è una distribuzione molto giovane, che nell'ultimo periodo ha raggiunto un importante bacino di utenza, soprattutto grazie alla sua scelta innovativa nella gestione dei pacchetti. La sua originalità consiste nell'adottare come predefinita la scelta di ricompilare il codice sorgente di ogni software da installare: questo tipo di approccio, simile a quello dell'utilizzo dei pacchetti sorgente, comporta un incremento di prestazioni dovuto ad una maggiore configurabilità del sistema al prezzo di un notevole aumento del tempo necessario per l'installazione di un qualunque software. Per realizzare questa tecnica, Gentoo si svincola dalla visione classica di pacchetto: essa si avvale ogni volta di un file di appoggio che contiene le istruzioni per gestire l'archivio dei sorgenti corrispondente. Tale file è uno script chiamato ebuild e grazie ad esso si riescono ad ottenere tutte le informazioni relative al software interessato.

Da evidenziare anche la possibilità di gestione dei pacchetti binari di Gentoo in formato tbz2. Essi includono le informazioni degli ebuild e il software già compilato, quindi non ottimizzato, ma pronto da installare. Il loro scopo è di velocizzare il processo di installazione su computer lenti o su una rete di computer omogenei.

L'ultima distribuzione che si ritiene opportuno menzionare è GoboLinux che, pur non essendo molto conosciuta, costituisce un esempio di lavoro correlato a questa tesi (vedi sezione 4.2). La sua particolare gerarchia di directory, infatti, permette di dedicare un sottodirectory apposito ad ogni applicazione installata nel sistema.

GoboLinux, similmente a Gentoo, si avvale degli archivi di codice sorgente rilasciati dagli stessi sviluppatori di software. Per integrarli nel sistema, ne specifica alcune direttive di compilazione nei file Recipe. L'ideatore e principale sviluppatore di GoboLinux, Hisham Muhammad, ha progettato questi ultimi file con obiettivi molto più minimalistici rispetto ai corrispondenti ebuild di Gentoo: essi sono infatti dotati di modeste potenzialità, ma d'altro canto consentono di predisporre un software per GoboLinux con uno sforzo minimo. Il programma che gestisce la compilazione del software è Compile. Di esso non si tratterà nella parte relativa ai gestori pacchetti in quanto non presenta caratteristiche rilevanti per questo progetto di tesi.


next up previous contents
Next: Gestori di pacchetti Up: I pacchetti software Previous: Informazioni dei pacchetti   Indice
2004-11-19