def id(self):
def normalize(distro_id, table):<EOL><INDENT>distro_id = distro_id.lower().replace('<STR_LIT:U+0020>', '<STR_LIT:_>')<EOL>return table.get(distro_id, distro_id)<EOL><DEDENT>distro_id = self.os_release_attr('<STR_LIT:id>')<EOL>if distro_id:<EOL><INDENT>return normalize(distro_id, NORMALIZED_OS_ID)<EOL><DEDENT>distro_id = self.lsb_release_attr('<STR_LIT>')<EOL>if distro_id:<EOL><INDENT>return normalize(distro_id, NORMALIZED_LSB_ID)<EOL><DEDENT>distro_id = self.distro_release_attr('<STR_LIT:id>')<EOL>if distro_id:<EOL><INDENT>return normalize(distro_id, NORMALIZED_DISTRO_ID)<EOL><DEDENT>distro_id = self.uname_attr('<STR_LIT:id>')<EOL>if distro_id:<EOL><INDENT>return normalize(distro_id, NORMALIZED_DISTRO_ID)<EOL><DEDENT>return '<STR_LIT>'<EOL>
Return the distro ID of the OS distribution, as a string.

        For details, see :func:`distro.id`.