aptitude — это интерфейс к APT , менеджеру пакетов Debian . [4] Он отображает список пакетов программного обеспечения и позволяет пользователю интерактивно выбирать пакеты для установки или удаления. Он имеет поисковую систему, использующую гибкие шаблоны поиска. Первоначально он был создан для Debian, но также появился в дистрибутивах на основе RPM .
aptitude основан на библиотеке компьютерных терминалов ncurses , с помощью которой он предоставляет интерфейс, включающий некоторые элементы, обычно встречающиеся в графических пользовательских интерфейсах (GUI) (например, раскрывающиеся меню ).
В дополнение к интерфейсу ncurses, aptitude предоставляет обширный интерфейс командной строки (CLI). Несмотря на то, что aptitude является одним исполняемым файлом, он предоставляет функции командной строки, аналогичные функциям семейства инструментов, предоставляемых APT (apt-get, apt-cache, apt-listchanges и т. д.). aptitude также эмулирует большинство аргументов командной строки apt-get , что позволяет ему выступать в качестве полной замены apt-get . В прошлом рекомендовалось не использовать aptitude и apt-get взаимозаменяемо. Теперь это не так, поскольку обе программы теперь правильно отслеживают и совместно используют общий список пакетов, которые были автоматически установлены для удовлетворения зависимостей. [5]
aptitude был создан в 1999 году. В то время были доступны два других APT-подобных интерфейса на основе терминала : программа dselect , которая использовалась для управления пакетами в Debian до создания APT, и программа console-apt, проект, который считался прямым наследником dselect . aptitude был создан для экспериментов с более объектно-ориентированным дизайном программирования , чем тот, который использовался в console-apt, в надежде, что это приведет к созданию более гибкой программы с более широким набором функций.
Первый публичный релиз aptitude был версией 0.0.1 от 18 ноября 1999 года. Он был очень ограничен: он имел возможность просматривать список доступных пакетов, но не мог фактически загружать или устанавливать какие-либо пакеты. В версии 0.0.4a эта возможность была добавлена, со многими другими улучшениями; эта версия была включена в Debian 2.2, кодовое имя: potato .
В конце 2000 года весь модуль пользовательского интерфейса был переписан; была создана новая архитектура , основанная на библиотеке обратного вызова libsigc++ и концепциях современных наборов инструментов для виджетов, таких как GTK+ и Qt . Это позволило интерфейсу стать гораздо более похожим на GUI, чем он был ранее, с такими функциями, как выпадающие меню и всплывающие диалоги . Одна из самых необычных функций aptitude , крошечная реализация Minesweeper , была добавлена в это время. Первый официальный релиз aptitude после этой переписывания был 0.2.0., aptitude 0.2.11.1 был выпущен с Debian 3.0 Woody . К этому времени проект console-apt (переименованный в deity ) был фактически заброшен его сопровождающими, и он был удален из Woody. aptitude также был портирован на взломанную iOS как часть менеджера пакетов Cydia . [3]
aptitude заявляет, что, в отличие от APT, у него нет "Сил супер коровы". В apt-get "силы супер коровы" можно найти, выполнив команду apt-get moo . Однако в aptitude выполнение moo выдаст пользователю сообщение о том, что пасхальных яиц нет .
Однако, выполнив aptitude -v moo , затем aptitude -vv moo и так далее, пользователь увидит ряд утверждений, отрицающих "Силы Супер Коровы" или предлагающих им уйти, некоторые из которых заканчиваются картинкой (отсылка к " Маленькому принцу " Антуана де Сент-Экзюпери ), что мало чем отличается от оригинального пасхального яйца apt-get. Разные версии программы имеют разные последовательности.
Кроме того, в описании упаковки указано, что «aptitude также соответствует требованиям Y2K, не приводит к ожирению, естественным образом очищает организм и приучен к домашним условиям».