lançamento da ferramenta de gerenciamento de pacotes (Advanced Package Tool), desenvolvido pelo projeto Debian. Além do Debian e suas distribuições derivadas, o APT também é utilizado em algumas distribuições baseadas no gerenciador de pacotes rpm, como PCLinuxOS e ALT Linux. O novo ramo incorpora mudanças acumuladas durante o desenvolvimento do ramo experimental 1.9.x. Um novo lançamento estará disponível em breve no ramo Debian Unstable e na base de pacotes (no Ubuntu 19.10 foi utilizado o ramo experimental 1.9).
De pode-se destacar:
- Nos comandos que aceitam nomes de pacotes, foi adicionada suporte a . A sintaxe dos templates basicamente repete o estilo dos templates do aptitude. O suporte a máscaras e expressões regulares nos argumentos do comando apt foi descontinuado, agora deve-se usar templates. Por exemplo, para listar todos os pacotes instalados manualmente nas seções que contêm as palavras libs, perl e python:
apt list ‘~i !~M (~slibs|~sperl|~spython)’
- Foram adicionados os comandos «apt satisfy» e «apt-get satisfy», que permitem instalar pacotes necessários para satisfazer as dependências especificadas na linha passada como argumento. Também é possível listar várias linhas e especificar blocos «Conflicts:» para excluir dependências. Por exemplo:
apt-get satisfy «foo» «Conflicts: bar» «baz (>> 1.0) | bar (= 2.0), moo»
- Foi adicionada a possibilidade de fixação de pacote com código através da adição do prefixo «src:» antes do nome do pacote (, permite adicionar pacotes de outros ramos sem atualizar todo o sistema, por exemplo, instalar pacotes da versão testing ou unstable em stable). Para fixar todos os pacotes binários compilados a partir do pacote com código apt 2.0.0, pode-se especificar:
Package: src:apt
Pin: version 2.0.0
Pin-Priority: 990 - No comando apt, agora há espera pela liberação do bloqueio dpkg. Por padrão, ao ser iniciado no console, a espera não tem limite de tempo, enquanto nos demais casos o tempo limite é de 120 segundos.
- Se o apt não conseguir obter o bloqueio, o erro agora é exibido mostrando o nome e o PID do processo que mantém o lock-file.
- Foram adicionados os comandos merge-translations e bump-abi.
- Para hash criptográfico, foram utilizadas as implementações MD5, SHA1 e SHA2 da biblioteca libgcrypt.
- Aumentou-se a paralelização do lançamento dos manipuladores e descompactação durante a execução do comando update.
- As contas listadas no arquivo auth.conf agora são transferidas apenas ao acessar via HTTPS, a fim de evitar vazamentos em caso de interceptação da conexão HTTP.
- A exigência de versão para o padrão C++ foi elevada para C++14.
- Apoio para a especificação de vários hashes para um único arquivo foi adicionado ao apt-helper.
- A biblioteca libapt-inst foi mesclada com a libapt-pkg.
- O formato do cache foi modernizado, permitindo agora a adição de novas entradas sem quebrar a ABI. Os ponteiros no cache agora são tipados estaticamente e não podem ser comparados a números inteiros (exceto 0 através de nullptr).
- Foi feita a limpeza de flags obsoletas e realizada a mesclagem de diferentes protótipos de funções. Implementações próprias dos algoritmos CRC16, MD5, SHA1 e SHA2 foram removidas.
Fonte: opennet.ru
