aptitude install
significa que você está chamando o destino de instalação do programa aptitude
.
apt install
significa que você está chamando o destino de instalação do binário apt
. Observe que o binário apt
é muito novo. Chegou com o lançamento 1.0. E não, não é a abreviação de aptitude
, mas é um binário separado.
Ambos os comandos instalam os pacotes que são dados como argumentos. No entanto, apt
e aptitude
usam seus próprios algoritmos de resolução de dependência (que escolhem quais pacotes instalar para atender à solicitação), que são diferentes. Isso significa, na prática, que eles podem escolher diferentes pacotes para instalar como resultado dos mesmos argumentos do pacote. Por exemplo,
apt-get install foo
e
aptitude install foo
pode optar por instalar pacotes diferentes.
Note também que uma diferença notável entre os dois comandos é o resolvedor de dependências interativo de aptidões. Isso lhe dará diferentes opções sobre como instalar o pacote, desde o razoável até o insano. Daniel Burrows, o autor do aptitude, estava bastante orgulhoso de ter descoberto este algoritmo .
O binário apt
está contido no pacote binário do software apt
(deb), que também inclui apt-get
e apt-cache
. apt
é um comando mais recente que os outros dois e destina-se a ser mais amigável. Tanto quanto sei, apt-get install
e apt install
são funcionalmente equivalentes.
O binário aptitude
está contido no pacote binário do software aptitude
(deb).
Para saber mais sobre esses comandos, você pode fazer, por exemplo,
man apt
para ver a página do manual e
apt --help
para ver a saída da ajuda e, da mesma forma, para os outros comandos mencionados aqui.
Aqui está Michael Vogt, há muito tempo apt desenvolvedor, sobre o assunto do novo apt
binário . Ele escreve
The big news for this version is that we included a new “apt” binary that combines the most commonly used commands from apt-get and apt-cache. The commands are the same as their apt-get/apt-cache counterparts but with slightly different configuration options.
Currently the apt binary supports the following commands:
list: which is similar to dpkg list and can be used with flags like --installed or --upgradable.
search: works just like apt-cache search but sorted alphabetically.
show: works like apt-cache show but hide some details that people are less likely to care about (like the hashes). The full record is still available via apt-cache show of course.
update: just like the regular apt-get update with color output enabled.
install,remove: adds progress output during the dpkg run.
upgrade: the same as apt-get dist-upgrade –with-new-pkgs.
full-upgrade: a more meaningful name for dist-upgrade.
edit-sources: edit sources.list using $EDITOR.
PS: Se a coisa do Super Cow Powers te intriga, você não é o único .
PPS: NB: aptitude
, apt
, apt-get
, apt-cache
todos usam a biblioteca apt compartilhada, que mora (você adivinhou) no pacote apt, então eles têm muito código comum. Tente executar
ldd /usr/bin/apt
ou
ldd /usr/bin/aptitude
e você verá uma linha como
libapt-pkg.so.4.12 => /usr/lib/x86_64-linux-gnu/libapt-pkg.so.4.12 (0x00007fd065330000)
Isso é o apt / aptitude vinculando-se à biblioteca apt compartilhada. Mas o resolvedor de dependência não é uma das coisas que eles compartilham.