Am 23.04.2014 14:37, schrieb Ansgar Burchardt: > Package: modemmanager > Version: 1.0.0-4 > Severity: important > > Removing modemmanager from my desktop system at work fails: > > +--- > | # apt-get purge modemmanager > | Reading package lists... Done > | Building dependency tree > | Reading state information... Done > | The following packages will be REMOVED: > | modemmanager* > | 0 upgraded, 0 newly installed, 1 to remove and 18 not upgraded. > | After this operation, 2191 kB disk space will be freed. > | Do you want to continue? [Y/n] > | (Reading database ... 333498 files and directories currently installed.) > | Removing modemmanager (1.0.0-4) ... > | Job for ModemManager.service canceled. > | dpkg: error processing package modemmanager (--purge): > | subprocess installed pre-removal script returned error exit status 1 > | Errors were encountered while processing: > | modemmanager > | E: Sub-process /usr/bin/dpkg returned an error code (1) > +---
ModemManager is a D-Bus activated service. I guess there was an incoming D-Bus request when "deb-systemd-invoke stop" tried to stop the service in prerm, so this request was cancelled. For socket activated services, we can stop the .socket unit in such a case [0] to avoid being started by an incoming request. For D-Bus activated services there is no such equivalent. So I don't see a good way to fix this. We'd need some kind of "manual" state a service can be put in during package installation/upgrade/removal time, i.e. it would need support from systemd. I'm not sure if blacklisting the service in prerm would help here. I vaguely remember discussing that a while ago and blacklisting had some unwanted side-effects. This might be a good topic for the sprint this weekend, I think, since we have quite a few D-Bus activated services. Michael [0] http://anonscm.debian.org/gitweb/?p=collab-maint/rsyslog.git;a=blob;f=debian/rsyslog.prerm;hb=HEAD#l6 -- Why is it that all of the instruments seeking intelligent life in the universe are pointed away from Earth?
signature.asc
Description: OpenPGP digital signature

