anchor.diff:      quit
       CMD
       wait %-
  +
  +    eval "$postVM"
  +    exit 0
  +  '' else if installMode then ''
  +    eval "$postVM"
  +    exit 0
  +  '' else ''
  +    if ! test -e "$XCHG_DIR/in-vm-exit"; then
  +      echo "Virtual machine didn't produce an exit code."
  +      exit 1
  +    fi
  +
  +    eval "$postVM"
  +    exit $(< "$XCHG_DIR/in-vm-exit")
     '';
   
   in writeScript "run-cygwin-vm.sh" ''
     #!${stdenv.shell} -e
     ${preVM}
     ${vmExec}
  +  ${postVM}
   ''
  
positive.code:   '' else ''
      ${vmTools.qemuProg} ${cygwinQemuArgs} &
      ${vmTools.qemuProg} ${controllerQemuArgs}${bgBoth}
    '' + lib.optionalString (suspendTo != null) ''
      while ! test -e "$XCHG_DIR/suspend_now"; do sleep 1; done
      ${socat}/bin/socat - UNIX-CONNECT:$MONITOR_SOCKET <<CMD
      stop
  
negative.code:     (set; declare -p) > saved-env
      XCHG_DIR="$(${coreutils}/bin/mktemp -d nix-vm.XXXXXXXXXX --tmpdir)"
      ${coreutils}/bin/mv saved-env "$XCHG_DIR/"
  
      eval "$preVM"
  
      QEMU_VDE_SOCKET="$(pwd)/vde.ctl"
      MONITOR_SOCKET="$(pwd)/monitor"
      ${vde2}/bin/vde_switch -s "$QEMU_VDE_SOCKET" &
  