add is_osx func