0install cannot install system packages on Pangolin

Bug #953756 reported by Michel Lind
26
This bug affects 3 people
Affects Status Importance Assigned to Milestone
zeroinstall-injector (Ubuntu)
Fix Released
Undecided
Thomas Leonard

Bug Description

When attempting to install a feed with a system package dependency, I get the following:

org.freedesktop.DBus.Python.TypeError: TypeError: InstallPackages() takes exactly 4 arguments (3 given)

To reproduce, try removing default-jre and then try installing this feed:

  http://mojo.informatik.uni-erlangen.de/interfaces/2010/eclipse-jee.xml

(which pulls in default-jre as a dependency)

ProblemType: Bug
DistroRelease: Ubuntu 12.04
Package: zeroinstall-injector 1.4.1-1
ProcVersionSignature: Ubuntu 3.2.0-18.29-generic 3.2.9
Uname: Linux 3.2.0-18-generic x86_64
ApportVersion: 1.94.1-0ubuntu2
Architecture: amd64
Date: Tue Mar 13 13:29:33 2012
InstallationMedia: Ubuntu 11.10 "Oneiric Ocelot" - Release amd64 (20111012)
PackageArchitecture: all
ProcEnviron:
 LC_CTYPE=en_US.UTF-8
 TERM=xterm
 PATH=(custom, user)
 LANG=en_US.UTF-8
 SHELL=/bin/zsh
SourcePackage: zeroinstall-injector
UpgradeStatus: Upgraded to precise on 2012-03-13 (0 days ago)

Related branches

Revision history for this message
Michel Lind (michel-slm) wrote :
Thomas Leonard (talex5)
Changed in zeroinstall-injector (Ubuntu):
assignee: nobody → Thomas Leonard (talex5)
Revision history for this message
Thomas Leonard (talex5) wrote :
Revision history for this message
Thomas Leonard (talex5) wrote :

I've made a PPA with a patched version:

https://launchpad.net/~talex5/+archive/ppa/+packages

Does that fix it for you?

Changed in zeroinstall-injector (Ubuntu):
status: New → Confirmed
Revision history for this message
Michel Lind (michel-slm) wrote :

I get exactly the same error with 1.4.1-2. I notice, though, that on upgrading to Pangolin, packagekit ends up not being installed (and zeroinstall-injector recommends but does not install it).

Attempting to install packagekit yields this; the second problem is likely just a mirror glitch (mismatched release numbers) but I'm not sure about the python-aptdaemon.pkcompat and packagekit conflicts -- looks like Ubuntu at some point switches to "providing" PackageKit APIs using this APT Daemon?

I'm traveling until the end of the week and my Internet connection is rather spotty; I'll try and look into aptdaemon next week unless you get there first. Thanks!

The following NEW packages will be installed:
  gdebi-core{a} packagekit packagekit-backend-aptcc{a}
The following packages will be upgraded:
  libpackagekit-glib2-14
1 packages upgraded, 3 newly installed, 0 to remove and 139 not upgraded.
Need to get 578 kB/589 kB of archives. After unpacking 1,746 kB will be used.
The following packages have unmet dependencies:
  python-aptdaemon.pkcompat: Conflicts: packagekit but 0.7.2-4ubuntu2 is to be installed.
  libpackagekit-glib2-dev: Depends: libpackagekit-glib2-14 (= 0.7.2-4ubuntu1) but 0.7.2-4ubuntu2 is to be installed.

Revision history for this message
Thomas Leonard (talex5) wrote :

Ah, you're right.

1. I installed precise from a recent snapshot, upgraded, and installed PackageKit. It failed using zeroinstall-injector 1.4.1-1 but worked with 1.4.1-2.

2. I removed PackageKit and installed python-aptdaemon.pkcompat. Then it fails.

According to the docs, InstallPackages only takes two arguments, so I guess this is a problem with python-aptdaemon.pkcompat?

http://www.packagekit.org/gtk-doc/Transaction.html#Transaction.InstallPackages

Revision history for this message
Thomas Leonard (talex5) wrote :

Actually, I think the problem is just that aptdaemon fails when we try the old PackageKit API (instead of just returning an exception). So, the solution is to try the new API first.

I've put up a new PPA with the fix here:

https://launchpad.net/~talex5/+archive/0install

Revision history for this message
Michel Lind (michel-slm) wrote :

Thanks! I get some warning on the console when reattempting the same feed URL, but everything now works with python-aptdaemon:

WARNING:packagekit:Can't parse distribution version '' for package 'dpkg-exec'
WARNING:packagekit:Can't parse distribution version '' for package 'default-jre'
WARNING:packagekit:Can't parse distribution version '' for package 'default-jre'
WARNING:packagekit:Can't parse distribution version '' for package 'default-jre'
WARNING:packagekit:Can't parse distribution version '' for package 'default-jre'
WARNING:packagekit:Can't parse distribution version '' for package 'dpkg-exec'
WARNING:packagekit:Can't parse distribution version '' for package 'default-jre'
WARNING:packagekit:Can't parse distribution version '' for package 'default-jre'
WARNING:packagekit:Can't parse distribution version '' for package 'default-jre'

I don't think that's triggered by zeroinstall-injector though. Hope to see this fix lands in the Pangolin branch soon.

Revision history for this message
Thomas Leonard (talex5) wrote :

They are from 0install, but I'm not sure why you're getting them, because it shouldn't be querying for "default-jre" (unless you actually specified that as a dependency, which seems unlikely).

Revision history for this message
Michel Lind (michel-slm) wrote :

The feed I used does depend specifically on default-jre on Debian/Ubuntu, since I didn't want to overly specify a particular JRE package. Ah, so that makes sense -- it's a virtual package.

Perhaps such a warning could be suppressed -- another version-parsing problem occurs on Fedora, where lshw has an odd version number (B.02.xx) -- and yes, that's the upstream naming scheme!

http://koji.fedoraproject.org/koji/packageinfo?packageID=4899

Revision history for this message
Thomas Leonard (talex5) wrote :

They want to update to 1.6 before applying the patch (to get a security fix). I've filed a bug for that here:

https://bugs.launchpad.net/ubuntu/+source/zeroinstall-injector/+bug/964415

Note that my PPA now contains a plain 1.6 (from Debian) without the patch, as part of this process (to test that 1.6 works on precise).

Revision history for this message
Thomas Leonard (talex5) wrote :

OK, good progress today:

* Precise now contains 1.6.
* I've updated the patch for 1.6 and sent a new merge request: https://code.launchpad.net/~talex5/ubuntu/precise/zeroinstall-injector/fix-for-953756/+merge/97807
* There's a patch version in my PPA: https://launchpad.net/~talex5/+archive/0install/+packages

Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package zeroinstall-injector - 1.6-1ubuntu1

---------------
zeroinstall-injector (1.6-1ubuntu1) precise; urgency=low

  * Fixed API incompatibility with PackageKit's InstallPackages (LP: #953756).
 -- Thomas Leonard <email address hidden> Fri, 16 Mar 2012 07:15:46 +0000

Changed in zeroinstall-injector (Ubuntu):
status: Confirmed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.