Okay, it doesn't do any logging, but I think I know why it barfs under MRPI:
Code:
killall ${HACKNAME} 2>/dev/null
That returns a non-zero exit code on fresh installs (i.e., process not found). The official OTA updater doesn't care, but MRPI is stricter, and aborts on unhandled non-zero return codes.
Wrapping it around a test should help, something like:
Code:
if killall -0 ${HACKNAME} 2>/dev/null ; then
killall ${HACKNAME} 2>/dev/null
fi