Guida verificata con Ubuntu: 22.04 24.04 25.10
Problemi in questa pagina? Segnalali in questa discussione
Introduzione
Questa guida contiene indicazioni sull'utilizzo e gestione dei repository PPA (Personal Package Archive) su Ubuntu e derivate.
I PPA sono dei repository software di terze parti, ospitati sulla piattaforma Launchpad, sviluppata e gestita da Canonical Ltd. Permettono ad utenti e sviluppatori (non necessariamente del team di Ubuntu) di distribuire pacchetti non presenti nei repository ufficiali. Vengono soprattutto utilizzati per:
- Installare software più recente (rilascio di pacchetti in versioni superiori a quelle presenti nei repository di Ubuntu);
- Accedere a software non disponibile nei repository ufficiali (pacchetti rimossi o di terze parti);
- Testare software in sviluppo (versioni più recenti di pacchetti prima del loro rilascio ufficiale su Ubuntu).
Per utilizzare i PPA è necessario il pacchetto software-properties-common, preinstallato. Sarà quindi necessario installarlo qualora sia stato rimosso o non sia presente (es.: su sistemi minimali, derivate non ufficiali ecc.).
Si ricorda che l'aggiunta di software di terze parti, non gestito o testato dal team di Ubuntu, potrebbe potenzialmente comportare rischi per il sistema.
Aggiungere un PPA
Al contrario di altri repository esterni, per aggiungere PPA è possibile eseguire una procedura automatizzata da linea di comando.
Digitare nel terminale un comando che rispetti la seguente sintassi:
sudo add-apt-repository ppa:utente/nome-ppa
avendo cura di sostituire «utente» con il nome del profilo launchpad del manutentore del repository e «nome-ppa» con il nome del repository, come nel seguente esempio:
sudo add-apt-repository ppa:libreoffice/ppa
Digitare il comando:
sudo apt update
verificando nell'output la presenza della nuova sorgente software e l'assenza di errori.
Se la procedura è andata a buon fine, il repository launchpad verrà salvato in un file con estensione .list o .sources all'interno della cartella /etc/apt/sources.list.d/.
Sarà quindi possibile procedere con l'installazione di uno o più pacchetti desiderati, oppure al loro aggiornamento.
Solitamente sulle pagine della piattaforma launchpad sono riportate istruzioni relative ai comandi da eseguire da terminale.
Nelle versioni recenti di Ubuntu, con il primo comando viene eseguito automaticamente l'aggiornamento della lista dei pacchetti.
Aggiungendo un repository Launchpad con il comando add-apt-repository, quest'ultimo si occuperà automaticamente di importare la chiave.
Rimuovere un PPA
Tramite ppa-purge
Lo strumento ppa-purge permette, tramite un solo comando di terminale, di effettuare contemporaneamente:
la disabilitazione di un determinato ppa dalle sorgenti software (non l'eliminazione);
- la disinstallazione di pacchetti installati e presenti nel ppa, se non presenti nei repository di Ubuntu o in altri repository esterni attivi;
- l'eventuale downgrade dei pacchetti che i ppa disabilitati forniscono in una versione più recente, se presenti in una versione precedente nei repository di Ubuntu o in altri repository esterni attivi;
- la gestione di eventuali dipendenze, evitando conflitti.
In pratica, in molti casi, ppa-purge è in grado di riportare lo stato dei pacchetti alla situazione antecedente all'aggiunta di PPA esterni. Ciò potrebbe quindi risultare molto utile nei casi in cui il PPA esterno abbia arrecato modifiche indesiderate al proprio sistema, oppure qualora lo abbia reso instabile.
Per abilitare lo strumento installare il pacchetto ppa-purge.
Una volta installato il pacchetto, è possibile utilizzarlo tramite un comando da terminale che rispetti la seguente sintassi:
sudo ppa-purge ppa:utente/nome-ppa
come nel seguente esempio:
sudo ppa-purge ppa:libreoffice/ppa
Rimozione manuale
Questa procedura di rimozione rimuove separatamente il PPA dalla lista dei repository letta dal sistema. Tuttavia non effettua la rimozione o il downgrade dei pacchetti installati, o di eventuali dipendenze. Pertanto, nella maggior parte dei casi, è raccomandata la procedura con ppa-purge.
Avviare un terminale e digitare i comandi:
sudo add-apt-repository --remove ppa:esempio/nome-ppa sudo apt update
Eliminare uno o più pacchetti precedentemente installati da PPA con il comando:
sudo apt purge nome-pacchetto
Quindi, a seconda dei casi, sarà eventualmente possibile reinstallare uno o più pacchetti con la versione presente nei repository ufficiali (o altri repository).
Gestione
Verifica
È possibile verificare la corretta abilitazione di un PPA visualizzando la sorgente software del relativo pacchetto. A tale scopo utilizzare il comando:
apt show nome-pacchetto
L'informazione desiderata sarà presente nell'output in corrispondenza della voce «APT-Sources», come nel seguente esempio:
apt show libreoffice
APT-Sources: https://ppa.launchpadcontent.net/libreoffice/ppa/ubuntu noble/main amd64 Packages
inxi è uno strumento che fornisce informazioni dettagliate sul sistema. Per elencare rapidamente tutti i repository abilitati, compresi i PPA, digitare il comando:
inxi -r
Avanzamento di versione
In caso di avanzamento di versione (es.: da Ubuntu 23.10 a 24.04), il programma di aggiornamento è impostato per disabilitare temporaneamente tutti i repository esterni, compresi i PPA.
Tuttavia è fortemente consigliato disabilitare manualmente tutti i repository esterni prima dell'avanzamento, per non incorrere in problemi (ad esempio interruzione del processo di avanzamento, conflitti di dipendenze, ecc.).
Seguire la procedura descritta di seguito:
Verificare la presenza di file relativi a repository esterni nella directory /etc/apt/sources.list.d, con estensione .list e/o .sources (es.: libreoffice-ubuntu-ppa.list oppure libreoffice-ubuntu-ppa-noble.sources).
Aprire tali file con i privilegi di amministrazione e con un editor di testo, quindi commentare il contenuto (ovvero aggiungere all'inizio di ogni riga il carattere «#»).
Anche se non raccomandato, alcuni utenti aggiungono repository esterni all'interno del file /etc/apt/sources.list. In tal caso commentare anche le righe relative a sorgenti esterne.
- Eseguire l'aggiornamento di versione.
Al termine, verificare sulle pagine web dei repository Launchpad la disponibilità di PPA per la versione di Ubuntu in uso (es.: jammy per la 22.04, noble per 24.04 ecc.).
- A seconda dei casi:
in caso di disponibilità, ripristinare i relativi file .list e/o .sources, aggiornando la versione (es: cambiare la dicitura jammy in noble per avanzamento da Ubuntu 22.04 a 24.04).
in caso di assenza di pacchetti per la versione di Ubuntu in uso, non modificare i file .list e/o .sources.
Essendo i PPA mantenuti dalla comunità, spesso la disponibilità di pacchetti per i nuovi rilasci di Ubuntu non è immediata. Si consiglia pertanto di ripetere la verifica nei mesi successivi.
In alternativa è possibile eseguire la procedura tramite lo strumento grafico Software e Aggiornamenti, togliendo la spunta da tutti i repository esterni nella scheda Altro Software prima dell'avanzamento di versione.
Consigli generali
Prima di aggiungere un PPA, verificare nella pagina web dello stesso che i pacchetti siano disponibili per la versione di Ubuntu installata (jammy, noble ecc.).
- In linea di massima, preferire l'installazione di pacchetti dai repository ufficiali di Ubuntu, optando quindi per il software nei PPA nei soli casi di reale esigenza.
- Limitare la quantità di PPA abilitati (come anche di altre sorgenti software esterne).
Esempi
A titolo di esempio, di seguito una piccola lista non esaustiva di PPA gestiti su Launchpad da vari team di sviluppo (per maggiori informazioni fare riferimento alle relative guide su questo wiki o alle pagine dei progetti):
Mozilla Team: Thunderbird, Firefox e Firefox ESR.
LibreOffice Packaging team: major release, versioni Alpha e Beta di LibreOffice.
Kubuntu Updates: Kubuntu e KDE.
Xubuntu Team: Xubuntu e Xfce.
VLC Daily Build: curati da VideoLAN team.
Python Backports: versioni di Python a cura di un team Canonical.
Canonical Kernel Team: versioni del kernel pubblicate in proposed.
Ulteriori risorse
Guida originale (in inglese)
Presentazione su Launchpad (in inglese)
Wiki Ubuntu internazionale (in inglese)
What is PPA Purge? (in inglese)
