Bylo vydáno nástroje pro správu balíčků APT 3.0.0 (Advanced Package Tool), který zahrnuje změny nahromaděné v experimentální větvi 2.9. Nová verze byla přijata do větve Debian Unstable a v nejbližší době bude integrována do repozitáře Debian Testing, ve kterém se vyvíjí verze Debian 13 a již se používá experimentální větev APT 2.9. Také bude přidána do balíčkové základny Ubuntu.
Mezi nejdůležitějšími změnami:
- Bylo přepracováno uživatelské rozhraní, které nyní lépe zobrazuje seznam závislostí nutných pro stažení při instalaci balíčku. Pokud dříve byly názvy balíčků se závislostmi zobrazovány jako souvislý seznam, nyní jsou rozděleny do sloupců podobně jako u nástroje „ls -C“, a různé bloky výstupu jsou zvýrazněny odlišnými barvami (například odstraňované balíčky jsou zvýrazněny červenou, zatímco instalované zelenou). Vypuštěny byly duplicitní zmínky o dalších a nových balíčkách (sekce „NEW packages“ a „additional packages“ byly sloučeny). K ovládání barevnosti byly přidány možnosti „APT::Color::*“ a „APT::Configuration::color“, stejně jako volby „—color“ a „—no-color“.

- Bylo realizováno automatické stránkování výstupu příkazů „show“, „policy“, „list“, „search“ a „showsrc“. Stránkování se aktivuje pomocí nastavení Binary::apt::Pager a aplikace pro stránkování je určena proměnnou prostředí PAGER.
- Byl implementován vylepšený engine pro rozpoznávání závislostí Solver3 (aktivuje se pomocí volby „—solver 3.0“), který při řešení konfliktů mezi závislostmi využívá algoritmus prohledávání s návratem (backtracking). V novém enginu byl také vylepšen výběr verzí, podpora pro provádění aktualizací v několika fázích byla zajištěna, výkon byl výrazně zvýšen (apt-test nyní probíhá dvakrát rychleji), přidána volba „—no-strict-pinning“ pro instalaci experimentálních verzí, byla zajištěna ochrana před ručním odstraněním nainstalovaných balíčků a zvětšena agresivita automatického odstraňování nepoužívaných závislostí. Byly přidány srozumitelnější vysvětlivky pro běžné uživatele k chybám spojeným se závislostmi.
- Používání nástroje apt-key pro správu klíčů používaných k ověřování digitálních podpisů balíčků bylo ukončeno. Nástroj apt-key byl před několika lety vyhlášen za zastaralý v souvislosti s odklonem od starého modelu ověřování integrity balíčků, ve kterém se používalo obecné úložiště klíčů (/etc/apt/trusted.gpg) a chyběla vazba klíčů na repozitáře, tj. klíč přidaný pro nějaký externí repozitář byl platný pro ověřování balíčků ve všech repozitářích. Metoda práce s klíči, která nahradila apt-key, předpokládá rozdělení úložišť klíčů pro každý repozitář (/etc/apt/trusted.gpg.d/ nebo /etc/apt/keyrings/).
- Byla přidána možnost použít nástroj sqv z projektu Sequoia pro ověřování digitálních podpisů místo volání gpgv. Do seznamu cest pro volání gpg byla přidána utility gpg-sq napsaná v jazyce Rust, která přijímá stejné argumenty jako nástroj gpg, ale napodobuje jeho funkčnost prostřednictvím Sequoia, implementace OpenPGP v jazyce Rust. Volání gpg-sq má přednost před gpg, tzn. pro použití gpg-sq místo gpg stačí nainstalovat odpovídající balíček.
- Byl přidán kryptobackend pro knihovnu OpenSSL, která nahradila GnuTLS a Gcrypt.
- Bylo zajištěno vázání typů klíčů na přípony souborů: přípona „.asc“ je spojena s ascii-armored klíči, „.gpg“ – vždy s binárními klíči, a všechny ostatní přípony souborů vyvolají chybu. Například při použití souboru s klíčem „/etc/apt/keyrings/winehq-archive.key“ jej bude třeba přejmenovat na „/etc/apt/keyrings/winehq-archive.gpg“ a opravit cestu v souboru „/etc/apt/sources.list.d/“. Byla implementována podpora pro samostatné ověřování úložišť klíčů (keyring) a provádění operace dearmor (převod klíče z ASCII-armored formátu do binárního formátu) bez vyvolání apt-key.
- Mnohé funkce byly převedeny na používání třídy „std::string“ místo „const char *“ (třída std::string_view, definovaná ve standardu C++17, efektivněji pracující se stringy díky používání referencí na existující data a vyloučení zbytečného kopírování dat, dokud není použita v kódu).
- Byl navržen abstraktní rozhraní pro práci s hashovacími funkcemi, realizované v rámci úsilí o zbavení se tvrdé vazby na jednu kryptografickou knihovnu.
- Do výstupu příkazu "apt show —full" byla přidána informace o uzamčení balíčků (pinning), získávaná z polí APT-Pin, APT-Candidate a APT-Release.
- Bylo oficiálně doporučeno pojmenovávat soubory v adresáři /etc/apt/sources.list.d/ jménem aktuálního dodavatele malými písmeny („$(dpkg-vendor --query Vendor | tr A-Z a-z).sources“).
- Do pkgDepCache byla přidána podpora transakcí a čítačů aktualizací.
- Byla přidána volba „—comment“ pro zanechání komentáře, který se uloží do historie provedených operací.
- Byla přidána podpora HTTP hlavičky Retry-After pro optimalizaci obnovy přerušených stahování.
- Do příkazu „apt list“ byla přidána volba „—target-release“.
- Byla přidána nová úroveň chyb „audit“, která se aktivuje pomocí volby „—audit“.
Dále je možné zmínit změny, které se objevily v experimentální větvi APT 2.7 (vývoj větve 2.7 plynule přešel do vývoje větve 2.9), které budou k dispozici v Debianu 13 (v Debianu 12 se používá vydání APT 2.6):
- Byla přidána podpora snímků spravovaná volbou „—snapshot“ („-S“), pomocí níž lze přistupovat k serverům repozitářů, které podporují snímky, a vybrat určité záznamy archivu repozitáře. Například, specifikováním „—snapshot 20250405T081400Z“ můžete pracovat se snapshotem stavu repozitáře, který byl zaznamenán 5. dubna 2025 v 08:14:00. Snímky se nastavují v sekci APT::Snapshot v souborech sources-list.
- Byla implementována volba „—update“ („-U“), která umožňuje automaticky spustit operaci „apt update“ pro synchronizaci indexů před otevřením cache a zpracováním sources.list při vykonávání příkazů pro instalaci nebo aktualizaci balíčků (apt install nebo apt upgrade).
- Byl přidán příkaz ‘dist-clean’ pro odstranění uložených v cache balíčků a seznamů stažených balíčků.
Zdroj: opennet.ru

