The actual errors might be nice to match here, and can be formatted such that they aren't just `posix()` atoms. See the docs for `file:format_error/1`.