Get user root directory (application user configuration root directory)

    Returns
    -------
    string
        A full path

def get_user_root_directory():
    """
    Get user root directory (application user configuration root directory)

    Returns
    -------
    string
        A full path

    """
    uname = platform.system()
    if uname == 'Windows':
        root = os.path.join(os.environ['APPDATA'], APP_NAME)
        root = os.path.abspath(root)
    elif uname == 'Linux':
        if os.path.exists(os.path.expanduser('~/.config')):
            root = os.path.join(os.path.expanduser('~/.config'), APP_NAME)
        else:
            root = os.path.join(os.path.expanduser('~'), '.%s' % APP_NAME)
        root = os.path.abspath(root)
    elif uname in ('Linux', 'Darwin'):
        root = os.path.join(os.path.expanduser('~'), '.%s' % APP_NAME)
        root = os.path.abspath(root)
    else:
        root = os.path.join(os.path.expanduser('~'), APP_NAME)
        root = os.path.abspath(root)
    return root