Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

not enough values to unpack (expected 2, got 0) #5380

Closed
WhyNotHugo opened this issue Mar 25, 2024 · 6 comments
Closed

not enough values to unpack (expected 2, got 0) #5380

WhyNotHugo opened this issue Mar 25, 2024 · 6 comments

Comments

@WhyNotHugo
Copy link

Trying to install this recipe: https://lutris.net/games/install/23983/view

The last step that runs fine is Setting Windows 10 mode for Wine, after that, I get the mentioned issue:

image

I'm using version 0.5.16 installed from flatpak

Repro steps

  1. flatpak install net.lutris.Lutris
  2. flatpak run net.lutris.Lutris
  3. Click on +.
  4. Search for Eve Online
  5. Pick Install the new launcher (released Dec. 2023).
  6. Click next a few times through the wizard.
@WhyNotHugo WhyNotHugo changed the title ValueError: not enough values to unpack is:closed not enough values to unpack (expected 2, got 0) Mar 25, 2024
@danieljohnson2
Copy link
Contributor

That's the Eve Online (Dec 2023 Launcher) installer right? I just tried it and it was fine. I think we need more here.

Please give us a debug log. Run flatpak run net.lutris.Lutris -d at the terminal and post the terminal spam here after the install has failed. That should give us a clue, I think.

@WhyNotHugo
Copy link
Author

Here's the full output:

