[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#741251: python-apt 0.9.3 regression: Setting APT::Architecture now downloads wrong indexes from the host arch



Package: python3-apt
Version: 0.9.3

Hello,

Since the upgrade from 0.9.1 to 0.9.3, which regresses the support for
using "sandboxes" with a different architecture, with e. g.

  apt.apt_pkg.config.set('APT::Architecture', 'armhf')

This can be seen in attached minimal reproducer. It works with
python-apt 0.9.1, but with 0.9.3 it tries to download the amd64
indexes:

   Err http://ports.ubuntu.com trusty/main amd64 Packages
   [...]
  File "/usr/lib/python3/dist-packages/apt/cache.py", line 441, in update
    pulse_interval)
  SystemError: W:Failed to fetch http://ports.ubuntu.com/dists/trusty/main/binary-amd64/Packages  404  Not Found
  , E:Some index files failed to download. They have been ignored, or old ones used instead.

I'm using http://ports.ubuntu.com/ here as this more clearly
demonstrates the problem (x86 are on archive.u.c., armhf, powerpc etc.
on ports.u.c.)

Thanks for considering,

Martin

-- 
Martin Pitt                        | http://www.piware.de
Ubuntu Developer (www.ubuntu.com)  | Debian Developer  (www.debian.org)
import apt
import os
import shutil

# prepare sandbox dirs
apt_root = '/tmp/sandbox'
os.makedirs(os.path.join(apt_root, 'etc', 'apt'))

# switch to armhf; set up apt sources
apt.apt_pkg.config.set('APT::Architecture', 'armhf')
with open(os.path.join(apt_root, 'etc', 'apt', 'sources.list'), 'w') as f:
    f.write('deb http://ports.ubuntu.com/ trusty main\n')

# set up apt cache
c = apt.Cache(rootdir=apt_root)
# update indexes
c.update(apt.progress.text.AcquireProgress())

Attachment: signature.asc
Description: Digital signature


Reply to: