moraroy / NonSteamLaunchers-On-Steam-Deck

Installs the latest GE-Proton and Installs Non Steam Launchers under 1 Proton prefix folder and adds them to your steam library. Installs... Battle.net, Epic Games, Ubisoft, GOG, EA App, Amazon Games, itch.io , Legacy Games, The Humble Games Collection, IndieGala, Rockstar Games Launcher,PS Plus, Glyph, VKPlay & HoYoPlay. SD Card Support and Games.
https://github.com/sponsors/moraroy
MIT License
2.71k stars 50 forks source link

Logs from my issue, trying to install on ChimeraOS #21

Closed TangoIndia closed 8 months ago

TangoIndia commented 1 year ago

Hey,

as requested here are my logs from when i try to use the installer fromo ChimeraOS (as posted on reddit)

Load the shortcuts.vdf file

with open('\''/home/gamer/.steam/root/userdata/1389990875/config/shortcuts.vdf'\'', '\''rb'\'') as f: shortcuts = vdf.binary_load(f)

Check if the '\''shortcuts'\'' key exists in the dictionary

if '\''shortcuts'\'' not in shortcuts:

Create an empty '\''shortcuts'\'' entry

shortcuts['\''shortcuts'\''] = {}

Check the format of the '\''shortcuts'\'' entry

if isinstance(shortcuts['\''shortcuts'\''], dict):

The '\''shortcuts'\'' entry is a dictionary

for key, value in shortcuts['\''shortcuts'\''].items():
    # Check the type of the value
    if not isinstance(value, (str, int, dict)):
        pass

Define the path of the Launchers

epicshortcutdirectory = '\'''\'' gogshortcutdirectory = '\'''\'' originshortcutdirectory = '\'''\'' uplayshortcutdirectory = '\'''\'' battlenetshortcutdirectory = '\'''\'' eaappshortcutdirectory = '\'''\'' amazonshortcutdirectory = '\'''\'' itchioshortcutdirectory = '\'''\'' legacyshortcutdirectory = '\'''\'' humbleshortcutdirectory = '\'''\'' indieshortcutdirectory = '\'''\'' rockstarshortcutdirectory = '\'''\''

if epicshortcutdirectory != '\'''\'':

Create a new entry for the Steam shortcut

    new_entry = {
        '\''appid'\'': '\'''\'',
        '\''AppName'\'': '\''Epic Games'\'',
        '\''Exe'\'': '\'''\'',
        '\''StartDir'\'': '\'''\'',
        '\''icon'\'': '\'''\'',
        '\''ShortcutPath'\'': '\'''\'',
        '\''LaunchOptions'\'': '\'''\'',
        '\''IsHidden'\'': 0,
        '\''AllowDesktopConfig'\'': 1,
        '\''AllowOverlay'\'': 1,
        '\''OpenVR'\'': 0,
        '\''Devkit'\'': 0,
        '\''DevkitGameID'\'': '\'''\'',
        '\''LastPlayTime'\'': 0,
        '\''tags'\'': {
            '\''0'\'': '\''favorite'\''
        }
    }

    # Add the new entry to the shortcuts dictionary
    entry_exists = False
    if type(shortcuts['\''shortcuts'\'']) == list:
        for entry in shortcuts['\''shortcuts'\'']:
            entry.setdefault('\''AppName'\'', '\'''\'')
            entry.setdefault('\''Exe'\'', '\'''\'')
            if entry['\''AppName'\''] == new_entry['\''AppName'\''] and entry['\''Exe'\''] == new_entry['\''Exe'\'']:
                entry_exists = True
                break
        if not entry_exists:
            shortcuts['\''shortcuts'\''].append(new_entry)
    elif type(shortcuts['\''shortcuts'\'']) == dict:
        for key in shortcuts['\''shortcuts'\''].keys():
            shortcuts['\''shortcuts'\''][key].setdefault('\''AppName'\'', '\'''\'')
            shortcuts['\''shortcuts'\''][key].setdefault('\''Exe'\'', '\'''\'')
            if shortcuts['\''shortcuts'\''][key]['\''AppName'\''] == new_entry['\''AppName'\''] and shortcuts['\''shortcuts'\''][key]['\''Exe'\''] == new_entry['\''Exe'\'']:
                entry_exists = True
                break
        if not entry_exists:
            # Check if the shortcuts['\''shortcuts'\''] dictionary is empty
            if not shortcuts['\''shortcuts'\'']:
                max_key = -1
            else:
                # Find the highest key value
                max_key = max(int(key) for key in shortcuts['\''shortcuts'\''].keys())
            # Add the new entry with a key value one higher than the current maximum
            shortcuts['\''shortcuts'\''][str(max_key + 1)] = new_entry

