4 TESTDIR
="$(readlink -f "$(dirname "$0")")" 
   8 configarchitecture 'native' 
  10 insertinstalledpackage 'sysvinit' 'native' '1' 'Essential: yes' 
  12 buildsimplenativepackage 'sysvinit' 'native' '2' 'sid' 'Pre-Depends: sysvinit-core | systemd-sysv 
  14 buildsimplenativepackage 'sysvinit-core' 'native' '2' 'sid' 
  16 buildsimplenativepackage 'systemd-sysv' 'native' '2~conflict' 'sid-conflict' 'Conflicts: sysvinit (<< 2) 
  17 Breaks: sysvinit-core' 
  19 buildsimplenativepackage 'systemd-sysv' 'native' '2~break' 'sid-break' 'Breaks: sysvinit (<< 2), sysvinit-core' 
  23 cp -a rootdir/var/lib/dpkg/status dpkg.status.backup 
  26         cp -a dpkg.status.backup rootdir/var/lib/dpkg/status 
  27         rm -f rootdir/var/lib/apt/extended_states 
  28         testfailureequal "Reading package lists...
 
  29 Building dependency tree...
 
  30 The following additional packages will be installed
: 
  32 The following NEW packages will be installed
: 
  34 The following packages will be upgraded
: 
  36 1 upgraded
, 1 newly installed
, 0 to remove and 
0 not upgraded.
 
  37 E
: This installation run will require temporarily removing the essential package sysvinit
:$(getarchitecture 'native') due to a Conflicts
/Pre
-Depends loop. This is often bad
, but 
if you really want to 
do it
, activate the APT
::Force
-LoopBreak option.
 
  38 E
: Internal Error
, Could not early remove sysvinit
:$(dpkg --print-architecture) (2)" aptget install systemd-sysv -t "$1" -s 
  39         # ensure that really nothing happens 
  40         testfailure aptget install systemd-sysv -y -t "$1" 
  41         testdpkginstalled 'sysvinit' 
  42         testdpkgnotinstalled 'systemd-sysv' 
  44         # with enough force however … 
  45         cp -a dpkg.status.backup rootdir/var/lib/dpkg/status 
  46         testsuccess aptget install systemd-sysv -y -t "$1" -o APT::Force-LoopBreak=1 -o Debug::pkgDpkgPm=1 
  47         cp rootdir/tmp/testsuccess.output apt.output 
  48         testsuccess grep -- '--force-remove-essential --remove sysvinit' apt.output 
  49         testsuccess aptget install systemd-sysv -y -t "$1" -o APT::Force-LoopBreak=1 
  50         testdpkginstalled 'sysvinit' 'systemd-sysv' 
  53 testforcebreak 'sid-conflict' 
  54 testforcebreak 'sid-break'