1 10/10/2026 8 min

Su Ubuntu 20.04 la scelta più pulita per Emacs 27 dipende da cosa ti serve davvero: il pacchetto dei repository standard, se disponibile e sufficiente, oppure un repository aggiuntivo mantenuto con più frequenza. La differenza non è cosmetica: cambia il rischio di trascinarsi dietro librerie vecchie, la facilità di aggiornamento e quanto facilmente puoi tornare indietro se qualcosa non ti convince.

Se il tuo obiettivo è avere Emacs 27 su una macchina di lavoro o su un server dove fai editing remoto, conviene partire da una verifica semplice: capire quale versione è già esposta da APT e se il sistema ha già abilitato un canale affidabile per versioni più recenti. In questo modo eviti di installare a scatola chiusa un pacchetto che poi ti costringe a rincorrere dipendenze o a sistemare manualmente il path binario.

Verifica della versione disponibile

Prima di toccare i repository, controlla cosa vede APT. È il modo più rapido per capire se Emacs 27 è già installabile o se devi aggiungere una sorgente esterna.

Comando:

apt-cache policy emacs

Se vedi una riga con una versione 27.x tra i candidati, la strada è breve. Se invece compare solo una 26.x o una versione più vecchia, il sistema non ha il pacchetto che ti serve nei repository attivi. In quel caso, il problema non è Emacs in sé ma il canale di distribuzione: Ubuntu 20.04 è una LTS stabile, quindi privilegia la compatibilità rispetto all’ultima release disponibile upstream.

Puoi anche controllare i dettagli del pacchetto, così sai se stai per installare il binario grafico, il supporto terminale o i pacchetti di documentazione.

apt show emacs

Se il pacchetto non è presente o non è abbastanza recente, il passo successivo è scegliere un repository esterno conosciuto. Per Ubuntu 20.04, una delle opzioni più usate in ambito desktop e server è il PPA di Emacs mantenuto per le release recenti.

Installazione tramite repository aggiuntivo

Quando il repository standard non basta, la soluzione pratica è aggiungere una sorgente dedicata a Emacs e poi installare il pacchetto. Il vantaggio è semplice: ricevi aggiornamenti più coerenti con la versione che ti interessa, senza dover compilare a mano.

Procedura consigliata:

  1. Aggiorna l’indice pacchetti esistente.

  2. Aggiungi il repository Emacs.

  3. Ricarica i metadati APT.

  4. Installa Emacs.

sudo apt update
sudo add-apt-repository ppa:kelleyk/emacs
sudo apt update
sudo apt install emacs27

Su alcuni sistemi il pacchetto si chiama semplicemente emacs anche se il repository offre la versione 27 come default. Su altri compare esplicitamente come emacs27. Il modo corretto di non sbagliare è interrogare APT dopo aver aggiunto il repository.

apt-cache policy emacs emacs27

Se il pacchetto installato è quello giusto, il comando emacs --version deve restituire una stringa che inizia con GNU Emacs 27. È la verifica più diretta, senza dipendere dal nome del pacchetto o da eventuali alternative configurate nel sistema.

Installazione dei componenti utili per uso desktop e terminale

Emacs può funzionare bene sia in GUI sia in terminale, ma su Ubuntu 20.04 conviene installare anche i pacchetti che evitano comportamenti incompleti: supporto X11, font coerenti, tool per clipboard e, se ti serve, il supporto a GTK.

In molte installazioni bastano i pacchetti principali, ma per un ambiente di lavoro ordinato puoi aggiungere anche i seguenti componenti, se presenti nel tuo caso d’uso:

  • emacs o emacs27 per l’editor principale

  • emacs-common per file condivisi tra varianti

  • emacs-el se ti servono librerie Lisp aggiuntive

  • xclip o xsel per scambio con clipboard in sessioni X11

Verifica sempre prima la disponibilità dei pacchetti con:

apt-cache search '^emacs|xclip|xsel'

Non dare per scontato che ogni pacchetto sia utile. Su una macchina headless, per esempio, installare roba grafica senza motivo aumenta solo la superficie di manutenzione. Su un desktop, invece, saltare il supporto clipboard o i font può tradursi in un’esperienza scomoda già al primo avvio.

Avvio e prima verifica funzionale

Dopo l’installazione, la verifica minima non è aprire un file a caso: è controllare che binario, versione e dipendenze base siano coerenti.

Controlli utili:

emacs --version
which emacs
dpkg -l | grep -E '^ii\s+emacs'

Se usi l’interfaccia grafica, puoi lanciare Emacs dal menu applicazioni o da terminale con emacs. Se usi spesso SSH, la versione terminale è più pratica perché non dipende dal forwarding X. In quel caso puoi avviarlo in console con:

emacs -nw

Il parametro -nw forza la modalità testuale. È il modo più semplice per evitare problemi di display remoto, soprattutto quando lavori su host senza ambiente grafico o con sessioni SSH instabili.

Gestione del file di configurazione iniziale