if gogshortcutdirectory != '\'''\'':

Create a new entry for the Steam shortcut

    new_entry = {
        '\''appid'\'': '\'''\'',
        '\''AppName'\'': '\''Gog Galaxy'\'',
        '\''Exe'\'': '\'''\'',
        '\''StartDir'\'': '\'''\'',
        '\''icon'\'': '\'''\'',
        '\''ShortcutPath'\'': '\'''\'',
        '\''LaunchOptions'\'': '\'''\'',
        '\''IsHidden'\'': 0,
        '\''AllowDesktopConfig'\'': 1,
        '\''AllowOverlay'\'': 1,
        '\''OpenVR'\'': 0,
        '\''Devkit'\'': 0,
        '\''DevkitGameID'\'': '\'''\'',
        '\''LastPlayTime'\'': 0,
        '\''tags'\'': {
            '\''0'\'': '\''favorite'\''
        }
    }

    # Add the new entry to the shortcuts dictionary
    entry_exists = False
    if type(shortcuts['\''shortcuts'\'']) == list:
        for entry in shortcuts['\''shortcuts'\'']:
            entry.setdefault('\''AppName'\'', '\'''\'')
            entry.setdefault('\''Exe'\'', '\'''\'')
            if entry['\''AppName'\''] == new_entry['\''AppName'\''] and entry['\''Exe'\''] == new_entry['\''Exe'\'']:
                entry_exists = True
                break
        if not entry_exists:
            shortcuts['\''shortcuts'\''].append(new_entry)
    elif type(shortcuts['\''shortcuts'\'']) == dict:
        for key in shortcuts['\''shortcuts'\''].keys():
            shortcuts['\''shortcuts'\''][key].setdefault('\''AppName'\'', '\'''\'')
            shortcuts['\''shortcuts'\''][key].setdefault('\''Exe'\'', '\'''\'')
            if shortcuts['\''shortcuts'\''][key]['\''AppName'\''] == new_entry['\''AppName'\''] and shortcuts['\''shortcuts'\''][key]['\''Exe'\''] == new_entry['\''Exe'\'']:
                entry_exists = True
                break
        if not entry_exists:
            # Check if the shortcuts['\''shortcuts'\''] dictionary is empty
            if not shortcuts['\''shortcuts'\'']:
                max_key = -1
            else:
                # Find the highest key value
                max_key = max(int(key) for key in shortcuts['\''shortcuts'\''].keys())
            # Add the new entry with a key value one higher than the current maximum
            shortcuts['\''shortcuts'\''][str(max_key + 1)] = new_entry

if uplayshortcutdirectory != '\'''\'':

