Rilascio del gestore di pacchetti APT 3.0.0

È stato rilasciato lo strumento per la gestione dei pacchetti APT 3.0.0 (Advanced Package Tool), che incorpora le modifiche accumulate nel ramo sperimentale 2.9. Questa nuova versione è stata accettata nel ramo Debian Unstable e verrà integrata nel repository Debian Testing, attualmente in fase di sviluppo per il rilascio di Debian 13, e in cui è già utilizzato il ramo sperimentale APT 2.9. Sarà inoltre aggiunto al database dei pacchetti di Ubuntu.

Tra le modifiche più importanti:

  • Interfaccia utente rinnovata, che offre una visualizzazione più chiara dell'elenco delle dipendenze necessarie per il download durante l'installazione di un pacchetto. Mentre in precedenza i nomi dei pacchetti con dipendenze venivano visualizzati in un elenco continuo, ora sono suddivisi in colonne nello stile dell'utilità «ls -C», e i vari blocchi di output sono evidenziati con colori distintivi (ad esempio, i pacchetti da rimuovere sono evidenziati in rosso, mentre quelli da installare in verde). Sono state rimosse le menzioni duplicate di pacchetti aggiuntivi e nuovi (le sezioni «NEW packages» e «additional packages» sono state unite). Sono state aggiunte impostazioni «APT::Color::*» e «APT::Configuration::color» per la gestione dei colori, insieme alle opzioni «—color» e «—no-color».
    Rilascio del gestore di pacchetti APT 3.0.0
  • È stata implementata la suddivisione automatica in pagine per i comandi di output "show", "policy", "list", "search" e "showsrc". La suddivisione in pagine può essere attivata tramite l'impostazione Binary::apt::Pager, mentre l'applicazione per la gestione delle pagine è determinata dalla variabile d'ambiente PAGER.
  • È stato implementato un motore di risoluzione delle dipendenze migliorato, Solver3 (attivabile tramite l'opzione "—solver 3.0"), che utilizza un algoritmo di ricerca con backtracking per risolvere i conflitti tra le dipendenze. Il nuovo motore offre anche un miglioramento della scelta delle versioni, supporta l'esecuzione di aggiornamenti in più fasi, ha notevolmente aumentato le prestazioni (apt-test ora è eseguito due volte più velocemente), è stata aggiunta l'opzione "—no-strict-pinning" per l'installazione di versioni sperimentali, è stata implementata una protezione contro la rimozione manuale di pacchetti installati, e l'aggressività nella rimozione automatica di dipendenze non utilizzate è stata aumentata. Sono state aggiunte spiegazioni più chiare per gli errori legati alle dipendenze, affinchè siano comprensibili agli utenti comuni.
  • L'uso dello strumento apt-key per gestire le chiavi utilizzate per la verifica delle firme digitali dei pacchetti è stato interrotto. L'utilità apt-key era stata dichiarata obsoleta alcuni anni fa a causa del passaggio da un modello di verifica integrità pacchetti che utilizzava un deposito chiavi comune (/etc/apt/trusted.gpg) e mancava il vincolo delle chiavi ai repository. Ciò significava che una chiave aggiunta per un repository di terze parti era valida per la verifica dei pacchetti in tutti i repository. Il nuovo metodo di gestione delle chiavi prevede la separazione degli archivi chiavi per ciascun repository (/etc/apt/trusted.gpg.d/ o /etc/apt/keyrings/).
  • È stata aggiunta la possibilità di utilizzare l'utilità sqv del progetto Sequoia per verificare le firme digitali invece di chiamare gpgv. È stata aggiunta al percorso di chiamata a gpg l'utilità gpg-sq, scritta in Rust, che accetta gli stessi argomenti di gpg, ma imita il suo funzionamento attraverso Sequoia, l'implementazione OpenPGP in Rust. La chiamata a gpg-sq ha la priorità su gpg, quindi per utilizzare gpg-sq al posto di gpg è sufficiente installare il pacchetto corrispondente.
  • È stato aggiunto un backend crittografico per la libreria OpenSSL, che sostituisce GnuTLS e Gcrypt.
  • È stata garantita l'associazione dei tipi di chiave alle estensioni dei file: l'estensione «.asc» è associata a chiavi in formato ascii-armored, «.gpg» sempre a chiavi binarie, mentre tutte le altre estensioni di file genereranno un errore. Ad esempio, utilizzando un file di chiave «/etc/apt/keyrings/winehq-archive.key», sarà necessario rinominarlo in «/etc/apt/keyrings/winehq-archive.gpg» e correggere il percorso nel file in «/etc/apt/sources.list.d/». È stata implementata la possibilità di verificare autonomamente i keyring e di eseguire l'operazione dearmor (conversione della chiave in formato ASCII-armored in formato binario) senza fare riferimento a apt-key.
  • Molte funzioni sono state convertite per utilizzare la classe «std::string» invece di «const char *» (il classe std::string_view definito nello standard C++17, che gestisce in modo più efficace le stringhe grazie all'uso di riferimenti ai dati esistenti ed evita la copia dei dati fino a quando non è necessario nel codice).
  • È stata proposta un'interfaccia astratta per lavorare con gli hash, realizzata nell'ambito del lavoro per eliminare il vincolo rigido a una sola libreria crittografica.
  • Nell'output del comando «apt show —full» è stata aggiunta l'informazione sul pinning dei pacchetti, ottenuta dai campi APT-Pin, APT-Candidate e APT-Release.
  • È ufficialmente raccomandato nominare i file nella directory /etc/apt/sources.list.d/ con il nome del fornitore corrente in minuscolo («$(dpkg-vendor —query Vendor | tr A-Z a-z).sources»).
  • A pkgDepCache è stato aggiunto il supporto per le transazioni e i contatori degli aggiornamenti.
  • È stata aggiunta l'opzione «—comment» per lasciare un commento, salvato nella cronologia delle operazioni eseguite.
  • È stato aggiunto il supporto per l'intestazione HTTP Retry-After per ottimizzare il ripristino dei download interrotti.
  • Nel comando «apt list» è stata aggiunta l'opzione «—target-release».
  • È stato aggiunto un nuovo livello di errore «audit», attivabile tramite l'opzione «—audit».

Inoltre, meritano di essere evidenziate le modifiche presenti nella versione sperimentale del ramo APT 2.7 (lo sviluppo del ramo 2.7 è passato senza soluzione di continuità allo sviluppo del ramo 2.9), che saranno disponibili in Debian 13 (in Debian 12 è in uso la versione APT 2.6):

  • È stata aggiunta la supporto per gli snapshot, gestita con l'opzione «—snapshot» («-S»), che consente di accedere a server di repository che supportano snapshot e scegliere uno stato specifico dell'archivio del repository. Ad esempio, specificando «—snapshot 20250405T081400Z», è possibile lavorare con uno stato dell'archivio del repository registrato il 5 aprile 2025 alle 08:14:00. Gli snapshot si configurano nella sezione APT::Snapshot nei file sources-list.
  • È stata implementata l'opzione «—update» («-U»), che consente di avviare automaticamente l'operazione «apt update» per sincronizzare gli indici prima di aprire la cache e trattare sources.list durante l'esecuzione dei comandi di installazione o aggiornamento dei pacchetti (apt install o apt upgrade).
  • È stato aggiunto il comando ‘dist-clean’ per rimuovere i pacchetti e le liste dei pacchetti salvati nella cache.

Fonte: opennet.ru

Acquista un hosting affidabile per siti con protezione DDoS, server VPS VDS 🔥 Acquista un hosting affidabile per siti con protezione DDoS, server VPS VDS | ProHoster