apt-show-versions mostra informações erradas para o pacote deb feito sob medida

1

Quando executo o comando apt-show-versions -a dwm ( apt-show-versions lista as versões de pacotes disponíveis com distribuição ) então vejo a seguinte saída:

# apt-show-versions -a dwm
dwm:i386 6.0-4-martin install ok installed
dwm:i386 6.0-7 jessie http.debian.net
dwm:i386 6.0-4-martin newer than version in archive
# 

dwm foi instalado com o pacote deb personalizado há alguns anos. No entanto, por que apt-show-versions mostra que é mais recente que a versão do arquivo quando eu uso jessie repos:

deb http://http.debian.net/debian jessie main contrib non-free
deb-src http://http.debian.net/debian jessie main contrib non-free

.. e eles devem fornecer dwm versão 6.0-7 .

    
por Martin 28.11.2016 / 00:46

1 resposta

2

Do ponto de vista do Debian, sua versão privada é mais recente que a do arquivo, mas o motivo não é óbvio. Nas versões Debian, a revisão Debian não pode conter hífens , então 6.0-4-martin é analisado como revisão Debian martin da versão upstream 6.0-4 , enquanto 6.0-7 é analisado como revisão Debian 7 da versão upstream 6.0 . Ao comparar versões, 6.0-4 é maior que 6.0 ...

Você pode verificar isso usando dpkg --compare-versions :

$ dpkg --compare-versions 6.0-4-martin gt 6.0-7
$ echo $?
0

, o que significa que dpkg considera 6.0-4-martin como maior que 6.0-7 .

Você deve usar + como o separador para sufixos privados ( 6.0-4+martin ou o que for apropriado na próxima vez), a menos que você esteja preparando um backport privado. Nesse caso, use ~ .

    
por 28.11.2016 / 06:26

Tags