Skipping acquire of configured file 'xxxx' as repository 'xxxx xenial InRelease' doesn't support architecture 'i386'" [duplicate]

Needing to upgrade Squid 3.5.12 on Ubuntu 16.04.3 LTS to a more recently patched version (Squid 3.5.23) I found some instructions here: https://github.com/diladele/squid-ubuntu

Entered the first 3 commands exactly and got a note from apt-get: "N: Skipping acquire of configured file 'main/binary-i386/Packages' as repository 'http://ubuntu16.diladele.com/ubuntu xenial InRelease' doesn't support architecture 'i386'"

I don't have typos and nonexistent foreign architectures as others have done:

root@wprdsqd01:/# dpkg --print-foreign-architectures
i386
root@wprdsqd01:/# dpkg --print-architecture
amd64
root@wprdsqd01:/#

Does this just mean that the repository doesn't have i386 (32bit) binaries ?

Thanks


Solution 1:

I've since found there is a method to specify desired architectures or suppress unwanted architectures, for example in the case above where the architecture isn't included in the diladele repo but is a valid foreign architecture listed by dpkg on my machine.

Where diladel's 2nd instruction for adding the repo is:

# add repo
echo "deb http://ubuntu16.diladele.com/ubuntu/ xenial main" > /etc/apt/sources.list.d/ubuntu16.diladele.com.list

you can include an optional architecture specification, such as this:

# add repo
echo "deb [arch=amd64] http://ubuntu16.diladele.com/ubuntu/ xenial main" > /etc/apt/sources.list.d/ubuntu16.diladele.com.list

Note the literal use of the square brackets is required to delineate the options list (it's not indicating that options are optional ;-)

There's a useful reference here: https://manpages.debian.org/jessie/apt/sources.list.5.en.html

In the example above, including the option on my machine (which has i386 as a foreign architecture (see original post) avoids the apt-get notice that triggered my question.

Solution 2:

yes, the repo in question is only 64-bit.