Create a new entry for the Steam shortcut

    new_entry = {
        '\''appid'\'': '\'''\'',
        '\''AppName'\'': '\''Ubisoft Connect'\'',
        '\''Exe'\'': '\'''\'',
        '\''StartDir'\'': '\'''\'',
        '\''icon'\'': '\'''\'',
        '\''ShortcutPath'\'': '\'''\'',
        '\''LaunchOptions'\'': '\'''\'',
        '\''IsHidden'\'': 0,
        '\''AllowDesktopConfig'\'': 1,
        '\''AllowOverlay'\'': 1,
        '\''OpenVR'\'': 0,
        '\''Devkit'\'': 0,
        '\''DevkitGameID'\'': '\'''\'',
        '\''LastPlayTime'\'': 0,
        '\''tags'\'': {
            '\''0'\'': '\''favorite'\''
        }
    }

    # Add the new entry to the shortcuts dictionary
    entry_exists = False
    if type(shortcuts['\''shortcuts'\'']) == list:
        for entry in shortcuts['\''shortcuts'\'']:
            entry.setdefault('\''AppName'\'', '\'''\'')
            entry.setdefault('\''Exe'\'', '\'''\'')
            if entry['\''AppName'\''] == new_entry['\''AppName'\''] and entry['\''Exe'\''] == new_entry['\''Exe'\'']:
                entry_exists = True
                break
        if not entry_exists:
            shortcuts['\''shortcuts'\''].append(new_entry)
    elif type(shortcuts['\''shortcuts'\'']) == dict:
        for key in shortcuts['\''shortcuts'\''].keys():
            shortcuts['\''shortcuts'\''][key].setdefault('\''AppName'\'', '\'''\'')
            shortcuts['\''shortcuts'\''][key].setdefault('\''Exe'\'', '\'''\'')
            if shortcuts['\''shortcuts'\''][key]['\''AppName'\''] == new_entry['\''AppName'\''] and shortcuts['\''shortcuts'\''][key]['\''Exe'\''] == new_entry['\''Exe'\'']:
                entry_exists = True
                break
        if not entry_exists:
            # Check if the shortcuts['\''shortcuts'\''] dictionary is empty
            if not shortcuts['\''shortcuts'\'']:
                max_key = -1
            else:
                # Find the highest key value
                max_key = max(int(key) for key in shortcuts['\''shortcuts'\''].keys())
            # Add the new entry with a key value one higher than the current maximum
            shortcuts['\''shortcuts'\''][str(max_key + 1)] = new_entry

if originshortcutdirectory != '\'''\'':

Create a new entry for the Steam shortcut

    new_entry = {
        '\''appid'\'': '\'''\'',
        '\''AppName'\'': '\''Origin'\'',
        '\''Exe'\'': '\'''\'',
        '\''StartDir'\'': '\'''\'',
        '\''icon'\'': '\'''\'',
        '\''ShortcutPath'\'': '\'''\'',
        '\''LaunchOptions'\'': '\'''\'',
        '\''IsHidden'\'': 0,
        '\''AllowDesktopConfig'\'': 1,
        '\''AllowOverlay'\'': 1,
        '\''OpenVR'\'': 0,
        '\''Devkit'\'': 0,
        '\''DevkitGameID'\'': '\'''\'',
        '\''LastPlayTime'\'': 0,
        '\''tags'\'': {
            '\''0'\'': '\''favorite'\''
        }
    }

    # Add the new entry to the shortcuts dictionary
    entry_exists = False
    if type(shortcuts['\''shortcuts'\'']) == list:
        for entry in shortcuts['\''shortcuts'\'']:
            entry.setdefault('\''AppName'\'', '\'''\'')
            entry.setdefault('\''Exe'\'', '\'''\'')
            if entry['\''AppName'\''] == new_entry['\''AppName'\''] and entry['\''Exe'\''] == new_entry['\''Exe'\'']:
                entry_exists = True
                break
        if not entry_exists:
            shortcuts['\''shortcuts'\''].append(new_entry)
    elif type(shortcuts['\''shortcuts'\'']) == dict:
        for key in shortcuts['\''shortcuts'\''].keys():
            shortcuts['\''shortcuts'\''][key].setdefault('\''AppName'\'', '\'''\'')
            shortcuts['\''shortcuts'\''][key].setdefault('\''Exe'\'', '\'''\'')
            if shortcuts['\''shortcuts'\''][key]['\''AppName'\''] == new_entry['\''AppName'\''] and shortcuts['\''shortcuts'\''][key]['\''Exe'\''] == new_entry['\''Exe'\'']:
                entry_exists = True
                break
        if not entry_exists:
            # Check if the shortcuts['\''shortcuts'\''] dictionary is empty
            if not shortcuts['\''shortcuts'\'']:
                max_key = -1
            else:
                # Find the highest key value
                max_key = max(int(key) for key in shortcuts['\''shortcuts'\''].keys())
            # Add the new entry with a key value one higher than the current maximum
            shortcuts['\''shortcuts'\''][str(max_key + 1)] = new_entry

if battlenetshortcutdirectory != '\'''\'':

