@cached_property<EOL><INDENT>def _distro_release_info(self):<DEDENT>
if self.distro_release_file:<EOL><INDENT>distro_info = self._parse_distro_release_file(<EOL>self.distro_release_file)<EOL>basename = os.path.basename(self.distro_release_file)<EOL>match = _DISTRO_RELEASE_BASENAME_PATTERN.match(basename)<EOL>if match:<EOL><INDENT>distro_info['<STR_LIT:id>'] = match.group(<NUM_LIT:1>)<EOL><DEDENT>return distro_info<EOL><DEDENT>else:<EOL><INDENT>try:<EOL><INDENT>basenames = os.listdir(_UNIXCONFDIR)<EOL>basenames.sort()<EOL><DEDENT>except OSError:<EOL><INDENT>basenames = ['<STR_LIT>',<EOL>'<STR_LIT>',<EOL>'<STR_LIT>',<EOL>'<STR_LIT>',<EOL>'<STR_LIT>',<EOL>'<STR_LIT>',<EOL>'<STR_LIT>',<EOL>'<STR_LIT>',<EOL>'<STR_LIT>',<EOL>'<STR_LIT>',<EOL>'<STR_LIT>',<EOL>'<STR_LIT>',<EOL>'<STR_LIT>',<EOL>'<STR_LIT>',<EOL>'<STR_LIT>']<EOL><DEDENT>for basename in basenames:<EOL><INDENT>if basename in _DISTRO_RELEASE_IGNORE_BASENAMES:<EOL><INDENT>continue<EOL><DEDENT>match = _DISTRO_RELEASE_BASENAME_PATTERN.match(basename)<EOL>if match:<EOL><INDENT>filepath = os.path.join(_UNIXCONFDIR, basename)<EOL>distro_info = self._parse_distro_release_file(filepath)<EOL>if '<STR_LIT:name>' in distro_info:<EOL><INDENT>self.distro_release_file = filepath<EOL>distro_info['<STR_LIT:id>'] = match.group(<NUM_LIT:1>)<EOL>return distro_info<EOL><DEDENT><DEDENT><DEDENT>return {}<EOL><DEDENT>
Get the information items from the specified distro release file.

Returns:
    A dictionary containing all information items.