Como servir arquivos .deb compilados para amd64 sem receber erros que arquivos i386 .deb não estão disponíveis?

6

Eu tenho um repositório em um servidor Ubuntu 12.04 que serve arquivos .deb para arquiteturas de apenas 64 bits.

Quando executo o apt-get update, recebo o seguinte

W: Failed to fetch https://test.com/repo/dists/precise/Release Unable to find expected entry 'main/binary-i386/Packages' in Release file (Wrong sources.list entry or malformed file)

Estou usando reprepro para adicionar os arquivos .deb ao repositório

reprepro -Vb . includedeb precise package_amd64.deb

E no meu arquivo de distribuições /var/www/site/repo/conf/distributions estou apenas especificando arquiteturas de amd64 bits.

Origin: apt.site.com
Label: apt repository
Codename: precise
Architectures: amd64 source
Components: main
Description: debian package repo
SignWith: yes
Pull: precise

Ignoro o erro fazendo com que o meu arquivo sources.list inclua uma entrada que inclua [arch=amd64]

deb [arch=amd64] https://apt.site.com/repo precise main

No entanto, gostaria de evitar precisar especificar isso no meu arquivo sources.list . Existe alguma coisa que eu possa configurar no repositório para dizer aos clientes que estão tentando extrair arquivos do repo que eles devem esperar apenas arquivos .deb compilados para arquiteturas amd64?

    
por user784637 11.03.2014 / 18:53

1 resposta

4

Nos sistemas amd64, o apt tenta obter os pacotes amd64 e os pacotes i386. Isso é (pelo menos parcialmente) porque os pacotes i386 são instaláveis no amd64 e alguns aplicativos e bibliotecas são apenas i386 (o Skype vem à mente). Portanto, o apt também precisa obter a lista de pacotes i386. Portanto, você obtém esse erro.

Quanto a algo no lado do servidor, também é possível editar o arquivo de configuração para permitir o i386 e executar reprepro -Vb . export . Isso criará um arquivo de lançamento e pacotes i386 vazio.

    
por saiarcot895 11.03.2014 / 19:52