Create a new entry for the Steam shortcut

    new_entry = {
        '\''appid'\'': '\'''\'',
        '\''AppName'\'': '\''Battle.net'\'',
        '\''Exe'\'': '\'''\'',
        '\''StartDir'\'': '\'''\'',
        '\''icon'\'': '\'''\'',
        '\''ShortcutPath'\'': '\'''\'',
        '\''LaunchOptions'\'': '\'''\'',
        '\''IsHidden'\'': 0,
        '\''AllowDesktopConfig'\'': 1,
        '\''AllowOverlay'\'': 1,
        '\''OpenVR'\'': 0,
        '\''Devkit'\'': 0,
        '\''DevkitGameID'\'': '\'''\'',
        '\''LastPlayTime'\'': 0,
        '\''tags'\'': {
            '\''0'\'': '\''favorite'\''
        }
    }

    # Add the new entry to the shortcuts dictionary
    entry_exists = False
    if type(shortcuts['\''shortcuts'\'']) == list:
        for entry in shortcuts['\''shortcuts'\'']:
            entry.setdefault('\''AppName'\'', '\'''\'')
            entry.setdefault('\''Exe'\'', '\'''\'')
            if entry['\''AppName'\''] == new_entry['\''AppName'\''] and entry['\''Exe'\''] == new_entry['\''Exe'\'']:
                entry_exists = True
                break
        if not entry_exists:
            shortcuts['\''shortcuts'\''].append(new_entry)
    elif type(shortcuts['\''shortcuts'\'']) == dict:
        for key in shortcuts['\''shortcuts'\''].keys():
            shortcuts['\''shortcuts'\''][key].setdefault('\''AppName'\'', '\'''\'')
            shortcuts['\''shortcuts'\''][key].setdefault('\''Exe'\'', '\'''\'')
            if shortcuts['\''shortcuts'\''][key]['\''AppName'\''] == new_entry['\''AppName'\''] and shortcuts['\''shortcuts'\''][key]['\''Exe'\''] == new_entry['\''Exe'\'']:
                entry_exists = True
                break
        if not entry_exists:
            # Check if the shortcuts['\''shortcuts'\''] dictionary is empty
            if not shortcuts['\''shortcuts'\'']:
                max_key = -1
            else:
                # Find the highest key value
                max_key = max(int(key) for key in shortcuts['\''shortcuts'\''].keys())
            # Add the new entry with a key value one higher than the current maximum
            shortcuts['\''shortcuts'\''][str(max_key + 1)] = new_entry

if eaappshortcutdirectory != '\'''\'':

Create a new entry for the Steam shortcut

    new_entry = {
        '\''appid'\'': '\'''\'',
        '\''AppName'\'': '\''EA App'\'',
        '\''Exe'\'': '\'''\'',
        '\''StartDir'\'': '\'''\'',
        '\''icon'\'': '\'''\'',
        '\''ShortcutPath'\'': '\'''\'',
        '\''LaunchOptions'\'': '\'''\'',
        '\''IsHidden'\'': 0,
        '\''AllowDesktopConfig'\'': 1,
        '\''AllowOverlay'\'': 1,
        '\''OpenVR'\'': 0,
        '\''Devkit'\'': 0,
        '\''DevkitGameID'\'': '\'''\'',
        '\''LastPlayTime'\'': 0,
        '\''tags'\'': {
            '\''0'\'': '\''favorite'\''
        }
    }

    # Add the new entry to the shortcuts dictionary
    entry_exists = False
    if type(shortcuts['\''shortcuts'\'']) == list:
        for entry in shortcuts['\''shortcuts'\'']:
            entry.setdefault('\''AppName'\'', '\'''\'')
            entry.setdefault('\''Exe'\'', '\'''\'')
            if entry['\''AppName'\''] == new_entry['\''AppName'\''] and entry['\''Exe'\''] == new_entry['\''Exe'\'']:
                entry_exists = True
                break
        if not entry_exists:
            shortcuts['\''shortcuts'\''].append(new_entry)
    elif type(shortcuts['\''shortcuts'\'']) == dict:
        for key in shortcuts['\''shortcuts'\''].keys():
            shortcuts['\''shortcuts'\''][key].setdefault('\''AppName'\'', '\'''\'')
            shortcuts['\''shortcuts'\''][key].setdefault('\''Exe'\'', '\'''\'')
            if shortcuts['\''shortcuts'\''][key]['\''AppName'\''] == new_entry['\''AppName'\''] and shortcuts['\''shortcuts'\''][key]['\''Exe'\''] == new_entry['\''Exe'\'']:
                entry_exists = True
                break
        if not entry_exists:
            # Check if the shortcuts['\''shortcuts'\''] dictionary is empty
            if not shortcuts['\''shortcuts'\'']:
                max_key = -1
            else:
                # Find the highest key value
                max_key = max(int(key) for key in shortcuts['\''shortcuts'\''].keys())
            # Add the new entry with a key value one higher than the current maximum
            shortcuts['\''shortcuts'\''][str(max_key + 1)] = new_entry

if amazonshortcutdirectory != '\'''\'':

Create a new entry for the Steam shortcut

    new_entry = {
        '\''appid'\'': '\'''\'',
        '\''AppName'\'': '\''Amazon Games'\'',
        '\''Exe'\'': '\'''\'',
        '\''StartDir'\'': '\'''\'',
        '\''icon'\'': '\'''\'',
        '\''ShortcutPath'\'': '\'''\'',
        '\''LaunchOptions'\'': '\'''\'',
        '\''IsHidden'\'': 0,
        '\''AllowDesktopConfig'\'': 1,
        '\''AllowOverlay'\'': 1,
        '\''OpenVR'\'': 0,
        '\''Devkit'\'': 0,
        '\''DevkitGameID'\'': '\'''\'',
        '\''LastPlayTime'\'': 0,
        '\''tags'\'': {
            '\''0'\'': '\''favorite'\''
        }
    }

    # Add the new entry to the shortcuts dictionary
    entry_exists = False
    if type(shortcuts['\''shortcuts'\'']) == list:
        for entry in shortcuts['\''shortcuts'\'']:
            entry.setdefault('\''AppName'\'', '\'''\'')
            entry.setdefault('\''Exe'\'', '\'''\'')
            if entry['\''AppName'\''] == new_entry['\''AppName'\''] and entry['\''Exe'\''] == new_entry['\''Exe'\'']:
                entry_exists = True
                break
        if not entry_exists:
            shortcuts['\''shortcuts'\''].append(new_entry)
    elif type(shortcuts['\''shortcuts'\'']) == dict:
        for key in shortcuts['\''shortcuts'\''].keys():
            shortcuts['\''shortcuts'\''][key].setdefault('\''AppName'\'', '\'''\'')
            shortcuts['\''shortcuts'\''][key].setdefault('\''Exe'\'', '\'''\'')
            if shortcuts['\''shortcuts'\''][key]['\''AppName'\''] == new_entry['\''AppName'\''] and shortcuts['\''shortcuts'\''][key]['\''Exe'\''] == new_entry['\''Exe'\'']:
                entry_exists = True
                break
        if not entry_exists:
            # Check if the shortcuts['\''shortcuts'\''] dictionary is empty
            if not shortcuts['\''shortcuts'\'']:
                max_key = -1
            else:
                # Find the highest key value
                max_key = max(int(key) for key in shortcuts['\''shortcuts'\''].keys())
            # Add the new entry with a key value one higher than the current maximum
            shortcuts['\''shortcuts'\''][str(max_key + 1)] = new_entry

if itchioshortcutdirectory != '\'''\'':

