Skip to content
cppforlife edited this page Dec 31, 2012 · 1 revision

If your Checkman file isn't doing what you expect, or there's unexpected output, you might have a bash profile that is misbehaving.

(This example assumes that your current working directory is /Applications/Checkman.app/Contents/Resources)

$ cd /Applications/Checkman.app/Contents/Resources

Checkman runs a check file like so (in this example, test.check but it could be anything):

$ bash -lc './test.check true true' < /dev/null

The output should be a parseable JSON object:

$ bash -lc './test.check true true' < /dev/null
{"result":true,"changing":true}

But, if you get something weird, e.g.

$ bash -lc './test.check true true'  < /dev/null
stty: stdin isn't a terminal
{"result":true,"changing":true}

Try running the script with the -x option:

$ bash -xlc './test.check true true'  < /dev/null

This will print every line executed by bash (and it could be very, very many lines, depending on the complexity of your environment). Search for the offending text and that should narrow down the problem.

(Taken from https://github.com/cppforlife/checkman/issues/6#issuecomment-11754986 by kmayer)

Clone this wiki locally