инструментариум за управление на пакетите (Advanced Package Tool), развиван от проекта Debian. Освен Debian и неговите дистрибуции, APT се използва и в някои дистрибуции, базирани на пакетния мениджър rpm, като PCLinuxOS и ALT Linux. Новата версия включва промените, натрупани по време на разработването на експерименталната версия 1.9.x. Новият релиз ще бъде в клона Debian Unstable и в пакетната база (в Ubuntu 19.10 е използвана експерименталната версия 1.9).
От може да се отбележи:
- В командите, приемащи имена на пакети, е добавена поддръжка на . Синтаксисът на шаблоните в основата си повтаря стила на шаблоните aptitude. Поддръжката на маски и регулярни изрази в аргументите на командата apt е прекратена, вместо тях сега трябва да се използват шаблони. Например, за извеждане на списъка с всички ръчно инсталирани пакети от секции с думите libs, perl и python:
apt list ‘~i !~M (~slibs|~sperl|~spython)’
- Добавени са командите «apt satisfy» и «apt-get satisfy», които позволяват инсталирането на пакети, необходими за удовлетворяване на зависимостите, посочени в реда, подаден като аргумент. Включително можете да изброявате няколко реда и да указвате блокове «Conflicts:» за изключване на зависимостите. Например:
apt-get satisfy «foo» «Conflicts: bar» «baz (>> 1.0) | bar (= 2.0), moo»
- Добавена е възможност за закрепване на пакета с код чрез добавяне на префикс «src:» пред името на пакета (, позволяваща добавяне на пакети от други клонове без обновяване на цялата система, например, инсталиране на пакети от testing или unstable в stable). За закрепване на всички бинарни пакети, събрани от пакета с код apt 2.0.0, можете да посочите:
Package: src:apt
Pin: version 2.0.0
Pin-Priority: 990 - В командата apt е осигурено изчакване на освобождаването на блокировката dpkg. По подразбиране при стартиране от конзолата изчакването не е ограничено по време, а в останалите случаи таймаутът е 120 секунди.
- Ако apt не успее да блокира, сега грешката се извежда с показване на името и pid на процеса, който държи lock-файла.
- Добавени са командите merge-translations и bump-abi.
- За криптографското хеширане се използват реализации на MD5, SHA1 и SHA2 от библиотеката libgcrypt.
- Усилено е разпаралелването на стартирането на обработчици и разопаковането по време на изпълнение на командата update.
- Записите, посочени в auth.conf, вече се предават само при достъп по HTTPS, за да се избегне изтичане в случай на прихващане на HTTP-соединение.
- Изискването за версия на стандарт C++ е повишено до C++14.
- В apt-helper е добавена поддръжка за указване на няколко хеша за един файл.
- Слята е библиотеката libapt-inst с libapt-pkg.
- Модернизиран е кеш форматът, който вече позволява добавяне на нови записи без нарушение на ABI. Указателите в кеша сега са статично типизирани и не могат да се сравняват с цели числа (освен 0 чрез nullptr).
- Проведена е почистване от остарели флагове и е извършено сливане на различни прототипи на функции. Премахнати са собствени реализации на алгоритмите CRC16, MD5, SHA1 и SHA2.
Източник: opennet.ru