Create a new entry for the Steam shortcut

    new_entry = {
        '\''appid'\'': '\'''\'',
        '\''AppName'\'': '\''itch.io'\'',
        '\''Exe'\'': '\'''\'',
        '\''StartDir'\'': '\'''\'',
        '\''icon'\'': '\'''\'',
        '\''ShortcutPath'\'': '\'''\'',
        '\''LaunchOptions'\'': '\'''\'',
        '\''IsHidden'\'': 0,
        '\''AllowDesktopConfig'\'': 1,
        '\''AllowOverlay'\'': 1,
        '\''OpenVR'\'': 0,
        '\''Devkit'\'': 0,
        '\''DevkitGameID'\'': '\'''\'',
        '\''LastPlayTime'\'': 0,
        '\''tags'\'': {
            '\''0'\'': '\''favorite'\''
        }
    }

    # Add the new entry to the shortcuts dictionary
    entry_exists = False
    if type(shortcuts['\''shortcuts'\'']) == list:
        for entry in shortcuts['\''shortcuts'\'']:
            entry.setdefault('\''AppName'\'', '\'''\'')
            entry.setdefault('\''Exe'\'', '\'''\'')
            if entry['\''AppName'\''] == new_entry['\''AppName'\''] and entry['\''Exe'\''] == new_entry['\''Exe'\'']:
                entry_exists = True
                break
        if not entry_exists:
            shortcuts['\''shortcuts'\''].append(new_entry)
    elif type(shortcuts['\''shortcuts'\'']) == dict:
        for key in shortcuts['\''shortcuts'\''].keys():
            shortcuts['\''shortcuts'\''][key].setdefault('\''AppName'\'', '\'''\'')
            shortcuts['\''shortcuts'\''][key].setdefault('\''Exe'\'', '\'''\'')
            if shortcuts['\''shortcuts'\''][key]['\''AppName'\''] == new_entry['\''AppName'\''] and shortcuts['\''shortcuts'\''][key]['\''Exe'\''] == new_entry['\''Exe'\'']:
                entry_exists = True
                break
        if not entry_exists:
            # Check if the shortcuts['\''shortcuts'\''] dictionary is empty
            if not shortcuts['\''shortcuts'\'']:
                max_key = -1
            else:
                # Find the highest key value
                max_key = max(int(key) for key in shortcuts['\''shortcuts'\''].keys())
            # Add the new entry with a key value one higher than the current maximum
            shortcuts['\''shortcuts'\''][str(max_key + 1)] = new_entry

if legacyshortcutdirectory != '\'''\'':

Create a new entry for the Steam shortcut

    new_entry = {
        '\''appid'\'': '\'''\'',
        '\''AppName'\'': '\''Legacy Games'\'',
        '\''Exe'\'': '\'''\'',
        '\''StartDir'\'': '\'''\'',
        '\''icon'\'': '\'''\'',
        '\''ShortcutPath'\'': '\'''\'',
        '\''LaunchOptions'\'': '\'''\'',
        '\''IsHidden'\'': 0,
        '\''AllowDesktopConfig'\'': 1,
        '\''AllowOverlay'\'': 1,
        '\''OpenVR'\'': 0,
        '\''Devkit'\'': 0,
        '\''DevkitGameID'\'': '\'''\'',
        '\''LastPlayTime'\'': 0,
        '\''tags'\'': {
            '\''0'\'': '\''favorite'\''
        }
    }

    # Add the new entry to the shortcuts dictionary
    entry_exists = False
    if type(shortcuts['\''shortcuts'\'']) == list:
        for entry in shortcuts['\''shortcuts'\'']:
            entry.setdefault('\''AppName'\'', '\'''\'')
            entry.setdefault('\''Exe'\'', '\'''\'')
            if entry['\''AppName'\''] == new_entry['\''AppName'\''] and entry['\''Exe'\''] == new_entry['\''Exe'\'']:
                entry_exists = True
                break
        if not entry_exists:
            shortcuts['\''shortcuts'\''].append(new_entry)
    elif type(shortcuts['\''shortcuts'\'']) == dict:
        for key in shortcuts['\''shortcuts'\''].keys():
            shortcuts['\''shortcuts'\''][key].setdefault('\''AppName'\'', '\'''\'')
            shortcuts['\''shortcuts'\''][key].setdefault('\''Exe'\'', '\'''\'')
            if shortcuts['\''shortcuts'\''][key]['\''AppName'\''] == new_entry['\''AppName'\''] and shortcuts['\''shortcuts'\''][key]['\''Exe'\''] == new_entry['\''Exe'\'']:
                entry_exists = True
                break
        if not entry_exists:
            # Check if the shortcuts['\''shortcuts'\''] dictionary is empty
            if not shortcuts['\''shortcuts'\'']:
                max_key = -1
            else:
                # Find the highest key value
                max_key = max(int(key) for key in shortcuts['\''shortcuts'\''].keys())
            # Add the new entry with a key value one higher than the current maximum
            shortcuts['\''shortcuts'\''][str(max_key + 1)] = new_entry

if humbleshortcutdirectory != '\'''\'':

