(tools)
return '\n'.join(msg) if msg else 'Your system is ready.'
Audit the system for issues.

    :param tools: Tools description. Use elevation.TOOLS to test elevation.
Audit the system for issues.
Audit the system for issues .
def selfcheck(tools):
    """Audit the system for issues.

    :param tools: Tools description. Use elevation.TOOLS to test elevation.
    """
    msg = []
    for tool_name, check_cli in collections.OrderedDict(tools).items():
        try:
            subprocess.check_output(check_cli, shell=True, stderr=subprocess.STDOUT)
        except subprocess.CalledProcessError:
            msg.append('%r not found or not usable.' % tool_name)
    return '\n'.join(msg) if msg else 'Your system is ready.'
def selfcheck ( tools ) : msg = [ ] for tool_name , check_cli in collections . OrderedDict ( tools ) . items ( ) : try : subprocess . check_output ( check_cli , shell = True , stderr = subprocess . STDOUT ) except subprocess . CalledProcessError : msg . append ( '%r not found or not usable.' % tool_name ) return '\n' . join ( msg ) if msg else 'Your system is ready.'