The MRI Kernel.system method returns nil if the command could not be found, but POSIX::Spawn.system returns false.
Simple test:
puts Kernel.system("foo").inspect
puts POSIX::Spawn.system("foo").inspect
Output:
Looking at the source this should be a one-line fix.