Guida completa per aggiornare tutti i package Python su Raspberry Pi.
In qualsiasi guida relativa a Raspberry Pi viene sempre raccomandato di tenere aggiornato il sistema operativo Raspberry Pi OS in modo da avere un sistema sicuro grazie alle ultime patch disponibili.
E’ però normale nell’utilizzo installare man mano una serie di applicazioni scritte in Python. Vi siete mai chiesti quanto siano obsolete e come fare ad aggiornarle tutte in un colpo?
Aggiornare Rasperry Pi OS
Il passo preliminare è sempre quello di aggiornare la lista di pacchetti disponibili per Raspberry Pi OS:
sudo apt update
A questo punto possiamo effettivamente aggiornare all’ultima versione i pacchetti presenti sul sistema:
sudo apt upgrade
Come vedere tutti i package Python obsoleti su Raspberry Pi
Il primo passo è quello di prendere consapevolezza della situazione. Ci viene in aiuto questo comando di pip
del package installer di Python che produce in uscita l’elenco di tutti i pacchetti che sono aggiornati all’ultima versione:
python3 -m pip list --outdated
Vediamo come esempio la mia situazione imbarazzante nel momento in cui mi sono posto il problema:
A questo abbiamo solo due opzioni:
- aggiornare singolarmente i pacchetti che riteniamo più critici o importanti
- aggiornare tutti i package Python obsoleti su Raspberry Pi
Essendo pigro ho optato per la seconda soluzione.
Come aggiornare tutti i package Python su Raspberry Pi
Per aggiornare tutti i package Python su Raspberry Pi in un sol colpo ho trovato questo elegante comando su una sola linea:
python3 -m pip list --outdated --format=freeze | grep -v '^\-e' | cut -d = -f 1 | xargs -n1 python3 -m pip install -U
Ci potrebbero essere tante altre variazioni sul tema: personalmente ho provato con successo questa soluzione.
L’esecuzione dell’aggiornamento di tutti i pacchetti Python su Rasperry Pi potrebbe richiedere parecchio tempo per cui armatevi di santa pazienza:
Questo è l’ottimo risultato della verifica sui pacchetti Python obsoleti a valle dell’operazione di aggiornamento massivo sul mio Raspberry Pi:

In questo esempio il pacchetto non si è aggiornato a causa di un suo errore specifico.
Leggi tutti i miei articoli su Raspberry Pi: