Andreas, Thanks for reporting the issue. We can add 'Conflicts: ifupdown'. 
Infact earlier versions of ifupdown2
did have the "Conflicts: ifupdown"...but in order to have both
ifupdown and ifupdown2 co-exist, we removed the "Conflicts: ifupdown" in the 
recent versions of ifupdown2.
We did this primarily to not confuse existing applications that already depend 
on ifupdown...keeping them
both available seemed to be a better option.

Coming back to the problem you hit:
- ifupdown2 does not divert /etc/default/networking (Julien can re-confirm).
- One thing that i do see not happening cleanly after the purge of ifupdown2 is 
passing ownership of
/lib/systemd/system/networking.service to ifupdown (same thing you are pointing 
out)
Which makes me think that, /lib/system/system/networking.service should also be 
diverted by ifupdown2.

so, one fix in ifupdown2 would be:
preinstall
    - divert /lib/system/system/networking.service

postrm
    - restore diverted /lib/system/system/networking.service

Will you be ok with such a fix ?.

Thanks!.

On 2/9/17, 7:42 PM, Julien Fortin wrote:
> Hello Andreas,
>
> Thanks for the reporting this issue.
> I will take a look at this early next week.
>
> Best,
> Julien Fortin
>
>
> On Mon, Feb 6, 2017 at 3:59 AM, Andreas Beckmann <a...@debian.org> wrote:
>
>> Package: ifupdown2
>> Version: 1.0~git20170114-1
>> Severity: serious
>> User: debian...@lists.debian.org
>> Usertags: piuparts
>>
>>
>> Hi,
>>
>> despite of all the diversion magic being performed, ifupdown2
>> comes with
>>   Provides+Replaces: ifupdown
>> but without a corresponding Breaks or Conflicts: ifupdown.
>> This causes files to disappear after the sequence:
>>
>>   install ifupdown
>>   install ifupdown2
>>   remove+purge ifupdown2
>>
>> and ifupdown is no longer functional (but dpkg still thinks
>> it is correctly installed).
>>
>>
>> >From the attached log (scroll to the bottom...):
>>
>> 0m28.7s ERROR: FAIL: After purging files have disappeared:
>>   /etc/default/networking        owned by: ifupdown2
>>   /etc/systemd/system/multi-user.target.wants/   not owned
>>   /etc/systemd/system/multi-user.target.wants/networking.service ->
>> /lib/systemd/system/networking.service       not owned
>>   /etc/systemd/system/network-online.target.wants/       not owned
>>   /etc/systemd/system/network-online.target.wants/networking.service ->
>> /lib/systemd/system/networking.service   not owned
>>   /lib/systemd/system/networking.service         owned by: ifupdown2
>>   /var/lib/systemd/deb-systemd-helper-enabled/multi-user.target.wants/
>>  not owned
>>   /var/lib/systemd/deb-systemd-helper-enabled/multi-user.
>> target.wants/networking.service         not owned
>>   /var/lib/systemd/deb-systemd-helper-enabled/network-online.target.wants/
>>      not owned
>>   /var/lib/systemd/deb-systemd-helper-enabled/network-online.
>> target.wants/networking.service     not owned
>>   /var/lib/systemd/deb-systemd-helper-enabled/networking.service.dsh-also
>>       not owned
>>
>> (note that "owned by: ifupdown2" is misleading - the ownership was only
>> recorded after ifupdown2 was installed and had taken over these files)
>>
>> Diversions cannot be used for /etc/default/networking!
>>
>> To allow switching back from ifupdown2 to ifupdown, ifupdown will
>> probably need a matching Provides+Replaces+Conflicts: ifupdown,
>> (against the virtual ifupdown package, not against ifupdown2)
>> but I haven't tested that.
>>
>>
>> Andreas
>>

Reply via email to