touch-packages team mailing list archive
-
touch-packages team
-
Mailing list archive
-
Message #85162
[Bug 984523] Re: apt_pkg.Cache() E: Read error - read (21: is a directory)
** Package changed: python-apt (Ubuntu) => apt (Ubuntu)
--
You received this bug notification because you are a member of Ubuntu
Touch seeded packages, which is subscribed to apt in Ubuntu.
https://bugs.launchpad.net/bugs/984523
Title:
apt_pkg.Cache() E: Read error - read (21: is a directory)
Status in apt package in Ubuntu:
New
Bug description:
Ubuntu Release:
12.04 precise beta 2
Description: Ubuntu precise (development branch)
Release: 12.04
Up to date as of 0100h GMT 18/4
$ apt-cache policy python-apt
python-apt:
Installed: 0.8.3ubuntu6
Candidate: 0.8.3ubuntu6
Version table:
*** 0.8.3ubuntu6 0
500 http://gulf/au.archive.ubuntu.com/ubuntu/ precise/main amd64 Packages
100 /var/lib/dpkg/status
===========================
Attempting to use python-apt to manipulate a debootstrapped precise chroot - when I attempt to get a cache object from the chroot, the following error occurs:
cache = apt_pkg.Cache(apt.progress.base.OpProgress())
SystemError: E:Read error - read (21: Is a directory), E:The package lists or status file could not be parsed or opened.
Extra testing:
* The same code functions perfectly on an 11.04 host with a debootstrapped precise chroot
* The same error appears on a 12.04 host with a debootstrapped oneric (11.10) chroot
* chrooting in with a bash shell and executing apt commands works
To replicate,
* on a precise host, debootstrap a precise or oneiric chroot
* start a python shell
>>> import apt_pkg
>>> import apt
>>> apt_pkg.init_config()
>>> apt_pkg.config.set('RootDir', '/path/to/chroot')
>>> apt_pkg.config.set('APT::Architecture', '<your chroot arch>')
>>> apt_pkg.init_system()
>>> apt_pkg.Cache(apt.progress.base.OpProgress())
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
SystemError: E:Read error - read (21: Is a directory), E:The package lists or status file could not be parsed or opened.
>>> apt.progress.base.OpProgress()
<apt.progress.base.OpProgress object at 0x7fba202c8b10>
>>> apt_pkg.Cache()
Reading package lists... Error!
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
SystemError: E:Read error - read (21: Is a directory), E:The package lists or status file could not be parsed or opened.
>>>
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/apt/+bug/984523/+subscriptions