diff -u packagekit.orig/aptDBUSBackend.py packagekit/aptDBUSBackend.py --- packagekit.orig/aptDBUSBackend.py 2009-04-23 14:17:01.000000000 +0300 +++ packagekit/aptDBUSBackend.py 2009-05-13 22:15:24.708548992 +0300 @@ -267,7 +267,8 @@ cmd = ["/usr/bin/dpkg", "--force-confdef", "--force-confold", "--status-fd", str(self.writefd), "--root", apt_pkg.Config["Dir"], "-i"] - cmd.extend(map(lambda f: str(f), filenames)) + for filename in filenames: + cmd.append(filename.encode("utf-8")) self.run(cmd) def run(self, cmd): diff -u packagekit.orig/debfile.py packagekit/debfile.py --- packagekit.orig/debfile.py 2009-04-23 14:17:01.000000000 +0300 +++ packagekit/debfile.py 2009-05-13 22:15:24.708548992 +0300 @@ -1,3 +1,4 @@ +# -*- coding: utf-8 -*- # Copyright (c) 2005-2007 Canonical # # AUTHOR: @@ -54,7 +55,7 @@ def open(self, filename): " open given debfile " - self.filename = filename + self.filename = filename.encode("utf-8") if not apt_inst.arCheckMember(open(self.filename), "debian-binary"): raise NoDebArchiveException, "This is not a valid DEB archive, missing '%s' member" % "debian-binary" control = apt_inst.debExtractControl(open(self.filename))