Tuesday, 16 September 2014

Re: PackageKit/Python: pk.install_packages() not able to install a package

On 09/16/2014 04:14 PM, Matthias Klumpp wrote:
> 2014-09-16 16:00 GMT+02:00 Till Kamppeter <till.kamppeter@gmail.com>:
>> On 09/16/2014 02:29 PM, Matthias Klumpp wrote:
>>> Hi!
>>> 2014-09-15 21:48 GMT+02:00 Till Kamppeter <till.kamppeter@gmail.com>:
>>>> Hi,
>>>> I am using the Python bindings of PackageKit in system-config-printer for
>>>> the automatic driver download )as DEB packages in Ubuntu).
>>>> [...]
>>> PackageKit developer here ;-) If you say "Python-bindings" you mean
>>> the python3-packagekit package? It looks like you are using the GIR,
>>> which is the correct way to talk to PackageKit from Python.
>> Yes, I do. The script starts with
>> #!/usr/bin/python3
>> from gi.repository import GLib, PackageKitGlib
>> which for me means use of GIR, with Python 3.
>>> (Also, using PkTask instead of PkClient is recommended)
>> What is the difference between PkTask and PkClient?
> PkTask is more high-level, it can show Eula actions, set up Debconf
> and handle GPG-keys.
> PkClient is pretty low-level.
>>> The "printdriver" part means that the origin of this package is from
>>> the "printdriver" repository.
>> Does thios mean that Epson has used the name "printdriver" somewhere on
>> their server?
> Yes: "'deb http://www.openprinting.org/download/printdriver/debian/"

This path is not at Epson but only at OpenPrinting, but at both Epsn and
OpenPrinting there is an apt-lsb3.2-release.conf file like this:

APT::FTPArchive::Release::Label "printdriver";
APT::FTPArchive::Release::Suite "lsb3.2";
APT::FTPArchive::Release::Codename "lsb3.2";
APT::FTPArchive::Release::Architectures "i386 amd64";
APT::FTPArchive::Release::Components "contrib lsbddk main main-nonfree";
APT::FTPArchive::Release::Description "Distribution-independent printer
driver packages in Debian package format, for LSB-3.2-based distros";

(Epson uses my server setup script which creates this file). It seems
that the "printdriver" comes from the "APT::FTPArchive::Release::Label"
entry, for what ever this is good for.

>>> Are you using Ubuntus apt-daemon, or PackageKits aptcc backend?
>> I think that Ubuntu's apt-daemon is used. What is aptcc and how can I
>> check what gets actually used ("pkcon backend-details" gives no answer
>> at all)?
> Aptcc is the default PackageKit backend for Apt-based systems. It's
> implemented in C++ and pretty fast.
> You can install it using the packagekit-backend-aptcc package.
> Aptdaemon should jump out of the way then.
> The backend-details command should display the backend capabilities then.

I tried

sudo apt-get install packagekit-backend-aptcc


pkcon backend-details

still gives no answer and trying to install openprinting-gutenprint via
my script or via pkcon still gives the same error.

>>> Can you install the package using pkcon? (you can also supply
>>> package-ids to the tool)
>> "pkcon install openprinting-gutenprint" gives the same error ("Fatal
>> error: The versuion 5.2.7-1lsb3.2/printdriver of openprinting-gutenprint
>> isn't available.").
> Looks like somehow the backend does not handle 3rd-party repos properly.
> (apt update runs without errors?)

"apt-get update" indeed runs without errors, and I can install the
package with "apt-get install".


ubuntu-devel mailing list
Modify settings or unsubscribe at: https://lists.ubuntu.com/mailman/listinfo/ubuntu-devel