NOME¶
apt-listchanges - Mostra i nuovi elementi del changelog dagli
archivi dei pacchetti Debian
SINOSSI¶
apt-listchanges [[opzioni...]] {[--apt] |
[pacchetto.deb...]}
DESCRIZIONE¶
apt-listchanges è uno strumento per vedere quali
modifiche sono state effettuate in una versione più recente di un
pacchetto Debian rispetto alla versione presente sul sistema.
Questo viene fatto estraendo gli elementi rilevati sia da
NEWS.Debian che dai file changelog[.Debian], che solitamente si trovano in
/usr/share/doc/pacchetto degli archivi dei pacchetti Debian.
Si tenga conto che nell'installazione standard se
apt-listchanges viene eseguito durante gli aggiornamenti come plugin
di APT, esso mostra solo gli elementi contenuti in NEWS.Debian. Questo
può essere cambiato con l'opzione --which.
Se il contenuto dei changelog viene mostrato e il pacchetto
non contiene il file changelog[.Debian],apt-listchanges esegue
apt-get changelog per scaricare i changelog dalla rete. Questo
comportamento può essere disattivato con l'opzione
--no-network.
Dato come argomento un insieme di nomi di file (o leggendolo da
apt quando viene usata l'opzione --apt), apt-listchanges
analizza i file (supponendo che siano degli archivi di pacchetti Debian)
cercando gli elementi rilevanti dei changelog, che mostra in un resoconto
raggruppandoli per pacchetto sorgente. I gruppi sono ordinati per urgenza
del cambiamento più urgente e poi per nome del pacchetto. I
cambiamenti in ciascun gruppi di pacchetti sono mostrati nell'ordine in cui
compaiono nel changelog, cioè dal più recente al più
vecchio; si può usare l'opzione --reverse per cambiare questo
ordine.
OPZIONI¶
apt-listchanges mette a disposizione le seguenti opzioni
per controllare il suo comportamento. La maggior parte di esse ha un proprio
equivalente nel file di configurazione, si veda oltre "FILE DI
CONFIGURAZIONE" per i dettagli.
--apt
Legge i nomi dei file da una pipe con un formato speciale
(fornita da apt) anziché dalla riga di comando e applica alcune opzioni
specifiche per apt dal file di configurazione. La pipe deve essere in formato
"version 2", indicato come tale nella configurazione di apt.
-v, --verbose
Mostra ulteriori informazioni (di solito non desiderate).
Per esempio visualizza un messaggio quando sta per essere installata una
versione di un pacchetto uguale o precedente a quella già presente
oppure quando un pacchetto sta per essere installato per la prima volta.
-f, --frontend
Seleziona l'interfaccia da usare per visualizzare le
informazioni all'utente. Attualmente le interfacce sono:
pager
Usa il comando
sensible-pager(1) per mostrare
l'output. Il comando usa la variabile d'ambiente PAGER per scegliere il
paginatore preferito. È possibile usare l'opzione "pager" nel
file di configurazione per indicare un pager specifico da usare con
apt-listchanges.
browser
Mostra un changelog in HTML con collegamenti ipertestuali
per bug e indirizzi di posta elettronica usando il comando
sensible-browser(1), che usa la variabile d'ambiente BROWSER per
scegliere il browser preferito. È possibile usare l'opzione
"browser" nel file di configurazione per indicare un browser
specifico da usare con apt-listchanges.
xterm-pager
Usa il paginatore preferito per mostrare l'output, ma lo
fa in un xterm (usando l'alternativa x-terminal-emulator impostata) in
background. Questo permette, se lo si desidera, di proseguire l'aggiornamento
e continuare a leggere i changelog. Si può cambiare l'emulatore di
terminale da usare con l'opzione di configurazione "xterm".
xterm-browser
La combinazione logica di xterm-pager e browser. Adatta
solo ai browser testuali.
text
Trasferisce l'output su stdout, senza pause.
syslog
Invia l'output al syslog. Si raccomanda di disabilitare
l'opzione titled.
log
Aggiunge l'output a un file di log, con un processo
facoltativo di filtro. È raccomandata la disabilitazione dell'opzione
titled.
mail
Invia un messaggio di posta elettronica all'indirizzo
specificato con --email-address e non visualizza i changelog.
gtk
Apre una finestra gtk per mostrare i changelog. Richiede
che sia installato python3-gi.
none
Non fa nulla. Questa opzione può essere usata per
evitare l'esecuzione di apt-listchanges quando è configurato per essere
eseguito automaticamente da apt.
Si tenga conto che apt-listchanges cerca di passare a un utente
senza privilegi prima di lanciare comandi nelle interfaccie
"browser", "xterm-browser" e "xterm-pager".
Tuttavia, attualmente questo non vale per l'interfaccia "pager".
Si veda anche, oltre, "VARIABILI D'AMBIENTE".
--hide
Per le interfacce che lo supportano (attualmente solo
gtk), come impostazione predefinite nasconde la finestra.
--email-address=indirizzo
Oltre a mostrarlo, invia una copia del changelog
all'indirizzo specificato. Per inviare il changelog senza mostrarlo, usare
questa opzione con l'interfaccia speciale 'mail'.
--email-format={text|html}
Se è attivato l'invio di copie per posta
elettronica (si veda --email-address, sopra), questa opzione indica se
il messaggio deve essere inviato come buon vecchio testo semplice (che
è il comportamento predefinito) o come html con collegamenti
cliccabili, che potrebbe essere più comodo per chi usa client grafici
per la posta elettronica.
-c, --confirm
Una volta che il changelog è stato mostrato,
chiede all'utente se proseguire o meno. Se l'utente sceglie di non proseguire
viene restituito valore di uscita non-nullo e apt si interrompe.
-a, --show-all
Anziché tentare di visualizzare gli elementi del
changelog più recenti della versione del pacchetto attualmente
installata, mostra tutti gli elementi dei changelog per tutti i pacchetti.
Questo è utile per vedere l'intero changelog di un .deb prima di
estrarlo.
-n, --no-network
Nei rari casi in cui un pacchetto binario (o meglio,
nessuno dei pacchetti binari compilati dallo stesso pacchetto sorgente che
vengono trattati insieme come gruppo) non contiene un file di changelog, come
comportamento predefinito apt-listchanges esegue apt-get
changelog per scaricare i changelog dai server di rete forniti
generalmente dal sistema operativo in uso. Questa opzione disattiva tale
comportamento, cosa che potrebbe essere utile ad esempio per sistemi dietro un
firewall.
--save-seen=file
Questa opzione fa sì che apt-listchanges tenga
traccia dell'ultima versione di un pacchetto per la quale è stato
mostrato il changelog, in modo da evitare di mostrare nuovamente lo stesso
changelog durante esecuzioni successive. Il database viene memorizzato nel
file specificato. Specificare 'none' per disattivare questa funzione.
--dump-seen
Mostra nello standard output il contenuto del database
dei changelog già mostrati, come una lista di linee che consistono nel
nome del pacchetto sorgente e la sua versione visualizzata più recente,
separati da uno spazio. Questa opzione richiede che sia noto il percorso del
database dei changelog già mostrati: specificarlo con l'opzione
--save-seen oppure passare l'opzione --profile=apt per leggero
dal file di configurazione.
--since=versione
Questa opzione fa sì che apt-listchanges mostri
gli elementi successivi alla versione specificata. L'unico altro argomento che
può essere passato con questa opzione è il percorso di un file
.deb.
--latest=N
Questa opzione fa sì che apt-listchanges mostri
solo gli ultimi N elementi.
--which={news|changelogs|both}
Questa opzione seleziona se devono essere mostrate le
notizie (da NEWS.Debian et al.), i changelog (da changelog.Debian et al.) o
entrambi. Il comportamento predefinito è mostrare solo le notizie se
apt-listchanges è eseguito come plugin di APT, altrimenti mostrare
entrambi.
--help
Visualizza informazioni sulla sintassi.
-h, --headers
Queste opzioni fanno sì che apt-listchanges
inserisca prima del changelog di ciascun pacchetto un'intestazione che mostra
il nome del pacchetto stesso e, se più di uno o diversi dal nome del
pacchetto sorgente, i nomi dei pacchetti binari che stanno per essere
aggiornati.
--debug
Visualizza alcune informazioni per il debug.
--profile=nome
Seleziona un profilo. nome corrisponde a una
sezione nel file /etc/apt/listchanges.conf. Il valore predefinito è
"apt" quando avviato da apt e "cmdline" negli altri
casi.
--log=file
Selezionare il file a cui l'interfaccia log aggiunge
l'output. Quello predefinito è /var/log/apt/listchanges.log. L'opzione
filter può essere usata per modificare l'output prima che sia aggiunto
al file di log. Assicurarsi che per questo file sia impostata la rotazione dei
log.
--filter=comando
Selezionare il comando da usare per filtrare l'output
prima che esso sia aggiunto al file di log dall'interfaccia log. L'output di
apt-listchanges sarà inviato allo stdin di questo comandoe il
suo stdout sarà aggiunto al file di log. Separare gli argomenti con
spazi e proteggere gli argomenti contenenti spazi. Il comando non sarà
eseguito usando la shell a meno che la shell sia inclusa nel comando: sh -c
'date; cat'.
--reverse
Mostra gli elementi del changelog in ordine
inverso.
--ignore-apt-assume, --ignore-debian-frontend
Disabilita l'uso di un'interfaccia non interattiva in
alcuni dei casi descritti nella sezione "SOSTITUZIONE AUTOMATICA
DELL'INTERFACCIA", sotto.
--titled, --untitled
Attiva o disattiva il titolo all'inizio dell'output
--select-frontend
Sceglie il frontend in modo interattivo. Questa opzione
serve principalmente per effettuare test, non la si usi.
SOSTITUZIONE AUTOMATICA DELL'INTERFACCIA¶
Per una migliore integrazione con gli strumenti esistenti per la
gestione dei pacchetti, apt-listchanges prova a rilevare se
l'aggiornamento dei pacchetti viene effettuato in maniera non interattiva
cambia automaticamente il proprio frontend in 'text' quando si verifica
una qualnque delle condizioni seguenti.
•lo standard output non è collegato al
terminale;
•l'opzione
--quiet (
-q) è
passata ad
apt-get(8) (o ad
aptitude(8)); tuttavia, quando
questa opzione è usata più di una volta apt-listchanges cambia
l'interfaccia a 'mail';
•l'opzione
--assume-yes (
-y)
è passata ad
apt-get(8);
•the DEBIAN_FRONTEND environment variable
is set to "noninteractive", and APT_LISTCHANGES_FRONTEND is
not set.
Per ragioni di compatibilità all'indietro, le ultime due
verifiche dell'elenco possono essere disabilitate con le impostazioni
"ignore_apt_assume=true" o "ignore_debian_frontend=true"
nel file di configurazione (si veda oltre "FILE DI
CONFIGURAZIONE"), oppure usando le opzioni a riga di comando
--ignore-apt-assume o --ignore-debian-frontend.
Si noti inoltre che l'interfaccia "mail" è
già non interattiva, quindi non viene mai cambiata in
"text".
Inoltre, quando la variabile d'ambiente DISPLAY non
è impostata apt-listchanges sostituisce le interfacce basate
su X11 ("gtk", "xterm-pager", "xterm-browser")
con "pager" (o "browser" nel caso di
"xterm-browser").
Please note that these silent frontends are not subject to the
overrides: syslog, log.
FILE DI CONFIGURAZIONE¶
apt-listchanges reads its configuration from
/etc/apt/listchanges.conf. The file consists of sections with names
enclosed in square brackets. Each section should contain lines in the
key=value format. Lines starting with the "#" sign
are treated as comments and ignored. Files named name.conf in the
/etc/apt/listchanges.conf.d directory are also read in the same way and
override values set in the main configuration file.
Sezione è un nome di profilo che può essere
usato come argomento per l'opzione --profile.
La configurazione della sezione "apt" può essere
gestita da debconf(7) e la maggior parte delle sue impostazioni
può essere cambiata con l'aiuto del comando dpkg-reconfigure
apt-listchanges.
Key è il nome di un'opzione a riga di comando
(escluse --apt, --profile, --help) con i trattini
iniziali rimossi e i trattini rimanenti sostituiti con trattini bassi, per
esempio "email_format" o "save_seen".
Value rappresenta il valore dell'opzione corrispondente.
Per le opzioni a linea di comando che non accettano argomenti, come
"confirm" o "headers", value dovrebbe essere
impostato a "1", "yes", "true" o
"on" per attivare l'opzione o a "0", "no",
"false" o "off" per disattivarla.
Inoltre, key può essere una delle seguenti parole
chiave: "browser", "pager" o "xterm". Per
queste opzioni di configurazione value deve essere il nome di un
comando appropriato, eventualmente seguito dai suoi argomenti, ad esempio
"pager=less -R".
Esempio 1. File di configurazione di
esempio
[cmdline]
frontend=pager
[apt]
frontend=xterm-pager
email_address=root
confirm=1
[custom]
frontend=browser
browser=mozilla
The above configuration file specifies that in command-line mode,
the default frontend is "pager". In apt mode, the xterm-pager
frontend is default, a copy of the changelogs (if any) should be emailed to
root, and apt-listchanges should ask for confirmation. If apt-listchanges is
invoked with --profile=custom, the browser frontend will be used, and invoke
mozilla.
AMBIENTE¶
APT_LISTCHANGES_FRONTEND
Interfaccia da usare.
APT_LISTCHANGES_USER, SUDO_USER, USERNAME
Il valore della prima variabile esistente tra le
precedenti viene usata come nome dell'utente a cui cambiare quando vengono
eseguiti i comandi lanciati dalle interfacce "browser",
"xterm-browser", e "xterm-pager" se apt-listchanges
è lanciato da un utente con privilegi.
DEBIAN_FRONTEND
Se impostato a "noninteractive" può
forzare apt-listchanges a usare un'interfaccia non interattiva, per i
dettagli si veda la sezione "SOSTITUZIONE AUTOMATICA
DELL'INTERFACCIA".
BROWSER
Used by the browser frontend, should be set to a command
expecting a file: URL for an HTML file to display.
PAGER
Usato dall'interfaccia pager.
APT_HOOK_INFO_FD
Descrittore di file da cui leggere i nomi dei pacchetti
in modalità --apt. (Si suppone che Apt imposti questa variabile
al numero di un descrittore di file appropriato).
INIZIALIZZAZIONE DEL DATABASE DEI CHANGELOG GIÀ MOSTRATI¶
Quando apt-listchanges viene installato per la prima volta
o aggiornato da una vecchia versione che non usava il formato attuale per il
database dei changelog già mostrati, esso attiva un timer di
systemd, apt-listchanges.timer, che ogni ora cerca di attivare
apt-listchanges.service, il quale analizza i changelog e i file NEWS
di tutti i pacchetti installati e usa il loro contenuto per popolare il
database dei changelog già mostrati.
Pre-popolare il database in questo modo fa sì che
apt-listchanges sia eseguito più rapidamente, perché
non deve analizzare i changelog e i file NEWS dei pacchetti attualmente
installati durante gli aggiornamenti quando determina quali elementi
mostrare.
Dovrebbe essere sufficiente popolare il database una sola volta
per ogni macchina, dato che da quel momento in poi apt-listchanges
aggiorna automaticamente il database ad ogni aggiornamento. Quindi, dopo che
il servizio è eseguito con successo fino al completamento il timer
viene disattivato automaticamente.
Se per qualche ragione si ritiene che il database dei changelog
già mostrati di apt-listchanges sia incompleto o impreciso, lo
si può ricostruire cancellando /var/lib/apt/listchanges e poi
eseguendo systemctl start apt-listchanges.service. Si tenga conto che
questo viene eseguito in primo piano fino al completamento.
FILE¶
/etc/apt/listchanges.conf
File di configurazione.
/etc/apt/listchanges.conf.d/*.conf
File di configurazione che sostituiscono i valori
impostati in quello principale.
/etc/apt/apt.conf.d/20listchanges
File usato per registrare apt-listchanges nel sistema di
apt.
/var/lib/apt/listchanges
Database usato per il "già-visto".
AUTORE¶
apt-listchanges è stato scritto da Matt Zimmerman
<mdz@debian.org>
Il manutentore attuale è Jonathan Kamens
<jik@kamens.us>