Take the 2-minute tour ×
Ask Ubuntu is a question and answer site for Ubuntu users and developers. It's 100% free, no registration required.

I have a repository on a ubuntu 12.04 server that is serving .deb files for only 64 bit architectures.

When I run apt-get update I get the following

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)

I'm using reprepro to add the .deb files to the repository

reprepro -Vb . includedeb precise package_amd64.deb

And in my distributions file /var/www/site/repo/conf/distributions I am only specifying amd64 bit architectures.

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

I circumvent the error by having my sources.list file include an entry that includes [arch=amd64]

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

However I would like to avoid having to specify that in my sources.list file. Is there anything I can configure on the repository to tell clients trying to pull files from the repo that they should only expect .deb files compiled for amd64 architectures?

share|improve this question
    
Any particular reason you can't compile it for i386? –  saiarcot895 Mar 11 at 18:00
    
I "can" compile it for i386 but we only need amd64 .deb files for use –  user784637 Mar 11 at 18:01

1 Answer 1

up vote 3 down vote accepted

On amd64 systems, apt tries to get both amd64 packages and i386 packages. This is (at least partially) because i386 packages are installable on amd64, and some applications and libraries are i386 only (Skype comes to mind). Therefore, apt has to get the list of i386 packages as well. Therefore, you get that error.

As for something on the server side, one way is edit the configuration file to allow i386 as well, and run reprepro -Vb . export. This will create an empty i386 Release and Packages file.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.