Tema: packaging
-
Dependency confusion: quando um pacote público se sobrepõe a um privado
Se uma build resolve nomes de pacotes entre um índice privado e um público, um atacante pode publicar o nome privado no índice público com uma versão mais alta e conseguir que o seu código seja instalado; a documentação do pip considera inseguro usar --extra-index-url para pacotes privados exatamente por isso. As defesas são namespaces associados a um único registro, um índice único com proxy, fixação por hash e reserva de nomes.
-
Instalar, atualizar e verificar software com o Image Packaging System (pkg)
O cliente pkg cobre busca, instalação, atualização, remoção, gerenciamento de publishers e verificação/correção com base nos metadados dos pacotes. As operações do pkg reconhecem boot environments: alterações em pacotes que exigem reinicialização vão para um novo BE ativado no próximo boot, e as demais são aplicadas ao BE em execução; na política padrão, um BE de backup é criado quando o conteúdo alterado pode afetar o kernel.
-
An internal package mirror or cache for Linux clients: apt-cacher-ng and dnf's reposync
Apt-Cacher NG caches Debian/Ubuntu packages on demand behind an HTTP proxy setting, while dnf's reposync plugin makes a full local copy of a chosen RPM repository. Both cut repeated downloads without weakening client-side signature verification, which stays on regardless of where the bytes came from.
-
O "error: externally-managed-environment" do pip e a PEP 668
O pip recusa um 'pip install' global com 'error: externally-managed-environment' quando a distribuição marcou o Python do sistema como gerenciado, conforme a PEP 668. O artigo explica o que significa o marcador EXTERNALLY-MANAGED, as soluções com venv/pipx/apt em ordem e por que --break-system-packages é último recurso, não padrão.
Legível por máquina: JSON