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

Bug#532660: python-apt: DpkgInstallProgress should support more than one package



Package: python-apt
Version: 0.7.10.3+b1
Severity: wishlist

The run method of DpkgInstallProgress class only works with one package.
Furthermore it sets the debfile and debname attribute which will be used by
the update_status method.

I would like to overwrite the run method in PackgeKit to support more than one
Deb file and different dpkg options. So it would be nice to extract the package
names in update_status from the dpkg status message instead of reusing
the debname attribute.

See attached patch.

Cheers,

Sebastian


-- System Information:
Debian Release: squeeze/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (1, 'experimental')
Architecture: i386 (i686)

Kernel: Linux 2.6.29-1-686 (SMP w/2 CPU cores)
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash

Versions of packages python-apt depends on:
ii  apt [libapt-pkg-libc6.9-6-4.7 0.7.21     Advanced front-end for dpkg
ii  apt-utils [libapt-inst-libc6. 0.7.21     APT utility programs
ii  libc6                         2.9-13     GNU C Library: Shared libraries
ii  libgcc1                       1:4.4.0-5  GCC support library
ii  libjs-jquery                  1.3.3-1    JavaScript library for dynamic web
ii  libstdc++6                    4.4.0-5    The GNU Standard C++ Library v3
ii  lsb-release                   3.2-22     Linux Standard Base version report
ii  python                        2.5.4-2    An interactive high-level object-o
ii  python-central                0.6.11     register and build utility for Pyt

Versions of packages python-apt recommends:
ii  iso-codes                     3.10-1     ISO language, territory, currency,

Versions of packages python-apt suggests:
pn  python-apt-dbg                <none>     (no description available)
ii  python-gtk2                   2.14.1-3   Python bindings for the GTK+ widge
ii  python-vte                    1:0.20.1-1 Python bindings for the VTE widget

-- no debconf information
# Bazaar merge directive format 2 (Bazaar 0.90)
# revision_id: renate@ubuntu.virtual-20090530230548-1xm8asn5qh7t75oz
# target_branch: ../jak
# testament_sha1: 1ae02a7da527170b44c6b05027e230b2b8ee478e
# timestamp: 2009-05-31 02:23:21 +0200
# base_revision_id: jak@debian.org-20090609072541-k4i16rqvd74f5no2
# 
# Begin patch
=== modified file 'apt/progress/__init__.py'
--- apt/progress/__init__.py	2009-06-08 14:55:53 +0000
+++ apt/progress/__init__.py	2009-05-30 23:05:48 +0000
@@ -367,13 +367,11 @@
 
     def run(self, debfile):
         """Start installing the given Debian package."""
-        self.debfile = debfile
-        self.debname = os.path.basename(debfile).split("_")[0]
         pid = self.fork()
         if pid == 0:
             # child
             res = os.system("/usr/bin/dpkg --status-fd %s -i %s" % \
-                            (self.writefd, self.debfile))
+                            (self.writefd, debfile))
             os._exit(os.WEXITSTATUS(res))
         self.child_pid = pid
         res = self.wait_child()
@@ -399,10 +397,11 @@
                 print "got garbage from dpkg: '%s'" % self.read
                 self.read = ""
                 break
+            pkg_name = statusl[1].strip()
             status = statusl[2].strip()
             #print status
             if status == "error":
-                self.error(self.debname, status)
+                self.error(pkg_name, status)
             elif status == "conffile-prompt":
                 # we get a string like this:
                 # 'current-conffile' 'new-conffile' useredited distedited

# Begin bundle
IyBCYXphYXIgcmV2aXNpb24gYnVuZGxlIHY0CiMKQlpoOTFBWSZTWVOkUcAAAvL/gABUAEBRZ///
V0IJCr////BQBf7jYAaAAAAAGoptTTRpgmmmh6I0zSGmgGTAQMc0xMACYAJgABMAATBKBCoeU8pm
oMIaAAAGag0NBzTEwAJgAmAAEwABMCpRAgaACADQVN6J6TInigyempbx1049Zon22+z8q9DjPlxy
pYUTUoxY6KWLUrRDHMxtsECtGVsCISS8luh4G0KCqKpHqiaYJmZRioMDOsLao62WXF1Y2nOzupmd
L8J/D53KRA4xvvrfdHmaGYvFCj1du9IIGn9PAatvcxcncYiRcJhMyC4kHeSSfhbAIY2UHBgCC4Ni
wIHsr/Ljzhzn3FJoWJaxD+T1R1T0csuHUZeOT8Hj6nF/VqGou4n8DDx01rWx3d3swSa6tSzmSa3N
ipXeGRRFahVMCyyS21mOiy9IoZsDl7M74WMZLslKx52Y/RdO21oa2Vl/Rqux69HB9WVTI3FXYYUM
69Y926WnDzxbiuc/rUtbmdycRZbpr8sOhsMEjYt1sA+p0szLHFkWSdDSvWsVrSuZ+i2DeGLMtwWI
6VrCWqZ1LNCjLMpg3qNKix3ozOzsz03ZMyLLYzpZNxxW3utoXsIrolNS1L8Si8tNTije4r5R+H6z
5YI2szo6O8sbeGDg24BvmZG+fFal3Cpg5Omb08ktustzFkSVFtJT150KxTLCKFCotGTVUwRTCKbK
VjJmzR80s54b72VgyNao0LXsma/HJJXGUZWpmd9zbyZmUpVezbmC98kualurBkWWltYStNCrPaxX
aS3HBzO5u3ZWJrKZzFpGKaJbebJL+A/dKKDSofwoeXY8l5RpeqpVyO2ilDe+58HusYKl6irsWvMz
lshppRQpKf81a7aVmwmRQ89eVY8zwOksLWs/JnfVmLm40MLFI1sqkn0WN/pkwpSfOTtdy4eLuWot
d7iteSj11PGPH0WYzEc2zwUMJKvyXofPw4jgsWZqmRZoxJXUnVseUZ0L788/B7bpuc3N8nsoueix
1LI5uSRx9UWu93OBlezL8LmbqbHJjDRbVQ4/Eorbd5a7GxcujHH9Z2sicVV7k0o2OLg1/yaewxR9
P07+fOurmrc53y+lLrqRqz97e7lv7XP8MWUxMUOztlVMVsmhq/rpf28Y83Kni+HJpxf20t4+K9Dw
UdiURjyzL9vprGUyTlJQMEq5O3W7HQ1uB2O2cVVyxyWM3Waj7PHx81HhSMynow9+J7tocJ+Cg9On
i+qU7hQWJoprkpqmirYVdZ8jc+aOlgczR0Cw60dTp5Sa8y1/vrWr28NnmgytazaueHH3o2z7ztKn
k2ybXVchU+qM8lTDxlikalq982nxKPGZko2xeOH3dDQfVVxZGTDI4GSJWXKRRrSgbr1KGtC6XyXS
nBQ+kvvRZRG1Iqnd8+/jNWSk7D8lelMo8igv91yMsnBT9TGO6xMd3ZuTRgytE+6jsdbrSy4684/H
nr6cObOzlGxuXtib5249hxrJ+ik73g0NJThKKymUnzmt6tq5RLGYxx0U+NsW2b51X1Gz7S/fQydi
FSqa+q5SWs5RSsf31cIxMwUXpk+DMm3PK0krKskleqtmPP6J0HiaV5YKu5+hujVehYu1tJlXVThj
lVLIqMyZcllkXUTKyVSP2RahZKHujBCfZIr1PFIzdb84S3o+k9UaU6UOoKG/38PW3q9Hm9kfRMyf
96HHc4LFXSVetiNifvhf2zM/dH/xdyRThQkFOkUcAA==

Reply to: