Interfacce utente grafiche: X Window System, gestori di finestre e ambienti di desktop

Unix è un sistema modulare, che consiste cioè di molti componenti che possono essere scelti dall'utente (o dall'amministratore del sistema) a seconda dei gusti e delle necessità. In particolare ci sono molti livelli di software responsabili dell'interfaccia grafica, livelli che sono l'"X Window System", i gestori di finestre e gli ambienti di desktop.

L'X Window System (conosciuto anche semplicemente come X o X11) è il componente di Unix che gestisce tutti i livelli grafici di base — in particolare disegna le icone, gli sfondi e le finestre dove girano i programmi. Senza X potete usare solo l'interfaccia grafica. X11 imposta la risoluzione dello schermo, la quantità di colori disponibili, muove il cursore del mouse nello schermo e altro; serve cioè come "base" per tutti gli altri componenti dell'interfaccia utente grafica come i gestori di finestre e gli ambienti di desktop.

I gestori di finestre estendono la possibilità dell'X Window System disegnando bordi e bottoni intorno alle finestre, permettendo così all'utente di muovere, chiudere, nascondere e ridimensionare le finestre. Normalmente X11 deve essere usato sempre insieme ad un gestore di finestre perché senza uno di questi rimane quasi inutilizzabile. Esistono molti gestori di finestre per X11, dei quali i più conosciuti sono fvwm, mwm, kwm (usato da KDE), Enlightenment, e Sawfish.

Infine ci sono gli ambienti di desktop che vanno un passo avanti dei gestori di finestre in quanto aggiungono un file manager grafico dal quale potete usare il metodo "drag-n-drop" sui vari elementi, un pannello contenente i programmi maggiormente usati e un insieme di programmi e di utilità. Esistono alcuni ambienti di desktop disponibili per tutte le versioni di Unix, delle quali le più conosciute sono GNOME, KDE e CDE (che però verrà presto rimpiazzato da GNOME).

Molti ambienti di desktop usano un gestore di finestre loro proprio: ad esempio KDE contiene il suo gestore di finestre kwm (anche se è possibile usare KDE con un altro gestore di finestre nella pratica ben pochi utenti lo fanno). GNOME non ha invece un proprio gestore di finestre, il che permette ad ogni utente di usare quello già installato nel sistema. Per rendere le cose più semplici possibili normalmente il gestore di finestre Sawfish viene distribuito insieme a GNOME come predefinito ma potete cambiarlo usando il Pannello di Controllo, anche se dovete usare un gestore che sia compatibile con GNOME per poter usare alcune caratteristiche come la gestione delle sessioni, l'applet taskbar e altro.