> flatpak run net.lutris.Lutris -d
2024-03-27 18:52:02,673: Command 'fluidsynth' not found on your system
INFO     2024-03-27 18:52:02,941 [application.do_command_line:479]:Starting Lutris 0.5.16
INFO     2024-03-27 18:52:02,942 [startup.get_drivers:67]:Running AMD Mesa driver 24.0.3 on AMD Radeon RX 7900 XT (radeonsi, navi31, LLVM 17.0.6, DRM 3.57, 6.7.9-0-edge) (0x744c)
INFO     2024-03-27 18:52:02,942 [display.display_gpu_info:78]:GPU: 1002:744C 1002:1002 (amdgpu drivers)
F: Filesystem suffix "ro" is not applicable for --nofilesystem
F: Filesystem suffix "ro" is not applicable for --nofilesystem
DEBUG    2024-03-27 18:52:03,032 [xrandr._get_vidmodes:16]:Retrieving video modes from XrandR
DEBUG    2024-03-27 18:52:03,070 [lutris.get_missing_game_ids:206]:Checking for missing games
DEBUG    2024-03-27 18:52:05,117 [application.show_window:392]:Showing window AddGamesWindow{'parent': <lutriswindow.LutrisWindow object at 0x7fb6da40bd40 (LutrisWindow at 0x56230bf47f60)>}
DEBUG    2024-03-27 18:52:08,426 [http._request:88]:GET https://lutris.net/api/games?search=eve+online&with-installers=True
DEBUG    2024-03-27 18:52:09,788 [api.get_game_installers:311]:Fetching installer https://lutris.net/api/installers/eve-online
DEBUG    2024-03-27 18:52:09,788 [http._request:88]:GET https://lutris.net/api/installers/eve-online
DEBUG    2024-03-27 18:52:09,789 [application.on_app_window_destroyed:419]:Removed window AddGamesWindow{'parent': <lutriswindow.LutrisWindow object at 0x7fb6da40bd40 (LutrisWindow at 0x56230bf47f60)>}
DEBUG    2024-03-27 18:52:09,934 [application.show_window:392]:Showing window InstallerWindoweve-online
DEBUG    2024-03-27 18:52:10,747 [xrandr._get_vidmodes:16]:Retrieving video modes from XrandR
INFO     2024-03-27 18:52:11,896 [interpreter.get_runners_to_install:257]:Runner <lutris.runners.wine.wine object at 0x7fb6da523a10> needs to be installed
DEBUG    2024-03-27 18:52:11,896 [interpreter.install_runner:276]:Installing wine
DEBUG    2024-03-27 18:52:11,896 [runner.install:469]:Installing wine (version=None, callback=<function ScriptInterpreter.install_runner.<locals>.install_more_runners at 0x7fb6da4be660>)
INFO     2024-03-27 18:52:11,896 [api.get_default_runner_version_info:204]:Getting runner information for wine (version: wine-ge-8-26-x86_64)
DEBUG    2024-03-27 18:52:11,896 [http._request:88]:GET https://lutris.net/api/runners/wine
DEBUG    2024-03-27 18:52:11,966 [downloader.start:67]:⬇ https://github.com/GloriousEggroll/wine-ge-custom/releases/download/GE-Proton8-26/wine-lutris-GE-Proton8-26-x86_64.tar.xz
DEBUG    2024-03-27 18:52:21,914 [downloader.on_download_completed:173]:Finished downloading https://github.com/GloriousEggroll/wine-ge-custom/releases/download/GE-Proton8-26/wine-lutris-GE-Proton8-26-x86_64.tar.xz
DEBUG    2024-03-27 18:52:21,973 [extract.extract_archive:129]:Extracting /home/hugo/.var/app/net.lutris.Lutris/cache/lutris/wine-lutris-GE-Proton8-26-x86_64.tar.xz to /home/hugo/.var/app/net.lutris.Lutris/data/lutris/runners/wine/wine-ge-8-26-x86_64
DEBUG    2024-03-27 18:52:30,707 [system.delete_folder:387]:Deleting folder /home/hugo/.var/app/net.lutris.Lutris/data/lutris/runners/wine/wine-ge-8-26-x86_64/.extract-21a8866d
DEBUG    2024-03-27 18:52:30,707 [extract.extract_archive:181]:Finished extracting /home/hugo/.var/app/net.lutris.Lutris/cache/lutris/wine-lutris-GE-Proton8-26-x86_64.tar.xz to /home/hugo/.var/app/net.lutris.Lutris/data/lutris/runners/wine/wine-ge-8-26-x86_64
DEBUG    2024-03-27 18:52:30,707 [runner.extract:517]:Clearing wine version cache
DEBUG    2024-03-27 18:52:30,721 [installerwindow.on_files_prepared:616]:Game files prepared.
DEBUG    2024-03-27 18:52:30,723 [installerwindow.present_installer_files_page:631]:Presenting installer files page
DEBUG    2024-03-27 18:52:32,428 [downloader.start:67]:⬇ https://launcher.ccpgames.com/eve-online/release/win32/x64/eve-online-latest+Setup.exe
DEBUG    2024-03-27 18:52:40,339 [downloader.on_download_completed:173]:Finished downloading https://launcher.ccpgames.com/eve-online/release/win32/x64/eve-online-latest+Setup.exe
INFO     2024-03-27 18:52:40,435 [file_box.on_download_complete:233]:Download completed
DEBUG    2024-03-27 18:52:40,435 [files_box.on_file_available:108]:setup is available
INFO     2024-03-27 18:52:40,435 [files_box.on_file_available:114]:All files available
INFO     2024-03-27 18:52:40,435 [installerwindow.on_files_available:662]:All files are available, continuing install
INFO     2024-03-27 18:52:40,435 [installerwindow.launch_installer_commands:670]:Launching installer commands
DEBUG    2024-03-27 18:52:40,435 [interpreter.create_game_folder:223]:Creating destination path /home/hugo/Games/eve-online
DEBUG    2024-03-27 18:52:40,436 [interpreter._iter_commands:317]:Installer command: {'task': {'arch': 'win64', 'name': 'create_prefix', 'prefix': '$GAMEDIR'}}
INFO     2024-03-27 18:52:40,450 [wine.create_prefix:97]:Creating a win64 prefix in /home/hugo/Games/eve-online
ERROR    2024-03-27 18:52:40,450 [wine.create_prefix:117]:No wineboot executable found in /home/hugo/.var/app/net.lutris.Lutris/data/lutris/runners/wine/lutris-7.2-2-x86_64/bin/wine, your wine installation is most likely broken
DEBUG    2024-03-27 18:52:40,450 [interpreter._iter_commands:317]:Installer command: {'task': {'arch': 'win64', 'key': 'Version', 'name': 'set_regedit', 'path': 'HKEY_CURRENT_USER\\Software\\Wine', 'prefix': '$GAMEDIR', 'value': 'win10'}}
DEBUG    2024-03-27 18:52:40,475 [wine.set_regedit:46]:Setting [HKEY_CURRENT_USER\Software\Wine]:Version="win10"
INFO     2024-03-27 18:52:40,477 [wine.create_prefix:97]:Creating a win64 prefix in /home/hugo/Games/eve-online
ERROR    2024-03-27 18:52:40,477 [wine.create_prefix:117]:No wineboot executable found in /home/hugo/.var/app/net.lutris.Lutris/data/lutris/runners/wine/lutris-7.2-2-x86_64/bin/wine, your wine installation is most likely broken
WARNING  2024-03-27 18:52:40,485 [wine.prelaunch:981]:No valid prefix detected in /home/hugo/Games/eve-online, creating one...
INFO     2024-03-27 18:52:40,485 [wine.create_prefix:97]:Creating a win64 prefix in /home/hugo/Games/eve-online
DEBUG    2024-03-27 18:52:40,485 [system._execute:104]:Executing /home/hugo/.var/app/net.lutris.Lutris/data/lutris/runners/wine/wine-ge-8-26-x86_64/bin/wineboot
DEBUG    2024-03-27 18:52:40,485 [system._execute:110]:WINEARCH=win64 WINEPREFIX=/home/hugo/Games/eve-online WINEDLLOVERRIDES=winemenubuilder= WINE_MONO_CACHE_DIR=/home/hugo/.var/app/net.lutris.Lutris/data/lutris/runners/wine/wine-ge-8-26-x86_64/mono WINE_GECKO_CACHE_DIR=/home/hugo/.var/app/net.lutris.Lutris/data/lutris/runners/wine/wine-ge-8-26-x86_64/gecko
INFO     2024-03-27 18:52:42,911 [wine.create_prefix:149]:win64 Prefix created in /home/hugo/Games/eve-online
ERROR    2024-03-27 18:52:42,930 [system._execute:100]:No executable found in ['/home/hugo/.var/app/net.lutris.Lutris/data/lutris/runners/wine/lutris-7.2-2-x86_64/bin/wine', 'regedit', '/S', '/home/hugo/.var/app/net.lutris.Lutris/cache/lutris/winekeys.reg']
ERROR    2024-03-27 18:52:42,930 [jobs.target:33]:Error while completing task <bound method CommandsMixin.task of <interpreter.ScriptInterpreter object at 0x7fb6da41b440 (lutris+installer+interpreter+ScriptInterpreter at 0x56230c8a8d00)>>: <class 'ValueError'> not enough values to unpack (expected 2, got 0)
  File "/app/lib/python3.11/site-packages/lutris/util/jobs.py", line 31, in target
    result = self.function(*args, **kwargs)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/app/lib/python3.11/site-packages/lutris/installer/commands.py", line 429, in task
    command = task(**data)
              ^^^^^^^^^^^^
  File "/app/lib/python3.11/site-packages/lutris/runners/commands/wine.py", line 47, in set_regedit
    set_regedit_file(reg_path, wine_path=wine_path, prefix=prefix, arch=arch)
  File "/app/lib/python3.11/site-packages/lutris/runners/commands/wine.py", line 59, in set_regedit_file
    wineexec(
  File "/app/lib/python3.11/site-packages/lutris/runners/commands/wine.py", line 320, in wineexec
    return system.execute(command_parameters, env=baseenv, cwd=working_dir)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/app/lib/python3.11/site-packages/lutris/util/system.py", line 73, in execute
    stdout, _stderr = _execute(command, env=env, cwd=cwd, quiet=quiet, shell=shell, timeout=timeout)
    ^^^^^^^^^^^^^^^
ERROR    2024-03-27 18:52:42,930 [interpreter._iter_commands:302]:Last install command failed, show error

Looks like Lutris is trying to run /home/hugo/.var/app/net.lutris.Lutris/data/lutris/runners/wine/lutris-7.2-2-x86_64/bin/wine, which indeed does not exist.

From what I can tell, in lutris/util/system.py if anything fails in the _execute function this is merely logged and ignored, and an empty string is returned. However, when this function doesn't fail, it returns two values. The call site expects two values, so when it receives an empty string it raises the above exception.

@danieljohnson2
Copy link
Contributor

I believe you are 100% right. I'll fix that by returning tuples of empty strings, and adding type notations that will at least catch this error here to make sure I got 'em all.

There's no easy way for you to test this using flatpak until a new beta comes out, but I'm fairly confident this will fix that bug.

I'm not too sure your game will work if /home/hugo/.var/app/net.lutris.Lutris/data/lutris/runners/wine/lutris-7.2-2-x86_64/bin/wine is missing. Not sure what has happened there, but you may need to install or reinstall that version of Wine.

It looks like Lutris should have installed that for you, but didn't for some reason. Curious.

@danieljohnson2
Copy link
Contributor

OK, I've looked into this more and I believe you are also experiencing issue #5302, and it is fixed in the master, so that's why I was not reproing it. The next release should correct this and allow your game installer to work.

In the meantime, #5302 suggests that installing the offending Wine version yourself, first, may work around this issue and allow you to install the game. So give that a try.

@WhyNotHugo
Copy link
Author

WhyNotHugo commented Mar 28, 2024

I noticed wine-ge-8-25 is downloaded through this process; why is it trying to use /home/hugo/.var/app/net.lutris.Lutris/data/lutris/runners/wine/lutris-7.2-2-x86_64/bin/wine ?

@WhyNotHugo
Copy link
Author

Never mind, the script mentions this below.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants