The pm2 unstartup will always failed in macos. Because the pm2.*.plist will never been deleted.
commands = [
'launchctl remove ' + launchd_service_name + ' || true',
'rm ' + destination
];
launchctl remove always return no-zero value, so rm in the next will never been executed.