printf: don't print colors when not run in a terminal

This seems to confuse systemd/journald.