Create a new entry for the Steam shortcut

    new_entry = {
        '\''appid'\'': '\'''\'',
        '\''AppName'\'': '\''Humble Games Collection'\'',
        '\''Exe'\'': '\'''\'',
        '\''StartDir'\'': '\'''\'',
        '\''icon'\'': '\'''\'',
        '\''ShortcutPath'\'': '\'''\'',
        '\''LaunchOptions'\'': '\'''\'',
        '\''IsHidden'\'': 0,
        '\''AllowDesktopConfig'\'': 1,
        '\''AllowOverlay'\'': 1,
        '\''OpenVR'\'': 0,
        '\''Devkit'\'': 0,
        '\''DevkitGameID'\'': '\'''\'',
        '\''LastPlayTime'\'': 0,
        '\''tags'\'': {
            '\''0'\'': '\''favorite'\''
        }
    }

    # Add the new entry to the shortcuts dictionary
    entry_exists = False
    if type(shortcuts['\''shortcuts'\'']) == list:
        for entry in shortcuts['\''shortcuts'\'']:
            entry.setdefault('\''AppName'\'', '\'''\'')
            entry.setdefault('\''Exe'\'', '\'''\'')
            if entry['\''AppName'\''] == new_entry['\''AppName'\''] and entry['\''Exe'\''] == new_entry['\''Exe'\'']:
                entry_exists = True
                break
        if not entry_exists:
            shortcuts['\''shortcuts'\''].append(new_entry)
    elif type(shortcuts['\''shortcuts'\'']) == dict:
        for key in shortcuts['\''shortcuts'\''].keys():
            shortcuts['\''shortcuts'\''][key].setdefault('\''AppName'\'', '\'''\'')
            shortcuts['\''shortcuts'\''][key].setdefault('\''Exe'\'', '\'''\'')
            if shortcuts['\''shortcuts'\''][key]['\''AppName'\''] == new_entry['\''AppName'\''] and shortcuts['\''shortcuts'\''][key]['\''Exe'\''] == new_entry['\''Exe'\'']:
                entry_exists = True
                break
        if not entry_exists:
            # Check if the shortcuts['\''shortcuts'\''] dictionary is empty
            if not shortcuts['\''shortcuts'\'']:
                max_key = -1
            else:
                # Find the highest key value
                max_key = max(int(key) for key in shortcuts['\''shortcuts'\''].keys())
            # Add the new entry with a key value one higher than the current maximum
            shortcuts['\''shortcuts'\''][str(max_key + 1)] = new_entry

if indieshortcutdirectory != '\'''\'':

Create a new entry for the Steam shortcut

    new_entry = {
        '\''appid'\'': '\'''\'',
        '\''AppName'\'': '\''IndieGala'\'',
        '\''Exe'\'': '\'''\'',
        '\''StartDir'\'': '\'''\'',
        '\''icon'\'': '\'''\'',
        '\''ShortcutPath'\'': '\'''\'',
        '\''LaunchOptions'\'': '\'''\'',
        '\''IsHidden'\'': 0,
        '\''AllowDesktopConfig'\'': 1,
        '\''AllowOverlay'\'': 1,
        '\''OpenVR'\'': 0,
        '\''Devkit'\'': 0,
        '\''DevkitGameID'\'': '\'''\'',
        '\''LastPlayTime'\'': 0,
        '\''tags'\'': {
            '\''0'\'': '\''favorite'\''
        }
    }

    # Add the new entry to the shortcuts dictionary
    entry_exists = False
    if type(shortcuts['\''shortcuts'\'']) == list:
        for entry in shortcuts['\''shortcuts'\'']:
            entry.setdefault('\''AppName'\'', '\'''\'')
            entry.setdefault('\''Exe'\'', '\'''\'')
            if entry['\''AppName'\''] == new_entry['\''AppName'\''] and entry['\''Exe'\''] == new_entry['\''Exe'\'']:
                entry_exists = True
                break
        if not entry_exists:
            shortcuts['\''shortcuts'\''].append(new_entry)
    elif type(shortcuts['\''shortcuts'\'']) == dict:
        for key in shortcuts['\''shortcuts'\''].keys():
            shortcuts['\''shortcuts'\''][key].setdefault('\''AppName'\'', '\'''\'')
            shortcuts['\''shortcuts'\''][key].setdefault('\''Exe'\'', '\'''\'')
            if shortcuts['\''shortcuts'\''][key]['\''AppName'\''] == new_entry['\''AppName'\''] and shortcuts['\''shortcuts'\''][key]['\''Exe'\''] == new_entry['\''Exe'\'']:
                entry_exists = True
                break
        if not entry_exists:
            # Check if the shortcuts['\''shortcuts'\''] dictionary is empty
            if not shortcuts['\''shortcuts'\'']:
                max_key = -1
            else:
                # Find the highest key value
                max_key = max(int(key) for key in shortcuts['\''shortcuts'\''].keys())
            # Add the new entry with a key value one higher than the current maximum
            shortcuts['\''shortcuts'\''][str(max_key + 1)] = new_entry