Subito dopo l’installazione, il punto che conviene curare è il file di init. Su Emacs moderno il riferimento più comune è ~/.emacs oppure ~/.emacs.d/init.el. La seconda opzione è più ordinata e più facile da versionare.

Se il file non esiste, puoi crearlo così:

mkdir -p ~/.emacs.d
touch ~/.emacs.d/init.el

Un avvio minimale e sicuro può contenere solo poche impostazioni, ad esempio la disattivazione del menu iniziale e l’attivazione della numerazione delle righe. Esempio:

(setq inhibit-startup-screen t)
(global-display-line-numbers-mode 1)

Se qualcosa va storto, il rollback è banale: rinomini il file e riparti con la configurazione predefinita. È il motivo per cui vale la pena tenere il file di init pulito e incrementale, invece di buttarci dentro decine di pacchetti e personalizzazioni in un colpo solo.

Uso di Emacs 27 su Ubuntu 20.04 in scenario reale

Nel lavoro quotidiano Emacs 27 ha senso in tre scenari molto concreti. Il primo è l’editing locale di file di configurazione: DNS, Nginx, Apache, systemd, script shell. Il secondo è l’uso remoto via SSH, dove -nw ti evita dipendenze grafiche. Il terzo è l’editing su macchina di amministrazione con sincronizzazione via Git, quando vuoi un ambiente coerente tra più host.

Un esempio pratico: se devi modificare un virtual host Nginx, puoi aprire direttamente il file e lavorare con backup e diff sotto controllo.

sudo cp /etc/nginx/sites-available/example.conf /etc/nginx/sites-available/example.conf.bak
sudo emacs /etc/nginx/sites-available/example.conf

Dopo la modifica, la verifica non è aprire il browser e sperare. È testare la sintassi e ricaricare il servizio solo se il controllo passa.

sudo nginx -t
sudo systemctl reload nginx

Lo stesso principio vale per Apache, PHP-FPM, o qualunque file di configurazione gestito da systemd: modifica, verifica, poi applica. Emacs è solo l’editor; il controllo del rischio resta tuo.

Problemi tipici e come leggerli senza perdere tempo

Se l’installazione fallisce, il primo indizio utile è quasi sempre APT, non Emacs. Errori di dipendenze, repository non raggiungibili o chiavi mancanti si vedono subito con l’output del package manager.

Controlli rapidi:

sudo apt update
apt policy emacs emacs27
journalctl -xe

Se APT segnala problemi di chiavi o repository, non forzare l’installazione alla cieca. Prima verifica che la sorgente aggiunta sia quella giusta e che non ci siano voci duplicate in /etc/apt/sources.list.d/. Nel dubbio, rimuovi la sorgente aggiunta e torna allo stato precedente.

Se Emacs si avvia ma la finestra grafica non compare, il problema spesso è nel display manager, nel forwarding X o nella sessione Wayland/Xorg, non nel pacchetto. In quel caso prova subito emacs -nw: se funziona, il binario è sano e il guasto è nel layer grafico.

Se invece il comando si apre e si chiude subito, avvia Emacs in modalità debug o da terminale per vedere gli errori di inizializzazione. Un file di configurazione rotto è una causa comune, soprattutto quando si importano snippet vecchi pensati per versioni molto precedenti.

Disinstallazione e rollback pulito

Quando il repository aggiuntivo non ti serve più, il rollback deve essere semplice e reversibile. Prima rimuovi il pacchetto, poi togli la sorgente extra. L’ordine conta perché ti evita di lasciare il sistema in uno stato ambiguo, con riferimenti a pacchetti non più disponibili.

sudo apt remove emacs emacs27
sudo add-apt-repository --remove ppa:kelleyk/emacs
sudo apt update

Se avevi creato configurazioni utente in ~/.emacs.d/, puoi conservarle per un’eventuale reinstallazione oppure spostarle con un backup esplicito. Non cancellare a mano senza sapere se contengono personalizzazioni utili.

Per verificare che il rollback sia riuscito, controlla che il binario non punti più alla versione rimossa e che APT non proponga più il pacchetto dal repository extra:

which emacs
apt-cache policy emacs emacs27

Scelta pratica: pacchetto distro o repository esterno

Se ti basta un Emacs stabile e non hai esigenze specifiche della 27, il pacchetto dei repository Ubuntu resta la scelta più conservativa. Se invece ti servono funzionalità introdotte in Emacs 27 o correzioni disponibili solo in quella serie, il repository dedicato è la soluzione più lineare.

La regola operativa è questa: su una macchina personale puoi privilegiare la comodità; su una macchina condivisa o di produzione, la priorità è la prevedibilità. In pratica significa preferire il minor numero possibile di sorgenti APT, tenere il file di init minimale e verificare sempre la versione reale con emacs --version prima di considerare chiuso il lavoro.

In sintesi, installare Emacs 27 su Ubuntu 20.04 non è complicato, ma va trattato come un cambio controllato: prima osservi cosa offre il sistema, poi aggiungi solo il repository necessario, infine verifichi che il binario installato sia davvero quello atteso. È il modo più pulito per evitare sorprese e mantenere il rollback sempre a portata di mano.