Da zero a desktop: Desktop From Scratch

18/06/2026

Dopo averne spiegato il significato, alcuni termini veranno abbreviati per comodità:

Desktop From Scratch

Credo di aver coniato un nuovo termine: Desktop From Scratch.
Prendendo in prestito la terminologia di LFS (Linux From Scratch), ma limitandomi a modificare una distribuzione preconfezionata, quello che intendo è partire da una installazione minimale e costruirci sopra un desktop su misura.

La GUI è solo uno strato

Uno dei principali vantaggi dei sistemi operativi open source è quello di poterne potenzialmente studiare il funzionamento in ogni loro parte.
Spinto da passione e curiosità, con il tempo ho imparato che l'interfaccia grafica (o GUI, dall'acronimo Graphical User Interface) è solo un livello aggiuntivo al di sopra della riga di comando (o CLI, che sta per Command Line Interface). Niente di più, niente di meno.

Tutto è un server

Cosa sono le cosidette distribuzioni per server? Nient'altro che distro prive di pacchetti per dare vita ad un ambiente grafico, di solito d'intralcio in contesti sistemistici.
Mi piace pensare che con Linux ogni macchina possa svolgere dinamicamente sia il ruolo di client che di server.
Ancora una volta abbiamo la possibilità di scegliere: in questo caso possiamo decidere se destinare il nostro sistema operativo a mansioni inerenti l'ambito desktop o server; o entrambi, perché no.
Soprattutto, siamo liberi di implementare la nostra personale interpretazione di desktop, al di sopra delle fondamenta di un'installazione in stile server.

Componenti principali

I principali componenti di un ambiente desktop (dal basso verso l'alto), si possono riassumere in:

Il server grafico, che si appoggia ai driver grafici, è la struttura portante sulla quale poter costruire qualsiasi tipo di interfaccia grafica. La definizione è in realtà più affine a XOrg, in quanto Wayland è di fatto un protocollo.

Un display manager (o login manager) è il componente che si occupa dell'autenticazione e l'accesso degli utenti, tipicamente la schermata in cui si inserisce la propria password prima di arrivare al desktop.
Sebbene generalmente integrato nell'esperienza utente, non è indispensabile, ma contribuisce alla creazione di una sessione più completa (ad esempio impostando automaticamente delle variabili d'ambiente corrette), e risulta molto utile se si hanno installati più window manager o desktop environment (si, è possibile!).

Un window manager gestisce le finestre su schermo.
Al di sotto del server grafico, è l'unico elemento imprescindibile (o quasi) per l'esecuzione di applicazioni con GUI.
Può lavorare autonomamente, con il vantaggio di una grande parsimonia nell'uso delle risorse hardware, o essere integrato in un desktop environment. Se può esistere un WM senza DE, al contrario un DE si appoggia sempre ad un WM e/o compositor.
Su XOrg, un WM ha bisogno di un compositor aggiuntivo per gli effetti grafici (ombreggiature, animazioni...).
Su Wayland il termine compositor assume invece un significato differente: quello di un'entità che unisce le funzionalità di un WM e quelle di un compositor XOrg.

Un WM è un software completo, ma piuttosto scarno.
Opzionalmente si possono aggiungere uno o più pannelli (la classica barra dove, tra le altre cose, poter ridurre ad icona i programmi) e un lanciatore per elencare ed aprire le applicazioni disponibili senza passare dal terminale. Molti pannelli dispongono di plugin per integrare la funzionalità di lanciatore.

Il desktop environment è un gruppo di numerosi pacchetti che racchiude tutti gli elementi atti alla creazione di un ambiente grafico completo. Oltre ai componenti sopra elencati (tranne il server grafico), un DE include generalmente:

Non si vive di solo DE

È facile pensare che sia il DE l'elemento che contraddistingua una distribuzione rispetto ad un'altra, ma non è propriamente così.
Seppure nella maggioranza dei casi un DE costituisca l'interfaccia primaria lato utente, e forse influenzati dalla chiusura dei sistemi operativi commerciali, tendiamo a dimenticare come sia pur sempre un elemento interscambiabile o sacrificabile.
La configurazione grafica di una particolare distribuzione, inoltre, è sempre potenzialmente riproducibile su un'altra; anni di distro hopping per nulla?

Le shell

Si, ma non quelle come Bash o Fish.
Un'alternativa credibile al tradizionale DE è quella di optare per un WM accompagnato da una shell. In ambito GUI una shell può essere definita come una versione ridotta di un DE, pensata per affiancare un WM o soprattutto un compositor Wayland.
Progetti recenti come Noctalia o Dank Material Shell, racchiudono al loro interno elementi tipici di un DE insieme a strumenti ottimizzati per la personalizzazione.

Tutto il resto non è noia

A seconda della tipologia di distribuzione, sarà necessario procedere all'installazione di ulteriori pacchetti che esulano dall'interfaccia grafica.
Distribuzioni come Arch Linux accompagnano l'utente nella configurazione delle principali funzionalità (bootloader, driver, audio, bluetooth...), mentre altre richiedono un intervento manuale.

Wayland necessita inoltre di un seat manager, cioè un software che gestisce lo scambio di dati tra il protocollo grafico e le periferiche di input/output e di cosidetti portali per l'interazione grafica di alcuni tipologie di programmi (XDG Desktop Portal e i suoi backend).
È buona norma configurare anche un'istanza di D-Bus per la comunicazione tra i processi e la gestione della sessione utente (session management).
L'uso di distribuzioni "mainstream" basate su systemd tende a semplificare notevolmente questi aspetti automatizzando le procedure di seat e session management, a scapito di personalizzazione e leggerezza.

Il ricing

Il DFS è una pratica spesso associata al ricing. Dicasi ricing l'insieme delle procedure atte alla creazione di un desktop completamente personalizzato dal punto di vista estetico e funzionale.
Dalla scelta dei componenti fino ai temi di sistema, dai font agli effetti; un sistema operativo Unix-like è l'ideale per dare sfogo alla creatività.
DFS, tuttavia, non vuol dire necessariamente ricing estremo.

Ricapitolando

Molte distribuzioni GNU/Linux, anche le più insospettabili, lasciano all'utente la possibilità di crearsi un proprio desktop da zero.
A fronte di una maggiore complessità iniziale, il DFS apre le porte all'apprendimento, oltre che ad una personalizzazione impensabile altrove.

Di questi tempi, non è da sottovalutare nemmeno l'impatto sulle prestazioni.
Senza necessariamente rinunciare al piacere visivo, partire da zero aggiungendo solo il necessario è un buon metodo per sfruttare al massimo le risorse dei vostri dispositivi.

[user@dajelinux ~]$ dajelinux --per-approfondire

[user@dajelinux ~]$ dajelinux -wtf

Hai notato qualche errore?
Pensi che sia stato poco chiaro, magari dando per scontato un termine o un concetto che non riesci a capire?
Vuoi proporre un approccio differente all'argomento?
Contattami per feedback e chiarimenti, l'open source è anche questo!