Oggetto di questa tesi sono lo studio, la progettazione e la realizzazione di PackageFS: un file system virtuale che si propone di facilitare e potenziare la gestione dei pacchetti software in tutte le distribuzioni GNU/Linux. Per presentare questo lavoro e comprenderne le motivazioni è necessario approfondire il contesto in cui nasce.
Nel gennaio del 1984 Richard Matthew Stallman fonda il progetto GNU (``GNU's Not Unix'') con lo scopo di creare un sistema operativo alternativo a UNIX di cui la compagnia telefonica AT&T inizialmente deteneva i diritti. La proprietà del codice sorgente impedisce agli utenti di esaminare l'effettiva programmazione del sistema e vincola gli sviluppatori con un contratto di non diffusione delle informazioni visionate. Perciò Stallman si fa promotore della freelosophy, la cosiddetta filosofia del Software Libero: inizia concretamente a sviluppare i programmi basilari necessari alla costruzione del nuovo sistema GNU e rilascia il proprio codice sotto la licenza GPL (``General Public License'') di cui viene riportata la versione attuale nell'appendice C. La novità di questa licenza consiste in un'interpretazione non comune del diritto d'autore, che viene questa volta utilizzato per concedere una serie di diritti all'utente finale invece che sottrarli1.1[Foua]. In particolare:
Sebbene questi programmi offrano ulteriori funzionalità rispetto ai sistemi operativi maggiormente diffusi, essi spesso rivelano una mancanza di attenzione alla facilità di utilizzo. Molte volte infatti i programmatori lavorano molto per aggiungere nuove caratteristiche al prodotto, ma più raramente si concentrano sulla sua utilizzabilità. Con la diffusione delle distribuzioni software del sistema operativo GNU/Linux, comunemente noto come Linux, si sta tuttavia verificando un notevole ampliamento del target di utilizzo del Software Libero, che sta dirigendosi velocemente verso il mercato degli utenti meno esperti.
È proprio questo il contesto in cui nasce PackageFS. Rivolgendosi sia agli amministratori che all'utenza ordinaria, questo software si propone di facilitare la gestione dei sistemi GNU/Linux, incrementandone le potenzialità.