if rockstarshortcutdirectory != '\'''\'':

Create a new entry for the Steam shortcut

    new_entry = {
        '\''appid'\'': '\'''\'',
        '\''AppName'\'': '\''Rockstar Games Launcher'\'',
        '\''Exe'\'': '\'''\'',
        '\''StartDir'\'': '\'''\'',
        '\''icon'\'': '\'''\'',
        '\''ShortcutPath'\'': '\'''\'',
        '\''LaunchOptions'\'': '\'''\'',
        '\''IsHidden'\'': 0,
        '\''AllowDesktopConfig'\'': 1,
        '\''AllowOverlay'\'': 1,
        '\''OpenVR'\'': 0,
        '\''Devkit'\'': 0,
        '\''DevkitGameID'\'': '\'''\'',
        '\''LastPlayTime'\'': 0,
        '\''tags'\'': {
            '\''0'\'': '\''favorite'\''
        }
    }

    # Add the new entry to the shortcuts dictionary
    entry_exists = False
    if type(shortcuts['\''shortcuts'\'']) == list:
        for entry in shortcuts['\''shortcuts'\'']:
            entry.setdefault('\''AppName'\'', '\'''\'')
            entry.setdefault('\''Exe'\'', '\'''\'')
            if entry['\''AppName'\''] == new_entry['\''AppName'\''] and entry['\''Exe'\''] == new_entry['\''Exe'\'']:
                entry_exists = True
                break
        if not entry_exists:
            shortcuts['\''shortcuts'\''].append(new_entry)
    elif type(shortcuts['\''shortcuts'\'']) == dict:
        for key in shortcuts['\''shortcuts'\''].keys():
            shortcuts['\''shortcuts'\''][key].setdefault('\''AppName'\'', '\'''\'')
            shortcuts['\''shortcuts'\''][key].setdefault('\''Exe'\'', '\'''\'')
            if shortcuts['\''shortcuts'\''][key]['\''AppName'\''] == new_entry['\''AppName'\''] and shortcuts['\''shortcuts'\''][key]['\''Exe'\''] == new_entry['\''Exe'\'']:
                entry_exists = True
                break
        if not entry_exists:
            # Check if the shortcuts['\''shortcuts'\''] dictionary is empty
            if not shortcuts['\''shortcuts'\'']:
                max_key = -1
            else:
                # Find the highest key value
                max_key = max(int(key) for key in shortcuts['\''shortcuts'\''].keys())
            # Add the new entry with a key value one higher than the current maximum
            shortcuts['\''shortcuts'\''][str(max_key + 1)] = new_entry

Save the updated shortcuts dictionary to the shortcuts.vdf file

with open('\''/home/gamer/.steam/root/userdata/1389990875/config/shortcuts.vdf'\'', '\''wb'\'') as f: vdf.binary_dump(shortcuts, f)'

moraroy commented 1 year ago

@TangoIndia thank you for the log, yeah it's because you don't have "wget" installed for your Chimera OS. So it's unable to download anything. Arch Linux has that installed as a default apparently. .. also! It says steam no process found at the end... meaning it won't restart steam for you. I guess your steam is installed in a different path compared to the steam decks. If you can or are able to, try to find where you're default path for steam is on your OS. Then I would be able to fix that error for you.

TangoIndia commented 1 year ago

Cheers bro! ill install wget and check back.

As for the restart steam, it failed as steam wasnt opend that time of running, if have it opend it does restart steam

moraroy commented 1 year ago

@TangoIndia oh nice.. ok let me know if installing wget works for you!