debuild: nenhum tarball upstream encontrado

7

Qual é a convenção de nomenclatura correta para um pacote com patches?

Estou tentando montar uma versão do exiv2 com patch para adicionar um esquema extra.

aqui está o que eu fiz até agora:

$ sudo apt-get build-dep exiv2
$ cd src/exiv2
$ apt-get source exiv2
$ cd exiv2-0.23-1ubuntu2
 ... apply patch
$ dpkg-source --commit
$ dch -i
    exiv2 (0.23-1ubuntu2-DwC1) trusty; urgency=medium
$ debuild -S -sd -k1230CB40

Mas eu recebo uma mensagem de erro:

  

Este pacote tem um número de revisão Debian, mas não parece   ser um arquivo tar original apropriado ou um diretório .orig no pai   diretório; (esperado um dos exiv2_0.23-1ubuntu2.orig.tar.gz,   exiv2_0.23-1ubuntu2.orig.tar.bz2, exiv2_0.23-1ubuntu2.orig.tar.lzma,   exiv2_0.23-1ubuntu2.orig.tar.xz ou exiv2-0.23-1ubuntu2.orig)   continue de qualquer maneira? (y / n) y

     

dpkg-source -b exiv2-0.23-1ubuntu2 dpkg-source: erro: não pode construir   com formato de fonte '3.0 (quilt)': nenhum tarball de upstream encontrado em   ../exiv2_0.23-1ubuntu2.orig.tar.{bz2,gz,lzma,xz} dpkg-buildpackage:   erro: dpkg-source -b exiv2-0.23-1ubuntu2 deu status de saída de erro 255   debuild: erro fatal na linha 1364: dpkg-buildpackage -rfakeroot -d -us   -uc -S -sd falhou

$ ls ..
exiv2-0.23-1ubuntu2  exiv2_0.23-1ubuntu2.debian.tar.gz  exiv2_0.23-1ubuntu2.dsc  exiv2_0.23-1ubuntu2-DwC1_source.build  exiv2_0.23.orig.tar.gz

O que eu preciso fazer para permitir que a debuild reconheça o arquivo tar original?

    
por asp 19.04.2014 / 18:25

1 resposta

4

O problema é o -DwC1 na sua string de versão. Por política Debian , a versão upstream pode conter . + - : ~ , mas o debian a revisão só pode conter + . ~ , então tudo antes de -DwC1 é considerado parte da versão upstream e, portanto, está procurando por um tarball original com essa versão.

dch dá uma pista sobre isso quando você adicionou essa entrada:

dch warning: your current directory has been renamed to:
../exiv2-0.23-1ubuntu2
dch warning: no orig tarball found for the new version.

Normalmente, quando eu faço um upload de um pacote para o ppa, vou aumentar a versão do ubuntu e adicionar algo como ~ppa0 e geralmente o release de destino, digamos, ~trusty . Então, por exemplo, 1ubuntu2 to 1ubuntu3~ppa0~trusty . As strings extras com ~ farão com que a versão compare menos de 1ubuntu3 , portanto, se o pacote for atualizado nos repositórios principais, o usuário terá a versão mais recente.

Realmente, tudo o que você precisa fazer é descartar o hífen da sua versão, então 1ubuntu2DwC1 funcionaria ou talvez 1ubuntu2.DwC1 .

    
por Jason Conti 19.04.2014 / 19:47

Tags