Code Monkey home page Code Monkey logo

agora's Introduction

Lutris

LiberaPayBadge_ PatreonBadge_

Lutris helps you install and play video games from all eras and from most gaming systems. By leveraging and combining existing emulators, engine re-implementations and compatibility layers, it gives you a central interface to launch all your games.

The client can connect with existing services like Humble Bundle, GOG and Steam to make your game libraries easily available. Game downloads and installations are automated and can be modified through user made scripts.

Running Lutris

If you have not installed Lutris through your package manager and are using the source package, it is recommended that you install lutris at least once, even an older version to have all dependencies available. Once all dependencies are satisfied, you can run lutris directly from the source directory with ./bin/lutris

If you need to run lutris through gdb to troubleshoot segmentation faults, you can use the following command:

gdb -ex r --args "/usr/bin/python3" "./bin/lutris"

Installer scripts

Lutris installations are fully automated through scripts, which can be written in either JSON or YAML. The scripting syntax is described in docs/installers.rst, and is also available online at lutris.net.

Game library

Optional accounts can be created at lutris.net and linked with Lutris clients. This enables your client to automatically sync fetch library from the website. It is currently not possible to sync from the client to the cloud. Via the website, it is also possible to sync your Steam library to your Lutris library.

The Lutris client only stores a token when connected with the website, and your login credentials are never saved. This token is stored in ~/.cache/lutris/auth-token.

Configuration files

  • ~/.config/lutris: The client, runners, and game configuration files

    There is no need to manually edit these files as everything should be done from the client.

  • lutris.conf: Preferences for the client's UI
  • system.yml: Default game configuration, which applies to every game
  • runners/*.yml: Runner-specific configurations
  • games/*.yml: Game-specific configurations

Game-specific configurations overwrite runner-specific configurations, which in turn overwrite the system configuration.

Runners and the game database

~/.local/share/lutris: All data necessary to manage Lutris' library and games, including:

  • pga.db: An SQLite database tracking the game library, game installation status, various file locations, and some additional metadata
  • runners/*: Runners downloaded from lutris.net <https://lutris.net>
  • banners/*.jpg: Game banners

~/.local/share/icons/hicolor/128x128/apps/lutris_*.png: Game icons

Command line options

The following command line arguments are available:

-v, --version                    Print the version of Lutris and exit
-d, --debug                      Show debug messages
-i, --install                    Install a game from a yml file
-b, --output-script              Generate a bash script to run a game without the client
-e, --exec                       Execute a program with the lutris runtime
-l, --list-games                 List all games in database
-o, --installed                  Only list installed games
-s, --list-steam-games           List available Steam games
--list-steam-folders             List all known Steam library folders
--list-runners                   List all known runners
--list-wine-versions              List all known Wine runners
-a, --list-all-service-games     List all games for all services in database
--list-service-games             List all games for provided service in database
-r, --install-runner             Install a Runner
-u, --uninstall-runner           Uninstall a Runner
-j, --json                       Display the list of games in JSON format
--reinstall                      Reinstall game
--display=DISPLAY                X display to use
--export <game>                  Exports specified game (requires --dest)
--import <game.7z)               Import games from exportfile (requires --dest)
--dest <folder>                  Specifies Export/Import destination folder

Additionally, you can pass a lutris: protocol link followed by a game identifier on the command line such as:

lutris lutris:quake

This will install the game if it is not already installed, otherwise it will launch the game. The game will always be installed if the --reinstall flag is passed.

Support the project

Lutris is 100% community supported, to ensure a continuous development on the project, please consider donating to the project. Our main platform for supporting Lutris is Patreon: https://www.patreon.com/lutris but there are also other options available at https://lutris.net/donate

Come with us!

Want to make Lutris better? Help implement features, fix bugs, test pre-releases, or simply chat with the developers?

You can always reach us on:

agora's People

Contributors

strycore avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

agora's Issues

Improve support for AMD + Intel GPU setups

Battle.net application crashes my entire desktop if run without DXVK enabled. Happens with every version of WINE I've tried (3.16, 3.18, 3.21, 4.4) on Lutris 0.5.1.3. The Battle.net login window works without problems, but the next window causes a black screen and then kicks me out to SDDM.

Enabling DXVK fixes the issue and Battle.net works without problems.

I'm not entirely sure when or why this started happening, as it was working fine a few weeks ago and I haven't made any major system changes. Mesa version didn't change (18.2.2) and I'm on Ubuntu 18.10 using KDE.

Lutris replaces JACK / Pulse bridges with its own when game launches.

Describe the bug

When I launch a game, Lutris replaces my established JACK / Pulse bridges with its own.

This only happens if JACK is running prior to game launch. If I start the Jack server after the game is already loaded, it does not occur.

I can do this even with the game / Lutris running.

It stays in effect even if I quit the game. To undo the effects I must:

  • Stop the Jack Server (which disconnects PulseAudio)
  • Restart pulseaudio
  • Restart the Jack server
  • Reopen my Carla configuration file

However, if I restart PulseAudio without stopping the Jack server first, the altered Lutris Pulse bridges remain.

This does not occur when running the same game under Steam / Proton, so this has to be caused by Lutris / Wine.

Expected behavior

My PulseAudio bridges should remain untouched.

Current behavior

Lutris replaces my established JACK / Pulse bridges with its own.

Steps to reproduce

  • Launch game in Lutris while JACK Server is running.

Lutris debugging output

2020-08-09 01:20:47,721: Getting full game list from MAME...
2020-08-09 01:20:47,721: MAME XML generation launched in the background, not returning anything this time
2020-08-09 01:20:47,723: MAME isn't installed, can't retrieve systems list.
2020-08-09 01:20:47,914: MAME XML written

System information

The .json file created by typing lutris --submit-issue in a terminal.

Github says "We don't support that file type" when I try uploading it to this bug report. Do you mean to instruct me to copy/paste the contents of the .json file? Is it needed for this issue?

Screenshots

Before launching game from Lutris...

image

After launching game from Lutris...

image

[Feature] Add GNOME Shell Search Provider

Many GNOME apps use a search provider to enable quick access to functions without needing to open the app. I would really like to be able to launch games from Lutris using this. I would prefer it to just adding the game to my application launcher because I like to keep all my games inside Lutris without having all of them cluttering up the application launcher. (I have a lot of games)

Option to launch a console with the selected prefix set

Similar to PoL Configure -> Miscellaneous - > Open a Shell
Useful for running winetricks (the way Lutris currently does this is unreliable, tends to get stuck in a 'select default prefix' loop) and the occasional other thing you may need to run from a console.

Sure you could set the prefix manually, but not doing that is half the point of using a prefix manager in the first place.

[Feature Request] Splitscreen multiplayer tool

Nucleus Co-op is a Windows Application, which essentially lets the user play online co-op games locally as splitscreen multiplayer. It is, however, Windows exclusive, and no Linux version seems to exist. But that could be Lutris.

Essentially, what Nucleus does is it starts the application multiple times, and tries to circumvent all mutexes that try to stop the user from doing it. Besides that, each instance will get absolute control over one of the controllers, by being provided a patched version of the controller library. Subsequently, the user can use the LAN features to connect the separate game instances. While of course more resource-intensive than having a real implementation in the game, it does seem to work.

Similar functionality could be super cool to have in Lutris. I do not know if this is outside of the scope of the project, but I have been unable to find any past discussion on it.

[Feature Request] Dolphin Custom Global User Directory

Current behavior

Users have to manually modify Dolphin's Global User Directory
https://wiki.dolphin-emu.org/index.php?title=Controlling_the_Global_User_Directory

Expected behavior

Users will be able to modify the Global User Directory via Dolphin's "Runner options" in Lutris

Justification

Other emulators have their own options to set a custom configuration path, Dolphin should also have this ability. It is inconvenient for users to have to manually do this through a terminal, and if a user uninstalls Lutris's Dolphin build and then reinstalls it, the Global User Directory configuration set via the terminal is lost. This is bad for users wanting to update their Dolphin build to a more recent one.

Libstrangle stops PCSX2 from running

Describe the bug

When using the "Fps limit" option to use libstrangle to lock FPS, PCSX2 will boot and quickly freeze.

Expected behavior

Warning should be displayed on "FPS limit" hover-message to mention incompatibility with PCSX2

Current behavior

No warning is given to the user and PCSX2 crashes

Steps to reproduce

  • Set up a game to run in Lutris's PCSX2 runner; should happen in any version but version I used was v1.5.0-dev-3311-g3c38087e7
  • Set "FPS limit" in "System Options" to 60
  • Attempt to run the game
  • PCSX2 will attempt to boot the game before freezing

GOG Innoextract 5.6.2 Issues

Describe the bug

The GOG version of Heroes of Might and Magic is not installing, even with the installer edited to use the development version of Innoextract linked here in issue lutris/lutris#1949

Expected behavior

~/Games/heroes-of-might-and-magic to be full of game files

Current behavior

~/Games/heroes-of-might-and-magic is has an .ico file and a webcache.zip

Steps to reproduce

Lutris debugging output

(lutris:3057): dbind-WARNING **: 12:51:54.407: Error retrieving accessibility bus address: org.freedesktop.DBus.Error.ServiceUnknown: The name org.a11y.Bus was not provided by any .service files

System information

{
  "comment": "",
  "system": {
    "nvidia_driver": {
      "nvrm": {
        "vendor": "NVIDIA",
        "platform": "UNIX",
        "arch": "x86_64",
        "version": "340.107",
        "date": "Thu May 24 21:54:01 PDT 2018"
      }
    },
    "nvidia_gpus": [
      {
        "Model": "GeForce 320M",
        "IRQ": "25",
        "GPU UUID": "GPU-0973f4e8-76bd-e823-42b6-40e0f80c5b3b",
        "Video BIOS": "70.89.02.00.00",
        "Bus Type": "PCI",
        "DMA Size": "40 bits",
        "DMA Mask": "0xffffffffff",
        "Bus Location": "0000:02:00.0"
      }
    ],
    "gpus": [
      {
        "DRIVER": "nvidia",
        "PCI_ID": "10DE:08A0",
        "PCI_SUBSYS_ID": "106B:00CE",
        "PCI_CLASS": "30000",
        "PCI_SLOT_NAME": "0000:02:00.0",
        "MODALIAS": "pci:v000010DEd000008A0sv0000106Bsd000000CEbc03sc00i00"
      }
    ],
    "env": {
      "USER": "stoz",
      "LANGUAGE": "en_AU:en",
      "XDG_SEAT": "seat0",
      "XDG_SESSION_TYPE": "x11",
      "SSH_AGENT_PID": "770",
      "SHLVL": "0",
      "HOME": "/home/stoz",
      "DESKTOP_SESSION": "Lubuntu",
      "XDG_SEAT_PATH": "/org/freedesktop/DisplayManager/Seat0",
      "DBUS_SESSION_BUS_ADDRESS": "unix:path=/run/user/1000/bus",
      "LOGNAME": "stoz",
      "XDG_SESSION_ID": "c1",
      "PATH": "/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games",
      "GDM_LANG": "en_AU",
      "XDG_RUNTIME_DIR": "/run/user/1000",
      "XDG_SESSION_PATH": "/org/freedesktop/DisplayManager/Session0",
      "DISPLAY": ":0.0",
      "LANG": "en_AU.UTF-8",
      "XDG_SESSION_DESKTOP": "Lubuntu",
      "XAUTHORITY": "/home/stoz/.Xauthority",
      "XDG_GREETER_DATA_DIR": "/var/lib/lightdm-data/stoz",
      "SSH_AUTH_SOCK": "/tmp/ssh-wjoJiCoPKmYA/agent.694",
      "SHELL": "/bin/bash",
      "GDMSESSION": "Lubuntu",
      "GPG_AGENT_INFO": "/run/user/1000/gnupg/S.gpg-agent:0:1",
      "XDG_VTNR": "7",
      "PWD": "/home/stoz",
      "XDG_DATA_DIRS": "/etc/xdg/lubuntu:/usr/local/share:/usr/share:/usr/share/gdm:/var/lib/menu-xdg:/usr/share/Lubuntu:/usr/local/share/:/usr/share/",
      "XDG_CONFIG_DIRS": "/etc/xdg/lubuntu:/etc/xdg/xdg-Lubuntu:/etc/xdg",
      "XDG_CURRENT_DESKTOP": "LXDE",
      "_LXSESSION_PID": "694",
      "XDG_CONFIG_HOME": "/home/stoz/.config",
      "XDG_MENU_PREFIX": "lxde-",
      "GTK_OVERLAY_SCROLLING": "0",
      "QT_STYLE_OVERRIDE": "gtk",
      "QT_PLATFORM_PLUGIN": "lxqt",
      "QT_QPA_PLATFORMTHEME": "lxqt",
      "DESKTOP_STARTUP_ID": "lxpanel-800-macbook-lutris-0_TIME62016"
    },
    "missing_libs": {
      "OPENGL": [
        [],
        []
      ],
      "VULKAN": [
        [
          "libvulkan.so.1"
        ],
        []
      ],
      "WINE": [
        [],
        []
      ],
      "GAMEMODE": [
        [
          "libgamemodeauto.so"
        ],
        [
          "libgamemodeauto.so"
        ]
      ]
    },
    "cpus": [
      {
        "processor": "0",
        "vendor_id": "GenuineIntel",
        "cpu family": "6",
        "model": "23",
        "model name": "Intel(R) Core(TM)2 Duo CPU     P8600  @ 2.40GHz",
        "stepping": "10",
        "microcode": "0xa0b",
        "cpu MHz": "1160.559",
        "cache size": "3072 KB",
        "physical id": "0",
        "siblings": "2",
        "core id": "0",
        "cpu cores": "2",
        "apicid": "0",
        "initial apicid": "0",
        "fpu": "yes",
        "fpu_exception": "yes",
        "cpuid level": "13",
        "wp": "yes",
        "flags": "fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx lm constant_tsc arch_perfmon pebs bts rep_good nopl cpuid aperfmperf pni dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm sse4_1 xsave lahf_lm pti tpr_shadow vnmi flexpriority dtherm",
        "bugs": "cpu_meltdown spectre_v1 spectre_v2 spec_store_bypass l1tf mds",
        "bogomips": "4778.25",
        "clflush size": "64",
        "cache_alignment": "64",
        "address sizes": "36 bits physical, 48 bits virtual",
        "power management": ""
      },
      {
        "processor": "1",
        "vendor_id": "GenuineIntel",
        "cpu family": "6",
        "model": "23",
        "model name": "Intel(R) Core(TM)2 Duo CPU     P8600  @ 2.40GHz",
        "stepping": "10",
        "microcode": "0xa0b",
        "cpu MHz": "1040.800",
        "cache size": "3072 KB",
        "physical id": "0",
        "siblings": "2",
        "core id": "1",
        "cpu cores": "2",
        "apicid": "1",
        "initial apicid": "1",
        "fpu": "yes",
        "fpu_exception": "yes",
        "cpuid level": "13",
        "wp": "yes",
        "flags": "fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx lm constant_tsc arch_perfmon pebs bts rep_good nopl cpuid aperfmperf pni dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm sse4_1 xsave lahf_lm pti tpr_shadow vnmi flexpriority dtherm",
        "bugs": "cpu_meltdown spectre_v1 spectre_v2 spec_store_bypass l1tf mds",
        "bogomips": "4778.25",
        "clflush size": "64",
        "cache_alignment": "64",
        "address sizes": "36 bits physical, 48 bits virtual",
        "power management": ""
      }
    ],
    "drives": [
      {
        "name": "sda",
        "fstype": null,
        "label": null,
        "uuid": null,
        "mountpoint": null,
        "children": [
          {
            "name": "sda1",
            "fstype": "vfat",
            "label": null,
            "uuid": "6159-9789",
            "mountpoint": "/boot/efi"
          },
          {
            "name": "sda2",
            "fstype": "ext4",
            "label": null,
            "uuid": "6f21e8f0-587e-4d46-944b-24d49e6218e7",
            "mountpoint": "/"
          }
        ]
      },
      {
        "name": "sr0",
        "fstype": null,
        "label": null,
        "uuid": null,
        "mountpoint": null
      }
    ],
    "ram": {
      "mem": {
        "total": "4810492",
        "used": "1259408",
        "free": "1020776",
        "shared": "132096",
        "buff/cache": "2530308",
        "available": "3125588"
      },
      "swap": {
        "total": "2097148",
        "used": "0",
        "free": "2097148"
      }
    },
    "dist": [
      "Ubuntu",
      "18.04",
      "bionic"
    ],
    "glxinfo": {
      "name_of_display": ":0.0",
      "opengl_es_profile_version": "OpenGL ES 2.0 NVIDIA 340.107 340.107",
      "opengl_es_profile_shading_language_version": "OpenGL ES GLSL ES 1.00",
      "direct_rendering": "Yes",
      "opengl_core_profile_profile_mask": "core profile",
      "display": ":0",
      "opengl_renderer": "GeForce 320M/integrated/SSE2",
      "screen": "0",
      "opengl_shading_language_version": "3.30 NVIDIA via Cg compiler",
      "opengl_core_profile_shading_language_version": "3.30 NVIDIA via Cg compiler",
      "opengl_vendor": "NVIDIA Corporation",
      "opengl_core_profile_context_flags": "(none)",
      "opengl_profile_mask": "(none)",
      "opengl_context_flags": "(none)",
      "opengl_version": "3.3.0 NVIDIA 340.107",
      "opengl_core_profile_version": "3.3.0 NVIDIA 340.107"
    }
  }
}

Other

I manually downloaded the Innoextract dev version from here:

https://lutris.nyc3.digitaloceanspaces.com/tools/innoextract/innoextract-1.8-dev-2019-01-13-linux.tar.xz

Then I manually downloaded the GOG installer setup_heroes_of_might_and_magic_1.2_(28044).exe

I then manually ran innoextract on the installer. This extracts the files but seems to mash them all together in a way I wasn't expecting. This is the ls -1a output for the folder it extracted into.

app
commonappdata
CONNECT.BAT
DATA
DOSBOX
editor.cmd
EDITOR.EXE
GAMES
goggame-1207658748.hashdb
goggame-1207658748.ico
goggame-1207658748.info
goggame-1207658748.script
HELP
HEROES.CFG
HEROES.EXE
homm1.gog
INSTALL.EXE
manual.pdf
MAPS
netbios.exe
README.TXT
__redist
reference_card.pdf
SETUP.EXE
__support
tmp
WAIL32.DLL
wing.32

The lutris installer is only merging in the contents of the app folder, but it only contains 2 files (the ico and zip mentioned earlier), so it seems the installer was expecting a lot more data in the app folder.

My question is, is this due to GOG changing the structure of the installer, or is it an issue with the Innoextract dev version, or do I just need to edit the Lutris Installer to merge in a whole bunch more of the files and folders?

WoT and starting lutris from terminal

In short, Worlf of tanks is not working very well for past few months, but today i found a post on lutris.net that starting lutris from terminal makes it better and... ye its working. When i start game from shortcut almost no combination of dxvk and wine works, game crashes right in the moment it should start 3d mode. Last good combination for me was wine 4.6 lutris and dxvk 1.6.1
But it got alot of graphic glitches.
Today i started lutris from the terminal, and put wine 5.14 and newest dxvk and everything works perfectly, then one more test with shortcut start and again it dosnt...
What's going on?

arch, plasma, 5700xt, mesa-git

Automatically theme Wine at prefix/user.reg creation

Have Lutris insert keys and values for theming when creating a prefix.

Screenshot 1
Screenshot 2

Here's the background and reg file I made:

Edit: Made further changes to reg.

reg-n-bmp.zip

I was thinking the background should be stored in media and symlinked into $GAMEDIR/drive_c/users/Public/Pictures at prefix creation.

Default wine executable to wine64 with 64-bit builds

Currently if you need to use wine64 (for Elite Dangerous for example) the only way to do this is via adding a custom wine path and manually pointing to wine64 within the runners bin folder.
This is needed for Elite Dangerous to have a working Lutris script.

[Feature Request] Add Volume Slider for Individual Games

Some games have a lower volume than the others, including those that run through wine/proton. It would be nice to either automatically raise the volume a certain percentage when the game starts and reset it back to the value it was on before after the game exits or to be able to amplify the volume output of the game beyond the in-game maximum levels without changing the level of the system volume.

Support non-multilib x86_64 setups

Currently Lutris seems to expect an x86_64 system to always be capable of running 32-bit programs, while this is not always the case. For example Gentoo Linux has an option to install as pure 64-bit, and Alpine Linux supports both x86_64 and x86 but not multilib. Besides, distributions like Ubuntu have already shown they like to get rid of multilib as well.

There are several ways of solving this, for example by installing stuff into Flatpaks, chroots or even Docker (assuming the kernel has been configured to be able to execute 32-bit programs on 64-bit). Preferably Lutris would realize itself the system is not capable of running 32-bit programs, and automatically install stuff in a compatible way when required.

Ability to specify default location for runners.

Describe the bug
Because i have a rather small home directory, i would like the option to specify the default location where runners are stored.
I currently need to symbolic link ~/.local/share/lutris -> /opt/Lutris because my /opt partition has more as my /home.
I ran into this need because i got an error about not enough diskspace at some point.

Expected behavior

Ability to set default install location for all runners in the system preferences, like we can at moment for game installs.

Current behavior

No way besides manually symbolic linking.

Steps to reproduce
Lutris debugging output
System information
Kubuntu 19.10 64bit
Screenshots

Setting Witcher 3 working directory to folder with vkBasalt.conf crashes game

Describe the bug

Setting the working directory of the Witcher 3 to a folder that contains a vkBasalt.conf crashes the game. I haven't tested if this happens on other games.

Expected behavior

The game doesn't crash, and uses the vkBasalt config in the set working directory.

Current behavior

The game crashes.

Steps to reproduce

  • Set the game's working directory to its root folder
  • Put a vkBasalt.conf file in that working directory

Lutris debugging output

Running /home/cassidy/.local/share/lutris/runners/wine/lutris-5.2-x86_64/bin/wine /home/cassidy/Games/Witcher3/dosdevices/c:/GOG Games/The Witcher 3 Wild Hunt GOTY/bin/x64/witcher3.exe
gamemodeauto: 
esync: up and running.
gamemodeauto: 
info:  Game: witcher3.exe
info:  DXVK: v1.5.5
info:  Built-in extension providers:
info:    Win32 WSI
info:    OpenVR
warn:  OpenVR: Failed to locate module
info:  Enabled instance extensions:
info:    VK_KHR_surface
info:    VK_KHR_win32_surface
WARNING: radv is not a conformant vulkan implementation, testing use only.
info:  AMD RADV NAVI10 (LLVM 9.0.1):
info:    Driver: 19.3.4
info:    Vulkan: 1.1.107
info:    Memory Heap[0]: 
info:      Size: 7936 MiB
info:      Flags: 0x1
info:      Memory Type[0]: Property Flags = 0x1
info:    Memory Heap[1]: 
info:      Size: 256 MiB
info:      Flags: 0x1
info:      Memory Type[2]: Property Flags = 0x7
info:    Memory Heap[2]: 
info:      Size: 8176 MiB
info:      Flags: 0x0
info:      Memory Type[1]: Property Flags = 0x6
info:      Memory Type[3]: Property Flags = 0xe
info:  D3D11CoreCreateDevice: Probing D3D_FEATURE_LEVEL_11_0
info:  D3D11CoreCreateDevice: Using feature level D3D_FEATURE_LEVEL_11_0
info:  Device properties:
info:    Device name:     : AMD RADV NAVI10 (LLVM 9.0.1)
info:    Driver version   : 19.3.4
info:  Enabled device extensions:
info:    VK_EXT_depth_clip_enable
info:    VK_EXT_host_query_reset
info:    VK_EXT_memory_priority
info:    VK_EXT_shader_stencil_export
info:    VK_EXT_shader_viewport_index_layer
info:    VK_EXT_transform_feedback
info:    VK_EXT_vertex_attribute_divisor
info:    VK_KHR_create_renderpass2
info:    VK_KHR_depth_stencil_resolve
info:    VK_KHR_draw_indirect_count
info:    VK_KHR_driver_properties
info:    VK_KHR_image_format_list
info:    VK_KHR_sampler_mirror_clamp_to_edge
info:    VK_KHR_swapchain
info:  Device features:
info:    robustBufferAccess                     : 1
info:    fullDrawIndexUint32                    : 1
info:    imageCubeArray                         : 1
info:    independentBlend                       : 1
info:    geometryShader                         : 1
info:    tessellationShader                     : 1
info:    sampleRateShading                      : 1
info:    dualSrcBlend                           : 1
info:    logicOp                                : 1
info:    multiDrawIndirect                      : 1
info:    drawIndirectFirstInstance              : 1
info:    depthClamp                             : 1
info:    depthBiasClamp                         : 1
info:    fillModeNonSolid                       : 1
info:    depthBounds                            : 1
info:    multiViewport                          : 1
info:    samplerAnisotropy                      : 1
info:    textureCompressionBC                   : 1
info:    occlusionQueryPrecise                  : 1
info:    pipelineStatisticsQuery                : 1
info:    vertexPipelineStoresAndAtomics         : 0
info:    fragmentStoresAndAtomics               : 1
info:    shaderImageGatherExtended              : 1
info:    shaderStorageImageExtendedFormats      : 1
info:    shaderStorageImageReadWithoutFormat    : 1
info:    shaderStorageImageWriteWithoutFormat   : 1
info:    shaderClipDistance                     : 1
info:    shaderCullDistance                     : 1
info:    shaderFloat64                          : 1
info:    shaderInt64                            : 1
info:    variableMultisampleRate                : 1
info:  VK_EXT_conditional_rendering
info:    conditionalRendering                   : 1
info:  VK_EXT_depth_clip_enable
info:    depthClipEnable                        : 1
info:  VK_EXT_host_query_reset
info:    hostQueryReset                         : 1
info:  VK_EXT_memory_priority
info:    memoryPriority                         : 1
info:  VK_EXT_shader_demote_to_helper_invocation
info:    shaderDemoteToHelperInvocation         : 0
info:  VK_EXT_transform_feedback
info:    transformFeedback                      : 1
info:    geometryStreams                        : 1
info:  VK_EXT_vertex_attribute_divisor
info:    vertexAttributeInstanceRateDivisor     : 1
info:    vertexAttributeInstanceRateZeroDivisor : 1
info:  Queue families:
info:    Graphics : 0
info:    Transfer : 0
info:  DXVK: Read 2674 valid state cache entries
info:  DXVK: Using 5 compiler threads
warn:  DXGI: VK_FORMAT_D24_UNORM_S8_UINT -> VK_FORMAT_D32_SFLOAT_S8_UINT
Waiting on children
All children gone
Exit with returncode 0
DEBUG    2020-03-19 11:25:58,612 [command.on_stop:161]:The process has terminated with code 0
DEBUG    2020-03-19 11:25:58,612 [command.stop:246]:Management process looks dead already.
DEBUG    2020-03-19 11:25:58,612 [command.stop:254]:Detaching logger
DEBUG    2020-03-19 11:25:59,454 [game.beat:622]:Game thread stopped
WARNING  2020-03-19 11:25:59,454 [game.on_game_quit:654]:Game still running (state: running)
INFO     2020-03-19 11:25:59,454 [game.stop:637]:Stopping The Witcher 3: Wild Hunt - Game of the Year Edition (wine)
DEBUG    2020-03-19 11:25:59,454 [command.stop:246]:Management process looks dead already.
DEBUG    2020-03-19 11:25:59,454 [command.stop:258]:logger already detached
TypeError: refresh() takes 1 positional argument but 3 were given
DEBUG    2020-03-19 11:25:59,455 [game.on_game_quit:673]:The Witcher 3: Wild Hunt - Game of the Year Edition stopped at Thu, 19 Mar 2020 11:25:59
DEBUG    2020-03-19 11:25:59,455 [game.save:234]:Saving The Witcher 3: Wild Hunt - Game of the Year Edition (wine)
DEBUG    2020-03-19 11:25:59,462 [lutriswindow.on_game_updated:721]:Updating game The Witcher 3: Wild Hunt - Game of the Year Edition (wine)
DEBUG    2020-03-19 11:25:59,554 [display.change_resolution:129]:Switching to 1920x1080 on HDMI-A-0
INFO     2020-03-19 11:25:59,554 [display.change_resolution:140]:Switching resolution of HDMI-A-0 to 1920x1080

System information

2020-03-19 11:27:17,943: Running Lutris 0.5.4
2020-03-19 11:27:17,943: Using X.Org
2020-03-19 11:27:17,944: Running Mesa driver 19.3.4 on AMD NAVI10 (DRM 3.36.0, 5.5.9-arch1-2, LLVM 9.0.1) (0x731f)
2020-03-19 11:27:17,944: GPU: 1002:731F 1DA2:E411 using amdgpu drivers
WARNING: radv is not a conformant vulkan implementation, testing use only.
2020-03-19 11:27:17,998: Vulkan is supported

[Patreon goal] Provide fullscreen view controllable with joypad

Hi.
I thought it was cool to use lutis as a (better) replacement for the Steam Big Picture mode,
So we would need a way for Game-pad input and maybe a more - TV oprimzed overview alternative.

Do you think something like is is possible?

Being able to have Game-pad input and running Steam games and Emulator-games from the same interface would be incredible awesome!

Enable wine logging by default when Lutris is started with -d flag

By default, wine games have wine debug output suppressed (WINEDEBUG="-all"), for performance reasons. This is good.

However, when trying to diagnose a problem, people currently have to enable wine debug output before getting a log with lutris -d. This is particularly clumsy for getting logs when an installer fails, since they need to enable debugging output in the global wine runner settings, affecting all their games if they forget to revert it afterwards.

A compromise would be to enable winedebug output if it is disabled, when starting lutris with -d. This should only be the default — it should not override game specific settings, if they override the default.

Runner Personalisation Feature

I made a post about this on the forums and I was told to post this idea here.

I think more customization when it comes to organizing your games. I find many of the runners are good for non-technical people, however I know how to use Linux and how to run things with scripts. And to run anything including wine games steam games, or an emulator it can be done with a bash script. I would like to setup Lutris in a way that will allow me to organize my games without using the predefined runners but to be able to choose each games platform, emulator. For example…

CSGO
Platform: Linux
Runner: Steam

SuperTuxKart
Platform: Linux
Runner: Linux

Tomb Raider: Underworld
Platform: Windows
Runner: Wine

Mario Kart: Double Dash
Platform: Nintendo Gamecube
Runner: Dolphin

Mario Kart 64
Platform: Nintendo 64
Runner: Libretro

Instead of using all of the runners that come with Lutris which will organise the games as such, I would to make my own runners easily which will be a Linux runner except I can set the custom runner platform name, platform icon, runner name and runner icon. More options on building your own Lutris library without using predefined runners were the name and the icon of the platform and runner are unchangeable.

https://forums.lutris.net/t/create-custom-runner/7395

Lutris missing games/lutris-wrapper directory

Describe the bug
running lutris in terminal I get the following error when trying to install epic games store
FileNotFoundError: [Errno 2] No such file or directory: '/usr/games/lutris-wrapper':

Expected behavior
For a successful install of the app/game and just freezes on installing game data

Steps to reproduce
open lutris, try install epic games store

Lutris debugging output

-games-store/dxsetup/DEC2006_d3dx9_32_x64.cab
DEBUG    2019-06-20 00:02:30,296 [system.remove_folder:197]:Removing folder /home/jirubizu/.cache/lutris/installer/epic-games-store/dxsetup/.extract-98b8a510
DEBUG    2019-06-20 00:02:30,296 [extract.extract_archive:145]:Finished extracting /home/jirubizu/.cache/lutris/installer/epic-games-store/audio/directx-2010.tar.gz to /home/jirubizu/.cache/lutris/installer/epic-games-store/dxsetup
DEBUG    2019-06-20 00:02:30,298 [interpreter._iter_commands:564]:Installer command: {'task': {'arch': 'win64', 'name': 'create_prefix', 'prefix': '$GAMEDIR'}}
DEBUG    2019-06-20 00:02:30,298 [commands._get_runner_version:37]:Install script uses Wine ge-protonified-4.9-x86_64
INFO     2019-06-20 00:02:30,300 [wine.create_prefix:98]:Creating a win64 prefix in /home/jirubizu/Games/epic-games-store
DEBUG    2019-06-20 00:02:30,300 [system.execute:38]:Executing /home/jirubizu/.local/share/lutris/runners/wine/ge-protonified-4.9-x86_64/bin/wineboot
DEBUG    2019-06-20 00:02:30,301 [system.execute:44]:WINEARCH=win64 WINEPREFIX=/home/jirubizu/Games/epic-games-store WINEDLLOVERRIDES=
INFO     2019-06-20 00:02:31,459 [wine.create_prefix:147]:win64 Prefix created in /home/jirubizu/Games/epic-games-store
DEBUG    2019-06-20 00:02:31,476 [interpreter._iter_commands:564]:Installer command: {'task': {'arch': 'win64', 'args': '/silent', 'name': 'wineexec', 'executable': '$CACHE/dxsetup/DXSETUP.exe', 'prefix': '$GAMEDIR'}}
DEBUG    2019-06-20 00:02:31,477 [commands._get_runner_version:37]:Install script uses Wine ge-protonified-4.9-x86_64
DEBUG    2019-06-20 00:02:31,486 [wine.use_lutris_runtime:113]:/home/jirubizu/.local/share/lutris/runners/wine/ge-protonified-4.9-x86_64/bin/wine is provided by Lutris, using runtime
DEBUG    2019-06-20 00:02:31,487 [command.start:111]:Running /usr/games/lutris-wrapper 0 0 /home/jirubizu/.local/share/lutris/runners/wine/ge-protonified-4.9-x86_64/bin/wine /home/jirubizu/.cache/lutris/installer/epic-games-store/dxsetup/DXSETUP.exe /silent
DEBUG    2019-06-20 00:02:31,487 [command.start:113]:ENV: WINEARCH="win64"
DEBUG    2019-06-20 00:02:31,487 [command.start:113]:ENV: WINE="/home/jirubizu/.local/share/lutris/runners/wine/ge-protonified-4.9-x86_64/bin/wine"
DEBUG    2019-06-20 00:02:31,487 [command.start:113]:ENV: WINEPREFIX="/home/jirubizu/Games/epic-games-store"
DEBUG    2019-06-20 00:02:31,487 [command.start:113]:ENV: LD_LIBRARY_PATH="/home/jirubizu/.local/share/lutris/runners/wine/ge-protonified-4.9-x86_64/lib:/home/jirubizu/.local/share/lutris/runners/wine/ge-protonified-4.9-x86_64/lib64:/lib:/lib64:/lib32:/lib64:/usr/lib:/usr/lib64:/usr/lib32:/usr/lib64:/lib/i386-linux-gnu:/lib/x86_64-linux-gnu:/usr/lib/i386-linux-gnu:/usr/lib/x86_64-linux-gnu:/home/jirubizu/.local/share/lutris/runtime/Ubuntu-18.04-i686:/home/jirubizu/.local/share/lutris/runtime/steam/i386/lib/i386-linux-gnu:/home/jirubizu/.local/share/lutris/runtime/steam/i386/lib:/home/jirubizu/.local/share/lutris/runtime/steam/i386/usr/lib/i386-linux-gnu:/home/jirubizu/.local/share/lutris/runtime/steam/i386/usr/lib:/home/jirubizu/.local/share/lutris/runtime/Ubuntu-18.04-x86_64:/home/jirubizu/.local/share/lutris/runtime/steam/amd64/lib/x86_64-linux-gnu:/home/jirubizu/.local/share/lutris/runtime/steam/amd64/lib:/home/jirubizu/.local/share/lutris/runtime/steam/amd64/usr/lib/x86_64-linux-gnu:/home/jirubizu/.local/share/lutris/runtime/steam/amd64/usr/lib"
DEBUG    2019-06-20 00:02:31,488 [command.start:113]:ENV: __GL_SHADER_DISK_CACHE_PATH="/home/jirubizu/Games/epic-games-store"
DEBUG    2019-06-20 00:02:31,488 [command.start:113]:ENV: MESA_GL_VERSION_OVERRIDE="4.4COMPAT"
DEBUG    2019-06-20 00:02:31,488 [command.start:113]:ENV: __GL_SHADER_DISK_CACHE="1"
DEBUG    2019-06-20 00:02:31,488 [command.start:113]:ENV: PULSE_LATENCY_MSEC="60"
DEBUG    2019-06-20 00:02:31,488 [command.start:113]:ENV: DXVK_HUD="compiler"
DEBUG    2019-06-20 00:02:31,488 [command.start:113]:ENV: PYTHONPATH="/usr/bin:/usr/lib/python36.zip:/usr/lib/python3.6:/usr/lib/python3.6/lib-dynload:/home/jirubizu/.local/lib/python3.6/site-packages:/usr/local/lib/python3.6/dist-packages:/usr/lib/python3/dist-packages"
ERROR    2019-06-20 00:02:31,492 [command.execute_process:227]:Failed to execute /usr/games/lutris-wrapper 0 0 /home/jirubizu/.local/share/lutris/runners/wine/ge-protonified-4.9-x86_64/bin/wine /home/jirubizu/.cache/lutris/installer/epic-games-store/dxsetup/DXSETUP.exe /silent: [Errno 2] No such file or directory: '/usr/games/lutris-wrapper': '/usr/games/lutris-wrapper'
Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/lutris/command.py", line 224, in execute_process
    env=env,
  File "/usr/lib/python3.6/subprocess.py", line 729, in __init__
    restore_signals, start_new_session)
  File "/usr/lib/python3.6/subprocess.py", line 1364, in _execute_child
    raise child_exception_type(errno_num, err_msg, err_filename)
FileNotFoundError: [Errno 2] No such file or directory: '/usr/games/lutris-wrapper': '/usr/games/lutris-wrapper'
WARNING  2019-06-20 00:02:31,493 [command.start:123]:No game process available

System information

{
  "comment": "not being able to install epic games store due to /usr/games/lutris-wrapper being missing\n",
  "system": {
    "gpus": [
      {
        "DRIVER": "i915",
        "PCI_ID": "8086:0A16",
        "PCI_SUBSYS_ID": "17AA:220C",
        "PCI_CLASS": "30000",
        "PCI_SLOT_NAME": "0000:00:02.0",
        "MODALIAS": "pci:v00008086d00000A16sv000017AAsd0000220Cbc03sc00i00"
      }
    ],
    "env": {
      "XDG_CONFIG_DIRS": "/etc/xdg/xdg-ubuntu:/etc/xdg",
      "LANG": "en_GB.UTF-8",
      "DISPLAY": ":0",
      "SHLVL": "1",
      "LOGNAME": "jirubizu",
      "LANGUAGE": "en_GB:en",
      "MANDATORY_PATH": "/usr/share/gconf/ubuntu.mandatory.path",
      "XDG_VTNR": "1",
      "J2REDIR": "/usr/lib/jvm/java-11-oracle",
      "J2SDKDIR": "/usr/lib/jvm/java-11-oracle",
      "XAUTHORITY": "/run/user/1000/gdm/Xauthority",
      "GTK_IM_MODULE": "ibus",
      "COLORTERM": "truecolor",
      "XDG_SESSION_ID": "1",
      "JAVA_HOME": "/usr/lib/jvm/java-11-oracle",
      "GNOME_TERMINAL_SCREEN": "/org/gnome/Terminal/screen/a69ebce8_01ad_4185_a297_4fea41485d81",
      "DESKTOP_SESSION": "ubuntu",
      "XDG_SESSION_DESKTOP": "ubuntu",
      "GNOME_DESKTOP_SESSION_ID": "this-is-deprecated",
      "TEXTDOMAINDIR": "/usr/share/locale/",
      "DEFAULTS_PATH": "/usr/share/gconf/ubuntu.default.path",
      "GDMSESSION": "ubuntu",
      "WINDOWPATH": "1",
      "TEXTDOMAIN": "im-config",
      "PWD": "/home/jirubizu",
      "DERBY_HOME": "/usr/lib/jvm/java-11-oracle/db",
      "IM_CONFIG_PHASE": "2",
      "DBUS_SESSION_BUS_ADDRESS": "unix:path=/run/user/1000/bus",
      "VTE_VERSION": "5202",
      "USERNAME": "jirubizu",
      "CLUTTER_IM_MODULE": "xim",
      "GJS_DEBUG_TOPICS": "JS ERROR;JS LOG",
      "QT4_IM_MODULE": "xim",
      "XDG_DATA_DIRS": "/usr/share/ubuntu:/home/jirubizu/.local/share/flatpak/exports/share/:/var/lib/flatpak/exports/share/:/usr/local/share/:/usr/share/:/var/lib/snapd/desktop",
      "GNOME_TERMINAL_SERVICE": ":1.1630",
      "XDG_MENU_PREFIX": "gnome-",
      "S_COLORS": "auto",
      "GNOME_SHELL_SESSION_MODE": "ubuntu",
      "SHELL": "/usr/bin/zsh",
      "XDG_SESSION_TYPE": "x11",
      "QT_IM_MODULE": "ibus",
      "GJS_DEBUG_OUTPUT": "stderr",
      "TERM": "xterm-256color",
      "SSH_AGENT_PID": "2083",
      "GTK_MODULES": "gail:atk-bridge",
      "XDG_CURRENT_DESKTOP": "ubuntu:GNOME",
      "PATH": "/home/jirubizu/scripts:/usr/games:/home/jirubizu/.cargo/bin:/home/jirubizu/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/usr/lib/jvm/java-11-oracle/bin:/usr/lib/jvm/java-11-oracle/db/bin",
      "SSH_AUTH_SOCK": "/run/user/1000/keyring/ssh",
      "LIBVIRT_DEFAULT_URI": "qemu:///system",
      "HOME": "/home/jirubizu",
      "XDG_SEAT": "seat0",
      "XMODIFIERS": "@im=ibus",
      "XDG_RUNTIME_DIR": "/run/user/1000",
      "SESSION_MANAGER": "local/jirubizu-Thinkpad:@/tmp/.ICE-unix/1973,unix/jirubizu-Thinkpad:/tmp/.ICE-unix/1973",
      "GPG_AGENT_INFO": "/run/user/1000/gnupg/S.gpg-agent:0:1",
      "USER": "jirubizu",
      "_WSREP_START_POSITION": "",
      "QT_ACCESSIBILITY": "1",
      "OLDPWD": "/home/jirubizu",
      "ZSH": "/home/jirubizu/.oh-my-zsh",
      "PAGER": "less",
      "LESS": "-R",
      "LC_CTYPE": "en_GB.UTF-8",
      "LSCOLORS": "Gxfxcxdxbxegedabagacad",
      "LS_COLORS": "rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:",
      "_": "/usr/games/lutris"
    },
    "missing_libs": {
      "OPENGL": [
        [],
        []
      ],
      "VULKAN": [
        [
          "libvulkan.so.1"
        ],
        []
      ],
      "WINE": [
        [],
        []
      ],
      "GAMEMODE": [
        [
          "libgamemodeauto.so"
        ],
        [
          "libgamemodeauto.so"
        ]
      ]
    },
    "cpus": [
      {
        "processor": "0",
        "vendor_id": "GenuineIntel",
        "cpu family": "6",
        "model": "69",
        "model name": "Intel(R) Core(TM) i5-4300U CPU @ 1.90GHz",
        "stepping": "1",
        "microcode": "0x25",
        "cpu MHz": "840.118",
        "cache size": "3072 KB",
        "physical id": "0",
        "siblings": "4",
        "core id": "0",
        "cpu cores": "2",
        "apicid": "0",
        "initial apicid": "0",
        "fpu": "yes",
        "fpu_exception": "yes",
        "cpuid level": "13",
        "wp": "yes",
        "flags": "fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm cpuid_fault epb invpcid_single pti ssbd ibrs ibpb stibp tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid xsaveopt dtherm ida arat pln pts md_clear flush_l1d",
        "bugs": "cpu_meltdown spectre_v1 spectre_v2 spec_store_bypass l1tf mds",
        "bogomips": "4988.65",
        "clflush size": "64",
        "cache_alignment": "64",
        "address sizes": "39 bits physical, 48 bits virtual",
        "power management": ""
      },
      {
        "processor": "1",
        "vendor_id": "GenuineIntel",
        "cpu family": "6",
        "model": "69",
        "model name": "Intel(R) Core(TM) i5-4300U CPU @ 1.90GHz",
        "stepping": "1",
        "microcode": "0x25",
        "cpu MHz": "921.285",
        "cache size": "3072 KB",
        "physical id": "0",
        "siblings": "4",
        "core id": "0",
        "cpu cores": "2",
        "apicid": "1",
        "initial apicid": "1",
        "fpu": "yes",
        "fpu_exception": "yes",
        "cpuid level": "13",
        "wp": "yes",
        "flags": "fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm cpuid_fault epb invpcid_single pti ssbd ibrs ibpb stibp tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid xsaveopt dtherm ida arat pln pts md_clear flush_l1d",
        "bugs": "cpu_meltdown spectre_v1 spectre_v2 spec_store_bypass l1tf mds",
        "bogomips": "4988.65",
        "clflush size": "64",
        "cache_alignment": "64",
        "address sizes": "39 bits physical, 48 bits virtual",
        "power management": ""
      },
      {
        "processor": "2",
        "vendor_id": "GenuineIntel",
        "cpu family": "6",
        "model": "69",
        "model name": "Intel(R) Core(TM) i5-4300U CPU @ 1.90GHz",
        "stepping": "1",
        "microcode": "0x25",
        "cpu MHz": "856.177",
        "cache size": "3072 KB",
        "physical id": "0",
        "siblings": "4",
        "core id": "1",
        "cpu cores": "2",
        "apicid": "2",
        "initial apicid": "2",
        "fpu": "yes",
        "fpu_exception": "yes",
        "cpuid level": "13",
        "wp": "yes",
        "flags": "fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm cpuid_fault epb invpcid_single pti ssbd ibrs ibpb stibp tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid xsaveopt dtherm ida arat pln pts md_clear flush_l1d",
        "bugs": "cpu_meltdown spectre_v1 spectre_v2 spec_store_bypass l1tf mds",
        "bogomips": "4988.65",
        "clflush size": "64",
        "cache_alignment": "64",
        "address sizes": "39 bits physical, 48 bits virtual",
        "power management": ""
      },
      {
        "processor": "3",
        "vendor_id": "GenuineIntel",
        "cpu family": "6",
        "model": "69",
        "model name": "Intel(R) Core(TM) i5-4300U CPU @ 1.90GHz",
        "stepping": "1",
        "microcode": "0x25",
        "cpu MHz": "847.110",
        "cache size": "3072 KB",
        "physical id": "0",
        "siblings": "4",
        "core id": "1",
        "cpu cores": "2",
        "apicid": "3",
        "initial apicid": "3",
        "fpu": "yes",
        "fpu_exception": "yes",
        "cpuid level": "13",
        "wp": "yes",
        "flags": "fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm cpuid_fault epb invpcid_single pti ssbd ibrs ibpb stibp tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid xsaveopt dtherm ida arat pln pts md_clear flush_l1d",
        "bugs": "cpu_meltdown spectre_v1 spectre_v2 spec_store_bypass l1tf mds",
        "bogomips": "4988.65",
        "clflush size": "64",
        "cache_alignment": "64",
        "address sizes": "39 bits physical, 48 bits virtual",
        "power management": ""
      }
    ],
    "drives": [
      {
        "name": "sda",
        "fstype": null,
        "label": null,
        "uuid": null,
        "mountpoint": null,
        "children": [
          {
            "name": "sda1",
            "fstype": "ntfs",
            "label": "Recovery",
            "uuid": "6EB4E2C7B4E2913F",
            "mountpoint": null
          },
          {
            "name": "sda2",
            "fstype": "vfat",
            "label": null,
            "uuid": "4EE4-5BC7",
            "mountpoint": "/boot/efi"
          },
          {
            "name": "sda3",
            "fstype": null,
            "label": null,
            "uuid": null,
            "mountpoint": null
          },
          {
            "name": "sda4",
            "fstype": "ntfs",
            "label": null,
            "uuid": "F61CEF361CEEF113",
            "mountpoint": null
          },
          {
            "name": "sda5",
            "fstype": "ntfs",
            "label": null,
            "uuid": "01D4B18ED3E4B300",
            "mountpoint": null
          },
          {
            "name": "sda6",
            "fstype": "ntfs",
            "label": "University",
            "uuid": "01D4B18ED81CDE70",
            "mountpoint": null
          },
          {
            "name": "sda7",
            "fstype": "ext4",
            "label": null,
            "uuid": "3d7e3c16-596f-4873-9e29-d0026d2b0965",
            "mountpoint": "/"
          }
        ]
      }
    ],
    "ram": {
      "mem": {
        "total": "8044508",
        "used": "2318476",
        "free": "1623740",
        "shared": "316488",
        "buff/cache": "4102292",
        "available": "5106600"
      },
      "swap": {
        "total": "2097148",
        "used": "0",
        "free": "2097148"
      }
    },
    "dist": [
      "Ubuntu",
      "18.04",
      "bionic"
    ],
    "glxinfo": {
      "opengl_core_profile_shading_language_version": "4.50",
      "opengl_version": "3.0 Mesa 18.2.8",
      "name_of_display": ":0",
      "opengl_shading_language_version": "1.30",
      "opengl_core_profile_profile_mask": "core profile",
      "direct_rendering": "Yes",
      "opengl_renderer": "Mesa DRI Intel(R) Haswell Mobile",
      "opengl_core_profile_version": "4.5 (Core Profile) Mesa 18.2.8",
      "opengl_es_profile_version": "OpenGL ES 3.1 Mesa 18.2.8",
      "screen": "0",
      "opengl_context_flags": "(none)",
      "opengl_es_profile_shading_language_version": "OpenGL ES GLSL ES 3.10",
      "display": ":0",
      "opengl_vendor": "Intel Open Source Technology Center",
      "opengl_core_profile_context_flags": "(none)"
    }
  }
}
`` `

Chinese characters present on interface

hello,

when I run Lutris, there are Chinese characters appearing in the interface.
I don't know how to fix it.
here is a screenshot
Capture lutris
Thank you for your help

NucleusCoop integration (splitscreen multiplayer emulation)

NucleusCoop emulates splitscreen multiplayer by running multiple instances of Windows games side by side, setting them up with one controller per player (different keybindings on a keyboard might be supported as well, don't know) and connecting them via LAN.

It would be nice to have this integrated into Lutris as well or provide similar functionality. Ideally the number of players would be configurable via controller once #28 is implemented.

Code repository: https://github.com/lucasassislar/nucleuscoop
Website: https://www.nucleuscoop.com/

Maybe cache mismatch again?

Last time, it was a cache mismatch problem. It affected all three King's Quest remakes:
King's Quest I: Quest for the Crown [ADG Remake]
King's Quest II: Romancing the Stones (2002)
King's Quest III: To Heir is Human (2011)

I used Lutris 0.5.2.2
This is what I did to reproduce the error: I simply tried to install the games via the Lutris installers. Lutris is installed on SSD and Lutris games directory is on HDD (all are Ext4). I did not change the default install paths that the Lutris installers show. It's also not possible to ignore the error (as the installation instructions say), because the only available buttons are 'close' and 'cancel' and they both remove the game once clicked. At the time of the error, the games are downloaded in the .cache/lutris/installer folder but there is no AGD Interactive folder neither in Program Files nor in Program Files (86).

My computer:
Ubuntu 18.04 x64 (I have enabled x32 and x64 architecture for Lutris)
CPU AMD FX 6350
RAM 16 GBytes
GPU Nvidia Geforce 1050 Ti
WineHQ staging latest installed

Configure proton prefix for VR

When creating a new Wine prefix, Steam copies and symlinks in some files to enable OpenVR support. Additionally, there are some environment variables which it sets up behind the scenes. I would appreciate it if Lutris could provide a way to do this easily. Either automatically for Proton titles, or some kind of one-click VR deploy solution in the settings for a given game configured to use Proton. I just recently implemented this functionality for a command line tool called Native2Proton. The changes were simple and the relevant commit is here: https://github.com/Holston5/Native2Proton/pull/28/commits/e6c2bb598fc69fc69d3e9aafe4c446bfd5638124

I can try to assist if needed.

Lutris terminal hangs after Epic Games Store exits

Describe the bug

I'm trying to create a direct shortcut for the Epic Games Store with lutris lutris:rungame/epic-games-store, but after closing the Store, Lutris doesn't close.

Expected behavior

I expect that Lutris correctly detects that the Store has finished as it's shown in the log, and close itself.

Current behavior

❯ lutris lutris:rungame/epic-games-store
2019-09-24 14:32:32,441: Running Lutris 0.5.3
2019-09-24 14:32:32,442: Using NVIDIA drivers 435.21 for x86_64
2019-09-24 14:32:32,442: GPU: GeForce GTX 1080 Ti
2019-09-24 14:32:32,442: GPU: 10DE:1B06 1043:85EA using nvidia drivers
2019-09-24 14:32:32,465: Vulkan is supported
2019-09-24 14:32:32,466: Updating DXVK versions
2019-09-24 14:32:32,660: Replacing /home/francisco/Documents/Lutris/Epic Games Store/drive_c/windows/system32/dxgi with DXVK version
2019-09-24 14:32:32,661: Replacing /home/francisco/Documents/Lutris/Epic Games Store/drive_c/windows/system32/d3d11 with DXVK version
2019-09-24 14:32:32,661: Replacing /home/francisco/Documents/Lutris/Epic Games Store/drive_c/windows/system32/d3d10core with DXVK version
2019-09-24 14:32:32,661: Replacing /home/francisco/Documents/Lutris/Epic Games Store/drive_c/windows/system32/d3d10_1 with DXVK version
2019-09-24 14:32:32,661: Replacing /home/francisco/Documents/Lutris/Epic Games Store/drive_c/windows/system32/d3d10 with DXVK version
2019-09-24 14:32:32,661: Replacing /home/francisco/Documents/Lutris/Epic Games Store/drive_c/windows/syswow64/dxgi with DXVK version
2019-09-24 14:32:32,661: Replacing /home/francisco/Documents/Lutris/Epic Games Store/drive_c/windows/syswow64/d3d11 with DXVK version
2019-09-24 14:32:32,661: Replacing /home/francisco/Documents/Lutris/Epic Games Store/drive_c/windows/syswow64/d3d10core with DXVK version
2019-09-24 14:32:32,661: Replacing /home/francisco/Documents/Lutris/Epic Games Store/drive_c/windows/syswow64/d3d10_1 with DXVK version
2019-09-24 14:32:32,662: Replacing /home/francisco/Documents/Lutris/Epic Games Store/drive_c/windows/syswow64/d3d10 with DXVK version
Running /home/francisco/.local/share/lutris/runners/wine/lutris-wf-nofshack-4.15-x86_64/bin/wine /home/francisco/Documents/Lutris/Epic Games Store/drive_c/Program Files (x86)/Epic Games/Launcher/Portal/Binaries/Win32/EpicGamesLauncher.exe -opengl
esync: up and running.
2019-09-24 14:32:33,696: Updating D9VK versions
2019-09-24 14:32:33,712: Runtime Ubuntu-18.04-i686 is not available locally
Fontconfig warning: "/etc/fonts/conf.avail/05-reset-dirs-sample.conf", line 6: unknown element "reset-dirs"
Waiting on children
Waiting on children
Waiting on children
2019-09-24 14:33:41,227: Non existent path: /home/francisco/.local/share/lutris/runtime/Ubuntu-18.04-i686
2019-09-24 14:33:43,882: Runtime updated
Waiting on children
Waiting on children
2019-09-24 14:33:56,144: Unable to read stat for process 12981
2019-09-24 14:33:56,144: Unable to read stat for process 12981
Waiting on children
2019-09-24 14:33:57,023: Unable to read stat for process 12825
2019-09-24 14:33:57,023: Unable to read stat for process 12825
All children gone
Exit with returncode 0
2019-09-24 14:33:58,762: Game still running (state: running)
2019-09-24 14:33:58,762: Stopping Epic Games Store (wine)

I see "All children gone" and "Exit with returncode 0" but the command still gets stuck in the end, and never finishes. It seems there's no process for it to wait on anymore, no wine, etc.

Steps to reproduce

  • lutris lutris:rungame/epic-games-store
  • close the store (warn not to minimize)

Lutris debugging output

The terminal output of lutris -d.

❯ lutris -d lutris:rungame/epic-games-store
INFO     2019-09-24 14:42:10,592 [application.do_command_line:225]:Running Lutris 0.5.3
INFO     2019-09-24 14:42:10,592 [startup.check_driver:54]:Using NVIDIA drivers 435.21 for x86_64
INFO     2019-09-24 14:42:10,592 [startup.check_driver:58]:GPU: GeForce GTX 1080 Ti
INFO     2019-09-24 14:42:10,593 [startup.check_driver:75]:GPU: 10DE:1B06 1043:85EA using nvidia drivers
INFO     2019-09-24 14:42:10,615 [startup.check_vulkan:129]:Vulkan is supported
INFO     2019-09-24 14:42:10,616 [dxvk.get_dxvk_versions:21]:Updating DXVK versions
DEBUG    2019-09-24 14:42:10,732 [http.get:68]:GET https://lutris.net/api/runtime
DEBUG    2019-09-24 14:42:10,738 [application.launch:339]:Launching Epic Games Store (wine) (140687261509664)
DEBUG    2019-09-24 14:42:10,742 [game.play:278]:Prelaunching <lutris.runners.wine.wine object at 0x7ff44e3aad10>
INFO     2019-09-24 14:42:10,807 [dxvk.enable_dxvk_dll:143]:Replacing /home/francisco/Documents/Lutris/Epic Games Store/drive_c/windows/system32/dxgi with DXVK version
INFO     2019-09-24 14:42:10,807 [dxvk.enable_dxvk_dll:143]:Replacing /home/francisco/Documents/Lutris/Epic Games Store/drive_c/windows/system32/d3d11 with DXVK version
INFO     2019-09-24 14:42:10,807 [dxvk.enable_dxvk_dll:143]:Replacing /home/francisco/Documents/Lutris/Epic Games Store/drive_c/windows/system32/d3d10core with DXVK version
INFO     2019-09-24 14:42:10,808 [dxvk.enable_dxvk_dll:143]:Replacing /home/francisco/Documents/Lutris/Epic Games Store/drive_c/windows/system32/d3d10_1 with DXVK version
INFO     2019-09-24 14:42:10,808 [dxvk.enable_dxvk_dll:143]:Replacing /home/francisco/Documents/Lutris/Epic Games Store/drive_c/windows/system32/d3d10 with DXVK version
INFO     2019-09-24 14:42:10,808 [dxvk.enable_dxvk_dll:143]:Replacing /home/francisco/Documents/Lutris/Epic Games Store/drive_c/windows/syswow64/dxgi with DXVK version
INFO     2019-09-24 14:42:10,808 [dxvk.enable_dxvk_dll:143]:Replacing /home/francisco/Documents/Lutris/Epic Games Store/drive_c/windows/syswow64/d3d11 with DXVK version
INFO     2019-09-24 14:42:10,808 [dxvk.enable_dxvk_dll:143]:Replacing /home/francisco/Documents/Lutris/Epic Games Store/drive_c/windows/syswow64/d3d10core with DXVK version
INFO     2019-09-24 14:42:10,808 [dxvk.enable_dxvk_dll:143]:Replacing /home/francisco/Documents/Lutris/Epic Games Store/drive_c/windows/syswow64/d3d10_1 with DXVK version
INFO     2019-09-24 14:42:10,808 [dxvk.enable_dxvk_dll:143]:Replacing /home/francisco/Documents/Lutris/Epic Games Store/drive_c/windows/syswow64/d3d10 with DXVK version
DEBUG    2019-09-24 14:42:10,809 [display._get_vidmodes:15]:Retrieving video modes from XrandR
DEBUG    2019-09-24 14:42:10,871 [game.configure_game:314]:Launching Epic Games Store: {'env': {'DXVK_HUD': 'compiler', 'MESA_GL_VERSION_OVERRIDE': '4.4COMPAT', 'PULSE_LATENCY_MSEC': '60', '__GL_SHADER_DISK_CACHE': '1', '__GL_SHADER_DISK_CACHE_PATH': '/home/francisco/Documents/Lutris/Epic Games Store', 'STEAM_RUNTIME': '/home/francisco/.local/share/lutris/runtime/steam', 'LD_LIBRARY_PATH': '/home/francisco/.local/share/lutris/runners/wine/lutris-wf-nofshack-4.15-x86_64/lib:/home/francisco/.local/share/lutris/runners/wine/lutris-wf-nofshack-4.15-x86_64/lib64:/usr/lib/R/lib:/usr/lib/libfakeroot:/usr/lib/opencollada:/usr/lib32/libva1:/usr/lib/libva1:/usr/lib/openmpi:/usr/lib32:/usr/lib:/lib:/lib64:/usr/lib64:/usr/lib64:/home/francisco/.local/share/lutris/runtime/Ubuntu-18.04-i686:/home/francisco/.local/share/lutris/runtime/steam/i386/lib/i386-linux-gnu:/home/francisco/.local/share/lutris/runtime/steam/i386/lib:/home/francisco/.local/share/lutris/runtime/steam/i386/usr/lib/i386-linux-gnu:/home/francisco/.local/share/lutris/runtime/steam/i386/usr/lib:/home/francisco/.local/share/lutris/runtime/Ubuntu-18.04-x86_64:/home/francisco/.local/share/lutris/runtime/steam/amd64/lib/x86_64-linux-gnu:/home/francisco/.local/share/lutris/runtime/steam/amd64/lib:/home/francisco/.local/share/lutris/runtime/steam/amd64/usr/lib/x86_64-linux-gnu:/home/francisco/.local/share/lutris/runtime/steam/amd64/usr/lib:$LD_LIBRARY_PATH', 'WINEDEBUG': '-all', 'WINEARCH': 'win64', 'WINE': '/home/francisco/.local/share/lutris/runners/wine/lutris-wf-nofshack-4.15-x86_64/bin/wine', 'WINEPREFIX': '/home/francisco/Documents/Lutris/Epic Games Store', 'WINEESYNC': '1', 'WINEDLLOVERRIDES': 'd3d10,d3d10_1,d3d10core,d3d11,dxgi=n', 'WINE_LARGE_ADDRESS_AWARE': '1'}, 'command': ['/home/francisco/.local/share/lutris/runners/wine/lutris-wf-nofshack-4.15-x86_64/bin/wine', '/home/francisco/Documents/Lutris/Epic Games Store/drive_c/Program Files (x86)/Epic Games/Launcher/Portal/Binaries/Win32/EpicGamesLauncher.exe', '-opengl']}
DEBUG    2019-09-24 14:42:10,872 [game.configure_game:315]:Game info: {
  "env": {
    "DXVK_HUD": "compiler",
    "MESA_GL_VERSION_OVERRIDE": "4.4COMPAT",
    "PULSE_LATENCY_MSEC": "60",
    "__GL_SHADER_DISK_CACHE": "1",
    "__GL_SHADER_DISK_CACHE_PATH": "/home/francisco/Documents/Lutris/Epic Games Store",
    "STEAM_RUNTIME": "/home/francisco/.local/share/lutris/runtime/steam",
    "LD_LIBRARY_PATH": "/home/francisco/.local/share/lutris/runners/wine/lutris-wf-nofshack-4.15-x86_64/lib:/home/francisco/.local/share/lutris/runners/wine/lutris-wf-nofshack-4.15-x86_64/lib64:/usr/lib/R/lib:/usr/lib/libfakeroot:/usr/lib/opencollada:/usr/lib32/libva1:/usr/lib/libva1:/usr/lib/openmpi:/usr/lib32:/usr/lib:/lib:/lib64:/usr/lib64:/usr/lib64:/home/francisco/.local/share/lutris/runtime/Ubuntu-18.04-i686:/home/francisco/.local/share/lutris/runtime/steam/i386/lib/i386-linux-gnu:/home/francisco/.local/share/lutris/runtime/steam/i386/lib:/home/francisco/.local/share/lutris/runtime/steam/i386/usr/lib/i386-linux-gnu:/home/francisco/.local/share/lutris/runtime/steam/i386/usr/lib:/home/francisco/.local/share/lutris/runtime/Ubuntu-18.04-x86_64:/home/francisco/.local/share/lutris/runtime/steam/amd64/lib/x86_64-linux-gnu:/home/francisco/.local/share/lutris/runtime/steam/amd64/lib:/home/francisco/.local/share/lutris/runtime/steam/amd64/usr/lib/x86_64-linux-gnu:/home/francisco/.local/share/lutris/runtime/steam/amd64/usr/lib:$LD_LIBRARY_PATH",
    "WINEDEBUG": "-all",
    "WINEARCH": "win64",
    "WINE": "/home/francisco/.local/share/lutris/runners/wine/lutris-wf-nofshack-4.15-x86_64/bin/wine",
    "WINEPREFIX": "/home/francisco/Documents/Lutris/Epic Games Store",
    "WINEESYNC": "1",
    "WINEDLLOVERRIDES": "d3d10,d3d10_1,d3d10core,d3d11,dxgi=n",
    "WINE_LARGE_ADDRESS_AWARE": "1"
  },
  "command": [
    "/home/francisco/.local/share/lutris/runners/wine/lutris-wf-nofshack-4.15-x86_64/bin/wine",
    "/home/francisco/Documents/Lutris/Epic Games Store/drive_c/Program Files (x86)/Epic Games/Launcher/Portal/Binaries/Win32/EpicGamesLauncher.exe",
    "-opengl"
  ]
}
DEBUG    2019-09-24 14:42:10,872 [command.start:111]:Running /usr/bin/lutris-wrapper 0 0 /home/francisco/.local/share/lutris/runners/wine/lutris-wf-nofshack-4.15-x86_64/bin/wine /home/francisco/Documents/Lutris/Epic Games Store/drive_c/Program Files (x86)/Epic Games/Launcher/Portal/Binaries/Win32/EpicGamesLauncher.exe -opengl
DEBUG    2019-09-24 14:42:10,872 [command.start:113]:ENV: SDL_VIDEO_FULLSCREEN_DISPLAY="off"
DEBUG    2019-09-24 14:42:10,872 [command.start:113]:ENV: DXVK_HUD="compiler"
DEBUG    2019-09-24 14:42:10,872 [command.start:113]:ENV: MESA_GL_VERSION_OVERRIDE="4.4COMPAT"
DEBUG    2019-09-24 14:42:10,872 [command.start:113]:ENV: PULSE_LATENCY_MSEC="60"
DEBUG    2019-09-24 14:42:10,872 [command.start:113]:ENV: __GL_SHADER_DISK_CACHE="1"
DEBUG    2019-09-24 14:42:10,872 [command.start:113]:ENV: __GL_SHADER_DISK_CACHE_PATH="/home/francisco/Documents/Lutris/Epic Games Store"
DEBUG    2019-09-24 14:42:10,872 [command.start:113]:ENV: STEAM_RUNTIME="/home/francisco/.local/share/lutris/runtime/steam"
DEBUG    2019-09-24 14:42:10,872 [command.start:113]:ENV: LD_LIBRARY_PATH="/home/francisco/.local/share/lutris/runners/wine/lutris-wf-nofshack-4.15-x86_64/lib:/home/francisco/.local/share/lutris/runners/wine/lutris-wf-nofshack-4.15-x86_64/lib64:/usr/lib/R/lib:/usr/lib/libfakeroot:/usr/lib/opencollada:/usr/lib32/libva1:/usr/lib/libva1:/usr/lib/openmpi:/usr/lib32:/usr/lib:/lib:/lib64:/usr/lib64:/usr/lib64:/home/francisco/.local/share/lutris/runtime/Ubuntu-18.04-i686:/home/francisco/.local/share/lutris/runtime/steam/i386/lib/i386-linux-gnu:/home/francisco/.local/share/lutris/runtime/steam/i386/lib:/home/francisco/.local/share/lutris/runtime/steam/i386/usr/lib/i386-linux-gnu:/home/francisco/.local/share/lutris/runtime/steam/i386/usr/lib:/home/francisco/.local/share/lutris/runtime/Ubuntu-18.04-x86_64:/home/francisco/.local/share/lutris/runtime/steam/amd64/lib/x86_64-linux-gnu:/home/francisco/.local/share/lutris/runtime/steam/amd64/lib:/home/francisco/.local/share/lutris/runtime/steam/amd64/usr/lib/x86_64-linux-gnu:/home/francisco/.local/share/lutris/runtime/steam/amd64/usr/lib:$LD_LIBRARY_PATH"
DEBUG    2019-09-24 14:42:10,872 [command.start:113]:ENV: WINEDEBUG="-all"
DEBUG    2019-09-24 14:42:10,872 [command.start:113]:ENV: WINEARCH="win64"
DEBUG    2019-09-24 14:42:10,872 [command.start:113]:ENV: WINE="/home/francisco/.local/share/lutris/runners/wine/lutris-wf-nofshack-4.15-x86_64/bin/wine"
DEBUG    2019-09-24 14:42:10,872 [command.start:113]:ENV: WINEPREFIX="/home/francisco/Documents/Lutris/Epic Games Store"
DEBUG    2019-09-24 14:42:10,872 [command.start:113]:ENV: WINEESYNC="1"
DEBUG    2019-09-24 14:42:10,872 [command.start:113]:ENV: WINEDLLOVERRIDES="d3d10,d3d10_1,d3d10core,d3d11,dxgi=n"
DEBUG    2019-09-24 14:42:10,872 [command.start:113]:ENV: WINE_LARGE_ADDRESS_AWARE="1"
DEBUG    2019-09-24 14:42:10,873 [command.start:113]:ENV: game_name="Epic Games Store"
DEBUG    2019-09-24 14:42:10,873 [command.start:113]:ENV: PYTHONPATH="/usr/lib/lutris:/usr/bin:/usr/lib/python37.zip:/usr/lib/python3.7:/usr/lib/python3.7/lib-dynload:/home/francisco/.local/lib/python3.7/site-packages:/usr/lib/python3.7/site-packages"
Running /home/francisco/.local/share/lutris/runners/wine/lutris-wf-nofshack-4.15-x86_64/bin/wine /home/francisco/Documents/Lutris/Epic Games Store/drive_c/Program Files (x86)/Epic Games/Launcher/Portal/Binaries/Win32/EpicGamesLauncher.exe -opengl
esync: up and running.
INFO     2019-09-24 14:42:12,004 [dxvk.get_dxvk_versions:21]:Updating D9VK versions
Fontconfig warning: "/etc/fonts/conf.avail/05-reset-dirs-sample.conf", line 6: unknown element "reset-dirs"
Waiting on children
Waiting on children
Waiting on children
Waiting on children
Waiting on children
2019-09-24 14:42:31,551: Unable to read stat for process 13629
2019-09-24 14:42:31,551: Unable to read stat for process 13629
Waiting on children
2019-09-24 14:42:32,173: Unable to read stat for process 13500
2019-09-24 14:42:32,174: Unable to read stat for process 13500
All children gone
Exit with returncode 0
DEBUG    2019-09-24 14:42:32,183 [command.on_stop:161]:The process has terminated with code 0
DEBUG    2019-09-24 14:42:32,183 [command.stop:241]:Management process looks dead already.
DEBUG    2019-09-24 14:42:32,183 [command.stop:249]:Detaching logger
DEBUG    2019-09-24 14:42:32,888 [game.beat:596]:Game thread stopped
WARNING  2019-09-24 14:42:32,888 [game.on_game_quit:628]:Game still running (state: running)
INFO     2019-09-24 14:42:32,888 [game.stop:611]:Stopping Epic Games Store (wine)
DEBUG    2019-09-24 14:42:32,888 [command.stop:241]:Management process looks dead already.
DEBUG    2019-09-24 14:42:32,889 [command.stop:253]:logger already detached
DEBUG    2019-09-24 14:42:32,889 [game.on_game_quit:647]:Epic Games Store stopped at Tue, 24 Sep 2019 14:42:32
DEBUG    2019-09-24 14:42:32,889 [game.save:221]:Saving Epic Games Store (wine)
DEBUG    2019-09-24 14:42:32,895 [lutriswindow.on_game_updated:716]:Updating game Epic Games Store (wine)

System information

2019-09-24 14:43:45,511: Running Lutris 0.5.3
2019-09-24 14:43:45,511: Using NVIDIA drivers 435.21 for x86_64
2019-09-24 14:43:45,511: GPU: GeForce GTX 1080 Ti
2019-09-24 14:43:45,511: GPU: 10DE:1B06 1043:85EA using nvidia drivers
2019-09-24 14:43:45,534: Vulkan is supported

Accepting 'Label' change in updated PPA: sudo apt-get --allow-releaseinfo-change update

I was using 'sudo apt-get update' and i got this error message

E: Repository 'http://ppa.launchpad.net/lutris-team/lutris/ubuntu bionic InRelease' changed its 'Label' value from 'lutris' to 'Lutris stable'
N: This must be accepted explicitly before updates for this repository can be applied. See apt-secure(8) manpage for details.

i tried uninstalling lutris, then tried reinstalling lutris

and i've get this message back

Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unable to locate package lutris

Prevent installing games with missing 32-bit dependencies

Describe the bug

My system (PureOS, based on Debian) does not support 32-bit dependencies. In other words, it is impossible for me to sudo dpkg --add-architecture i386 and thus sudo apt wine-staging fails. However, I can still install games that have these 32-bit dependencies, only to discover they don't work.

Expected behavior

In order of preference:

  • List Wine 64 and Wine 32 as distinct runners
  • Don't show incompatible games
  • Warn when attempting to install a game that has a missing dependency

Current behavior

There is a single warning at launch (of Lutris) that dependencies are missing.

Steps to reproduce

  • Do not enable i386 architecture. Install Wine (64) but not wine-staging.
  • Start Lutris (get warning)
  • Attempt to install a game that depends on wine-staging (e.g. GOG version of Arcanum)
  • Installation appears to succeed
  • Cannot run game

Lutris debugging output

(None of this appeared in the interface.)

it looks like wine32 is missing, you should install it.
multiarch needs to be enabled first.  as root, please
execute "dpkg --add-architecture i386 && apt-get update &&
apt-get install wine32"
2019-06-09 17:21:42,353: Creating a win64 prefix in /home/user/Games/arcanum
2019-06-09 17:21:47,295: win64 Prefix created in /home/user/Games/arcanum
2019-06-09 17:21:47,323: wine32 is missing from system
Running /usr/bin/wine /home/user/.cache/lutris/installer/arcanum/gog/setup_arcanum_-_of_steamworks_and_magick_obscura_1.0.7.4_hotfix_(24155).exe None
it looks like wine32 is missing, you should install it.
multiarch needs to be enabled first.  as root, please
execute "dpkg --add-architecture i386 && apt-get update &&
apt-get install wine32"
it looks like wine32 is missing, you should install it.
multiarch needs to be enabled first.  as root, please
execute "dpkg --add-architecture i386 && apt-get update &&
apt-get install wine32"
wine: Bad EXE format for Z:\home\user\.cache\lutris\installer\arcanum\gog\setup_arcanum_-_of_steamworks_and_magick_obscura_1.0.7.4_hotfix_(24155).exe.
Waiting on children
Waiting on children

System information

FYI you will see various other restrictions here, such as strictly libre drivers. PureOS does not include any non-free dependencies.

{
  "comment": "Not warned that game will not run.",
  "system": {
    "gpus": [
      {
        "DRIVER": "i915",
        "PCI_ID": "8086:1916",
        "PCI_SUBSYS_ID": "8086:2015",
        "PCI_CLASS": "30000",
        "PCI_SLOT_NAME": "0000:00:02.0",
        "MODALIAS": "pci:v00008086d00001916sv00008086sd00002015bc03sc00i00"
      }
    ],
    "env": {
      "COLORTERM": "truecolor",
      "DBUS_SESSION_BUS_ADDRESS": "unix:path=/run/user/1000/bus",
      "DESKTOP_SESSION": "gnome",
      "DISPLAY": ":0",
      "GDK_BACKEND": "x11",
      "GDMSESSION": "gnome",
      "GDM_LANG": "en_US.UTF-8",
      "GIO_LAUNCHED_DESKTOP_FILE": "/etc/xdg/autostart/org.gnome.SettingsDaemon.MediaKeys.desktop",
      "GIO_LAUNCHED_DESKTOP_FILE_PID": "7865",
      "GNOME_DESKTOP_SESSION_ID": "this-is-deprecated",
      "GTK_MODULES": "gail:atk-bridge",
      "HOME": "/home/user",
      "LANG": "en_US.UTF-8",
      "LC_ADDRESS": "en_US.UTF-8",
      "LC_IDENTIFICATION": "en_US.UTF-8",
      "LC_MEASUREMENT": "en_US.UTF-8",
      "LC_MONETARY": "en_US.UTF-8",
      "LC_NAME": "en_US.UTF-8",
      "LC_NUMERIC": "en_US.UTF-8",
      "LC_PAPER": "en_US.UTF-8",
      "LC_TELEPHONE": "en_US.UTF-8",
      "LC_TIME": "en_US.UTF-8",
      "LOGNAME": "user",
      "LS_COLORS": "rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:",
      "PATH": "/home/user/.rbenv/shims:/home/user/.local/bin:/home/user/Documents/local_scripts:/usr/local/bin:/usr/bin:/bin:/usr/games",
      "PWD": "/home/user",
      "QT_ACCESSIBILITY": "1",
      "QT_IM_MODULE": "ibus",
      "RBENV_SHELL": "fish",
      "SESSION_MANAGER": "local/librem15v3:@/tmp/.ICE-unix/2330,unix/librem15v3:/tmp/.ICE-unix/2330",
      "SHELL": "/usr/bin/fish",
      "SHLVL": "2",
      "SSH_AUTH_SOCK": "/run/user/1000/keyring/ssh",
      "TERM": "xterm-256color",
      "TILIX_ID": "447add17-1d43-49bd-b660-7d94c770da1d",
      "USER": "user",
      "USERNAME": "user",
      "VTE_VERSION": "5402",
      "WAYLAND_DISPLAY": "wayland-0",
      "XDG_CURRENT_DESKTOP": "GNOME",
      "XDG_DATA_DIRS": "/home/user/.local/share/flatpak/exports/share/:/var/lib/flatpak/exports/share/:/usr/local/share/:/usr/share/",
      "XDG_MENU_PREFIX": "gnome-",
      "XDG_RUNTIME_DIR": "/run/user/1000",
      "XDG_SEAT": "seat0",
      "XDG_SESSION_CLASS": "user",
      "XDG_SESSION_DESKTOP": "gnome",
      "XDG_SESSION_ID": "1",
      "XDG_SESSION_TYPE": "wayland",
      "XDG_VTNR": "2",
      "XMODIFIERS": "@im=ibus"
    },
    "missing_libs": {
      "OPENGL": [
        [
          "libGL.so.1"
        ],
        []
      ],
      "VULKAN": [
        [
          "libvulkan.so.1"
        ],
        []
      ],
      "WINE": [
        [
          "libsqlite3.so.0"
        ],
        []
      ],
      "GAMEMODE": [
        [
          "libgamemodeauto.so"
        ],
        [
          "libgamemodeauto.so"
        ]
      ]
    },
    "cpus": [
      {
        "processor": "0",
        "vendor_id": "GenuineIntel",
        "cpu family": "6",
        "model": "78",
        "model name": "Intel(R) Core(TM) i7-6500U CPU @ 2.50GHz",
        "stepping": "3",
        "microcode": "0xba",
        "cpu MHz": "500.003",
        "cache size": "4096 KB",
        "physical id": "0",
        "siblings": "4",
        "core id": "0",
        "cpu cores": "2",
        "apicid": "0",
        "initial apicid": "0",
        "fpu": "yes",
        "fpu_exception": "yes",
        "cpuid level": "22",
        "wp": "yes",
        "flags": "fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc art arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf tsc_known_freq pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm 3dnowprefetch cpuid_fault invpcid_single pti tpr_shadow vnmi flexpriority ept vpid ept_ad fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid mpx rdseed adx smap clflushopt intel_pt xsaveopt xsavec xgetbv1 xsaves dtherm ida arat pln pts hwp hwp_notify hwp_act_window hwp_epp",
        "bugs": "cpu_meltdown spectre_v1 spectre_v2 spec_store_bypass l1tf mds",
        "bogomips": "4992.00",
        "clflush size": "64",
        "cache_alignment": "64",
        "address sizes": "39 bits physical, 48 bits virtual",
        "power management": ""
      },
      {
        "processor": "1",
        "vendor_id": "GenuineIntel",
        "cpu family": "6",
        "model": "78",
        "model name": "Intel(R) Core(TM) i7-6500U CPU @ 2.50GHz",
        "stepping": "3",
        "microcode": "0xba",
        "cpu MHz": "500.004",
        "cache size": "4096 KB",
        "physical id": "0",
        "siblings": "4",
        "core id": "0",
        "cpu cores": "2",
        "apicid": "1",
        "initial apicid": "1",
        "fpu": "yes",
        "fpu_exception": "yes",
        "cpuid level": "22",
        "wp": "yes",
        "flags": "fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc art arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf tsc_known_freq pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm 3dnowprefetch cpuid_fault invpcid_single pti tpr_shadow vnmi flexpriority ept vpid ept_ad fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid mpx rdseed adx smap clflushopt intel_pt xsaveopt xsavec xgetbv1 xsaves dtherm ida arat pln pts hwp hwp_notify hwp_act_window hwp_epp",
        "bugs": "cpu_meltdown spectre_v1 spectre_v2 spec_store_bypass l1tf mds",
        "bogomips": "4992.00",
        "clflush size": "64",
        "cache_alignment": "64",
        "address sizes": "39 bits physical, 48 bits virtual",
        "power management": ""
      },
      {
        "processor": "2",
        "vendor_id": "GenuineIntel",
        "cpu family": "6",
        "model": "78",
        "model name": "Intel(R) Core(TM) i7-6500U CPU @ 2.50GHz",
        "stepping": "3",
        "microcode": "0xba",
        "cpu MHz": "500.022",
        "cache size": "4096 KB",
        "physical id": "0",
        "siblings": "4",
        "core id": "1",
        "cpu cores": "2",
        "apicid": "3",
        "initial apicid": "3",
        "fpu": "yes",
        "fpu_exception": "yes",
        "cpuid level": "22",
        "wp": "yes",
        "flags": "fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc art arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf tsc_known_freq pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm 3dnowprefetch cpuid_fault invpcid_single pti tpr_shadow vnmi flexpriority ept vpid ept_ad fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid mpx rdseed adx smap clflushopt intel_pt xsaveopt xsavec xgetbv1 xsaves dtherm ida arat pln pts hwp hwp_notify hwp_act_window hwp_epp",
        "bugs": "cpu_meltdown spectre_v1 spectre_v2 spec_store_bypass l1tf mds",
        "bogomips": "4992.00",
        "clflush size": "64",
        "cache_alignment": "64",
        "address sizes": "39 bits physical, 48 bits virtual",
        "power management": ""
      },
      {
        "processor": "3",
        "vendor_id": "GenuineIntel",
        "cpu family": "6",
        "model": "78",
        "model name": "Intel(R) Core(TM) i7-6500U CPU @ 2.50GHz",
        "stepping": "3",
        "microcode": "0xba",
        "cpu MHz": "500.024",
        "cache size": "4096 KB",
        "physical id": "0",
        "siblings": "4",
        "core id": "1",
        "cpu cores": "2",
        "apicid": "2",
        "initial apicid": "2",
        "fpu": "yes",
        "fpu_exception": "yes",
        "cpuid level": "22",
        "wp": "yes",
        "flags": "fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc art arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf tsc_known_freq pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm 3dnowprefetch cpuid_fault invpcid_single pti tpr_shadow vnmi flexpriority ept vpid ept_ad fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid mpx rdseed adx smap clflushopt intel_pt xsaveopt xsavec xgetbv1 xsaves dtherm ida arat pln pts hwp hwp_notify hwp_act_window hwp_epp",
        "bugs": "cpu_meltdown spectre_v1 spectre_v2 spec_store_bypass l1tf mds",
        "bogomips": "4992.00",
        "clflush size": "64",
        "cache_alignment": "64",
        "address sizes": "39 bits physical, 48 bits virtual",
        "power management": ""
      }
    ],
    "drives": [
      {
        "name": "sda",
        "fstype": null,
        "label": null,
        "uuid": null,
        "fsavail": null,
        "fsuse%": null,
        "mountpoint": null,
        "children": [
          {
            "name": "sda1",
            "fstype": "ext4",
            "label": null,
            "uuid": "311c5596-b28d-4491-83d6-7904149061db",
            "fsavail": null,
            "fsuse%": null,
            "mountpoint": null
          }
        ]
      },
      {
        "name": "nvme0n1",
        "fstype": null,
        "label": null,
        "uuid": null,
        "fsavail": null,
        "fsuse%": null,
        "mountpoint": null,
        "children": [
          {
            "name": "nvme0n1p1",
            "fstype": "ext4",
            "label": null,
            "uuid": "ad6c6f17-3637-44b3-b874-4607cf4c4d6d",
            "fsavail": "913.6M",
            "fsuse%": "10%",
            "mountpoint": "/boot"
          },
          {
            "name": "nvme0n1p2",
            "fstype": "crypto_LUKS",
            "label": null,
            "uuid": "e116b94d-5b31-4e17-9688-5d87d588f770",
            "fsavail": null,
            "fsuse%": null,
            "mountpoint": null,
            "children": [
              {
                "name": "luks-e116b94d-5b31-4e17-9688-5d87d588f770",
                "fstype": "ext4",
                "label": null,
                "uuid": "05783c74-9716-48de-b04f-a62a300356ef",
                "fsavail": "365G",
                "fsuse%": "12%",
                "mountpoint": "/"
              }
            ]
          },
          {
            "name": "nvme0n1p3",
            "fstype": null,
            "label": null,
            "uuid": null,
            "fsavail": null,
            "fsuse%": null,
            "mountpoint": null,
            "children": [
              {
                "name": "luks-192b9ccc-11ee-46ef-a560-cd229c22a3ac",
                "fstype": "swap",
                "label": null,
                "uuid": "de8a5654-7ad3-40d3-a882-c082187cfbce",
                "fsavail": null,
                "fsuse%": null,
                "mountpoint": "[SWAP]"
              }
            ]
          }
        ]
      }
    ],
    "ram": {
      "mem": {
        "total": "16324464",
        "used": "7061936",
        "free": "213584",
        "shared": "756800",
        "buff/cache": "9048944",
        "available": "8180728"
      },
      "swap": {
        "total": "17959116",
        "used": "43776",
        "free": "17915340"
      }
    },
    "dist": [
      "PureOS",
      "8",
      "green"
    ],
    "glxinfo": {
      "screen": "0",
      "opengl_shading_language_version": "1.30",
      "direct_rendering": "Yes",
      "opengl_renderer": "Mesa DRI Intel(R) HD Graphics 520 (Skylake GT2)",
      "opengl_version": "3.0 Mesa 18.3.6",
      "opengl_core_profile_version": "4.5 (Core Profile) Mesa 18.3.6",
      "opengl_core_profile_profile_mask": "core profile",
      "opengl_core_profile_shading_language_version": "4.50",
      "display": ":0",
      "opengl_es_profile_version": "OpenGL ES 3.2 Mesa 18.3.6",
      "opengl_vendor": "Intel Open Source Technology Center",
      "opengl_es_profile_shading_language_version": "OpenGL ES GLSL ES 3.20",
      "opengl_context_flags": "(none)",
      "opengl_core_profile_context_flags": "(none)",
      "name_of_display": ":0"
    }
  }
}

Screenshots

N/A

Special characters creates hard-to-trace crashes and black screens

After months of having trouble launching most games across multiple distros and needing manual tweaks all over the board(i used to think it was because of my AMD card), i found out the reason: my games storage folder was called "armazém", and while steam can interpret "é" normally, some configuration files (specially launchers) created by most games (even those not under steam) interpreted the folder name as "/armaz?m/", which often breaks functionality in a strange, hard to trace way, since there's nothing missing and no error messages.
I should have known better than to use special characters, but it would have saved me dozens, probably over a hundred of hours if either wine or lutris warned you about it.

Examples of weird bugs that happened under Debian, Fedora and Arch, all caused by this filename issue and completely solved after removing the special character:

  • Civilization 6, torchlight II, warhammer series and basically any game that has a launcher crashes on startup. Startup.ini interprets " é " as " ? "
  • Dark souls 2 starts on a black screen and freezes. Removing special characters from it's PATH solves it.
  • Dying light crashes after being stuck on a black screen
  • Bioshock infinite, child of light, path of exile, GTA V and more crashes on startup without any kind of error logging

Cannot paste Origin login credentials into login helper window

Describe the bug

I cannot paste my Origin login credentials into the Origin login helper window. This is quite annoying as I have a password with 20+ characters and typing such a password is quite error-prone.
Neither Linux middle mouse button works nor CTRL+V but typing from keyboard works.

Expected behavior

I paste the password just like in GOG or Huble.


This issue got fixed with lutris/lutris#2982 , but it doesn't work with Origin.

lutris-wrapper kills irrelevant shell processes started by child

If a game launched by lutris-wrapper uses xdg-open to show a file or URL, lutris-wrapper's will view the executable used to open that file or URL as one of the game's executables and will kill it when "Stop" is pressed. For example Lutris killed my web browser after a game opened a URL and then I pressed "Stop" in Lutris, even though I had long since navigated away from that URL and opened several other tabs.

I think we should find some way to make xdg-open commands ran by monitored processes leave the process tree, perhaps by replacing PATH. It would be a pretty big hack but it might prevent lost data.

[Suggestion] Implement galaxy-integrations-python-api

GOG Galaxy 2.0 is working quite well with several different stores that currently lack the tight integration with Lutris like GOG and Steam have.

The store integration in Galaxy 2.0 is done through the galaxy-integrations-python-api. If Lutris were to implement the same API we could quickly get many more stores into Lutris more or less for free. And if Galaxy 2.0 proves to be a success the plugins will probably be maintained for many years to come.

Namespace Gdk not available in snap

Tried to build a snap for lutris and currently it's stuck here when trying to run the program from snap:

Traceback (most recent call last):
  File "/snap/lutris/x2/bin/lutris", line 31, in <module>
    from lutris.gui.application import Application
  File "/snap/lutris/x2/lib/python3.6/site-packages/lutris/gui/application.py", line 28, in <module>
    gi.require_version("Gdk", "3.0")
  File "/snap/lutris/x2/usr/lib/python3/dist-packages/gi/__init__.py", line 127, in require_version
    raise ValueError('Namespace %s not available' % namespace)
ValueError: Namespace Gdk not available

libretro: support bin/cue games format

Describe the bug

I want to have support for copying multiple files (bin) and selecting main file (cue or iso) automatically.

It needs new installer task, open the file picker (and allow selecting multiple files), when files are copied to destination task will automatically select automatically or manual, iso as main file if only one file is copied, or cue file if multiple files are copied, and set main_file to the (automatically?) selected mine file.

something like this:

files:
- files: N/A:Please select the Dreamcast image file
game:
  core: reicast
  main_file: main_file
installer:
- copy_and_select:
    dst: $GAMEDIR
    description: "Please select the your files, iso or bin/cue"
    src: files

Expected behavior

Please describe the behavior you are expecting.

Current behavior

What is the current behavior?

Steps to reproduce

Lutris debugging output

The terminal output of lutris -d.

Using the debug option reveals possible backtraces or missing libraries. This can help us track down your issue.

System information

The .json file created by typing lutris --submit-issue in a terminal.

Screenshots

If applicable, add screenshots to help explain your problem.

Mupen64Plus Runner add video plugin options

With the Mupen64plus runner I am unable to use the mupen64plus-video-glide64mk2.so video plugin. However I am able to use this plugin by running this command in the terminal...

mupen64plus --gfx mupen64plus-video-glide64mk2.so --fullscreen "/path/to/game.n64"

The reason for this is because there is not option in the runner to choose the video plugin and it always use the rice plugin. When I launched a game using the Mupen64plus runner but enabled the terminal it did show that it was running the game in the terminal using the rice plugin.

Please add more options in the Mupen64plus runner for choosing what video plugin to use.

wine runner dxvk-cache-pool integration

Hi :)

Would there be any interest integrating my cache-pool for dxvk state cache sharing in the wine runner?

Integration would involve running the pool client with the executable as parameter and setting the DXVK_STATE_CACHE_PATH env var before running the game.

Users would benefit by not having to build up the state cache themselves.

I planned on taking a stab at it myself but wine.py looks a bit intimidating to a non-python dev.

https://github.com/rcpoison/dxvk-cache-pool

Origin manjaro not working

im trying launch origin and it just wont install at all. iv updated my system and kernel to 5.7
iv i have followed various guides on what install but no luck

my log

lutris-wrapper: Origin
Running gamemoderun /home/dmcm/.local/share/lutris/runners/wine/lutris-lol-5.5-2-x86_64/bin/wine /run/media/dmcm/games/origin/drive_c/Program Files (x86)/Origin/Origin.exe
Initial process has started with pid 3263
Game is considered started.
gamemodeauto:
fsync: up and running.
info: Game: Origin.exe
info: DXVK: v1.7-93-g9f6f6a79
info: Found config file: /run/media/dmcm/games/origin/dxvk.conf
info: Effective configuration:
info: dxgi.nvapiHack = False
info: Built-in extension providers:
info: Win32 WSI
info: OpenVR
warn: OpenVR: Failed to locate module
info: Enabled instance extensions:
info: VK_KHR_get_surface_capabilities2
info: VK_KHR_surface
info: VK_KHR_win32_surface
warn: D3D9: VK_FORMAT_D24_UNORM_S8_UINT -> VK_FORMAT_D32_SFLOAT_S8_UINT
info: AMD RADV TONGA (LLVM 10.0.0):
info: Driver: 20.1.3
info: Vulkan: 1.2.131
info: Memory Heap[0]:
info: Size: 3840 MiB
info: Flags: 0x1
info: Memory Type[0]: Property Flags = 0x1
info: Memory Heap[1]:
info: Size: 4096 MiB
info: Flags: 0x0
info: Memory Type[1]: Property Flags = 0x6
info: Memory Type[3]: Property Flags = 0xe
info: Memory Heap[2]:
info: Size: 256 MiB
info: Flags: 0x1
info: Memory Type[2]: Property Flags = 0x7
info: Process set as DPI aware
info: Game: Origin.exe
info: DXVK: v1.7-93-g9f6f6a79
info: Found config file: /run/media/dmcm/games/origin/dxvk.conf
info: Effective configuration:
info: dxgi.nvapiHack = False
info: Built-in extension providers:
info: Win32 WSI
info: OpenVR
warn: OpenVR: Failed to locate module
info: Enabled instance extensions:
info: VK_KHR_get_surface_capabilities2
info: VK_KHR_surface
info: VK_KHR_win32_surface
info: AMD RADV TONGA (LLVM 10.0.0):
info: Driver: 20.1.3
info: Vulkan: 1.2.131
info: Memory Heap[0]:
info: Size: 3840 MiB
info: Flags: 0x1
info: Memory Type[0]: Property Flags = 0x1
info: Memory Heap[1]:
info: Size: 4096 MiB
info: Flags: 0x0
info: Memory Type[1]: Property Flags = 0x6
info: Memory Type[3]: Property Flags = 0xe
info: Memory Heap[2]:
info: Size: 256 MiB
info: Flags: 0x1
info: Memory Type[2]: Property Flags = 0x7
info: D3D11CoreCreateDevice: Probing D3D_FEATURE_LEVEL_11_0
info: D3D11CoreCreateDevice: Using feature level D3D_FEATURE_LEVEL_11_0
info: Device properties:
info: Device name: : AMD RADV TONGA (LLVM 10.0.0)
info: Driver version : 20.1.3
info: Enabled device extensions:
info: VK_AMD_memory_overallocation_behavior
info: VK_AMD_shader_fragment_mask
info: VK_EXT_depth_clip_enable
info: VK_EXT_full_screen_exclusive
info: VK_EXT_host_query_reset
info: VK_EXT_memory_priority
info: VK_EXT_shader_stencil_export
info: VK_EXT_shader_viewport_index_layer
info: VK_EXT_transform_feedback
info: VK_EXT_vertex_attribute_divisor
info: VK_KHR_create_renderpass2
info: VK_KHR_depth_stencil_resolve
info: VK_KHR_draw_indirect_count
info: VK_KHR_driver_properties
info: VK_KHR_image_format_list
info: VK_KHR_sampler_mirror_clamp_to_edge
info: VK_KHR_swapchain
info: Device features:
info: robustBufferAccess : 1
info: fullDrawIndexUint32 : 1
info: imageCubeArray : 1
info: independentBlend : 1
info: geometryShader : 1
info: tessellationShader : 1
info: sampleRateShading : 1
info: dualSrcBlend : 1
info: logicOp : 1
info: multiDrawIndirect : 1
info: drawIndirectFirstInstance : 1
info: depthClamp : 1
info: depthBiasClamp : 1
info: fillModeNonSolid : 1
info: depthBounds : 1
info: multiViewport : 1
info: samplerAnisotropy : 1
info: textureCompressionBC : 1
info: occlusionQueryPrecise : 1
info: pipelineStatisticsQuery : 1
info: vertexPipelineStoresAndAtomics : 0
info: fragmentStoresAndAtomics : 1
info: shaderImageGatherExtended : 1
info: shaderStorageImageExtendedFormats : 1
info: shaderStorageImageReadWithoutFormat : 1
info: shaderStorageImageWriteWithoutFormat : 1
info: shaderClipDistance : 1
info: shaderCullDistance : 1
info: shaderFloat64 : 1
info: shaderInt64 : 1
info: variableMultisampleRate : 1
info: VK_EXT_conditional_rendering
info: conditionalRendering : 1
info: VK_EXT_custom_border_color
info: customBorderColors : 0
info: customBorderColorWithoutFormat : 0
info: VK_EXT_depth_clip_enable
info: depthClipEnable : 1
info: VK_EXT_extended_dynamic_state
info: extendedDynamicState : 0
info: VK_EXT_host_query_reset
info: hostQueryReset : 1
info: VK_EXT_memory_priority
info: memoryPriority : 1
info: VK_EXT_robustness2
info: robustBufferAccess2 : 0
info: robustImageAccess2 : 0
info: nullDescriptor : 0
info: VK_EXT_shader_demote_to_helper_invocation
info: shaderDemoteToHelperInvocation : 0
info: VK_EXT_transform_feedback
info: transformFeedback : 1
info: geometryStreams : 1
info: VK_EXT_vertex_attribute_divisor
info: vertexAttributeInstanceRateDivisor : 1
info: vertexAttributeInstanceRateZeroDivisor : 1
info: Queue families:
info: Graphics : 0
info: Transfer : 1
wine: Unhandled page fault on read access to 00000248 at address F7FA340F (thread 0009), starting debugger…
Unhandled exception: page fault on read access to 0x00000248 in 32-bit code (0xf7fa340f).
Register dump:
CS:0023 SS:002b DS:002b ES:002b FS:0063 GS:006b
EIP:f7fa340f ESP:00325070 EBP:f422f004 EFLAGS:00210212( R- – I -A- - )
EAX:f7bd8600 EBX:f7fbafcc ECX:00000040 EDX:00000005
ESI:0032514c EDI:00000000
Stack dump:
0x00325070: 0032514c f7bd9428 00000001 f7fa3e8d
0x00325080: 00000005 f4fdbf20 f7fa32bd f421e968
0x00325090: 0032514c f4fdc880 00000001 eef505e3
0x003250a0: ede48af0 f4fdc880 eef505b9 f421e968
0x003250b0: ede48af0 f4fdc880 f421e968 ef11bc2d
0x003250c0: 0032514c f4fdc880 00000009 ede4c67c
Backtrace:
=>0 0xf7fa340f (0xf422f004)
0xf7fa340f: cmpl $-1,0x248(%edi)
Modules:
Module Address Debug info Name (99 modules)
PE 330000- 345000 Deferred vcruntime140
PE 380000- 3b9000 Deferred qt5webenginewidgets
PE 3c0000- 3f8000 Deferred qt5positioning
PE 400000- 703000 Deferred origin
PE e80000- ea1000 Deferred qt5webchannel
PE eb0000- f01000 Deferred qt5printsupport
PE f10000- f25000 Deferred qt5quickwidgets
PE f30000- fe3000 Deferred qt5multimedia
PE ff0000- 101a000 Deferred qt5websockets
PE 1020000- 1030000 Deferred qt5texttospeech
PE 1040000- 1049000 Deferred libegl
PE 1390000- 39ae000 Deferred originclient
PE 39b0000- 3f4a000 Deferred qt5gui
PE 3f50000- 73a4000 Deferred qt5webenginecore
PE 73b0000- 76f2000 Deferred qt5quick
PE 7700000- 7931000 Deferred igo32
PE 7940000- 7a7f000 Deferred libeay32
PE 7c20000- 7db1000 Deferred qwindows
PE 7ed0000- 81ca000 Deferred libglesv2
PE 10000000-1006d000 Deferred msvcp140
PE 4a800000-4a936000 Deferred icuuc58
PE 4ad00000-4ad03000 Deferred icudt58
PE 61000000-61031000 Deferred qt5xml
PE 62440000-6270f000 Deferred d3d9
PE 64000000-64127000 Deferred qt5network
PE 65000000-654df000 Deferred qt5widgets
PE 66000000-66360000 Deferred qt5qml
PE 67000000-67543000 Deferred qt5core
PE 6a540000-6a84e000 Deferred d3d11
PE 6f400000-6f60f000 Deferred dxgi
PE 7b020000-7b03c000 Deferred kernelbase
PE 7b420000-7b5f1000 Deferred kernel32
PE 7bc30000-7bc47000 Deferred ntdll
PE 7c830000-7c836000 Deferred uxtheme
PE 7d130000-7d135000 Deferred winex11
PE 7d1d0000-7d1d4000 Deferred api-ms-win-core-fibers-l1-1-1
PE 7d1e0000-7d1e4000 Deferred api-ms-win-core-synch-l1-2-0
PE 7d200000-7d205000 Deferred bcrypt
PE 7d230000-7d278000 Deferred crypt32
PE 7d320000-7d327000 Deferred wintrust
PE 7d350000-7d356000 Deferred imm32
PE 7d380000-7d384000 Deferred usp10
PE 7d3d0000-7d426000 Deferred comctl32
PE 7d510000-7d51a000 Deferred aclui
PE 7d530000-7d536000 Deferred shcore
PE 7d560000-7d572000 Deferred shlwapi
PE 7d5f0000-7deec000 Deferred shell32
PE 7dff0000-7dff4000 Deferred api-ms-win-crt-utility-l1-1-0
PE 7e000000-7e004000 Deferred api-ms-win-crt-environment-l1-1-0
PE 7e020000-7e024000 Deferred api-ms-win-crt-filesystem-l1-1-0
PE 7e030000-7e034000 Deferred api-ms-win-crt-time-l1-1-0
PE 7e040000-7e046000 Deferred api-ms-win-crt-multibyte-l1-1-0
PE 7e060000-7e067000 Deferred api-ms-win-crt-math-l1-1-0
PE 7e070000-7e074000 Deferred api-ms-win-crt-locale-l1-1-0
PE 7e080000-7e085000 Deferred api-ms-win-crt-convert-l1-1-0
PE 7e0a0000-7e0a6000 Deferred api-ms-win-crt-stdio-l1-1-0
PE 7e0b0000-7e0b4000 Deferred api-ms-win-crt-heap-l1-1-0
PE 7e0c0000-7e0c6000 Deferred api-ms-win-crt-string-l1-1-0
PE 7e0e0000-7e0e5000 Deferred api-ms-win-crt-runtime-l1-1-0
PE 7e0f0000-7e0f7000 Deferred ws2_32
PE 7e160000-7e18d000 Deferred ole32
PE 7e2c0000-7e2ce000 Deferred oleaut32
PE 7e3d0000-7e3d6000 Deferred jsproxy
PE 7e3f0000-7e3f7000 Deferred winhttp
PE 7e450000-7e45d000 Deferred rpcrt4
PE 7e500000-7e528000 Deferred ucrtbase
PE 7e5e0000-7e5e5000 Deferred version
PE 7e610000-7e629000 Deferred setupapi
PE 7e6b0000-7e7a4000 Deferred user32
PE 7e8d0000-7e8dd000 Deferred advapi32
PE 7e960000-7e96e000 Deferred gdi32
PE 7eaa0000-7eaa3000 Deferred wow64cpu
PE f4ca0000-f4ca4000 Deferred kerberos
PE f4d10000-f4d25000 Deferred msvcrt
PE f4e30000-f4e38000 Deferred winevulkan
PE f4ed0000-f4ed8000 Deferred vulkan-1
PE f4ef0000-f4ef6000 Deferred wintab32
PE f5000000-f5004000 Deferred powrprof
PE f5020000-f5024000 Deferred wtsapi32
PE f5030000-f5034000 Deferred api-ms-win-crt-conio-l1-1-0
PE f5050000-f5056000 Deferred dwmapi
PE f5060000-f5064000 Deferred userenv
PE f5080000-f512d000 Deferred comdlg32
PE f5190000-f519e000 Deferred winspool
PE f51e0000-f51e5000 Deferred secur32
PE f5220000-f5227000 Deferred iphlpapi
PE f5250000-f5258000 Deferred netapi32
PE f5290000-f5297000 Deferred dnsapi
PE f52c0000-f5340000 Deferred winmm
PE f5390000-f5397000 Deferred dbghelp
PE f5510000-f5514000 Deferred dhcpcsvc
PE f5550000-f5555000 Deferred psapi
PE f5560000-f5565000 Deferred rsaenh
PE f55a0000-f55a5000 Deferred imagehlp
PE f5640000-f564d000 Deferred mpr
PE f5670000-f5693000 Deferred wininet
PE f5710000-f5724000 Deferred urlmon
PE f7820000-f7844000 Deferred msxml3
PE f7910000-f791e000 Deferred msxml
Threads:
process tid prio (all id:s are in hex)
00000008 (D) C:\Program Files (x86)\Origin\Origin.exe
[“C:\Program Files (x86)\Origin\Origin.exe”]
00000043 0
00000040 0
00000009 0 <==
0000000e services.exe
00000034 0
00000031 0
00000027 0
00000024 0
0000001f 0
00000017 0
00000016 0
00000015 0
00000010 0
0000000f 0
00000011 OriginWebHelperService.exe
[“C:\Program Files (x86)\Origin\OriginWebHelperService.exe”]
0000002d 0
0000002c 0
0000002a 0
00000028 0
0000001e 0
0000001d 0
0000001a 0
00000019 0
00000018 0
00000014 2
00000013 2
00000012 0
0000001b plugplay.exe
00000021 0
00000020 0
0000001c 0
00000022 winedevice.exe
0000002e 0
0000002b 0
00000026 0
00000025 0
00000023 0
0000002f winedevice.exe
00000035 0
00000033 0
00000032 0
00000030 0
00000036 explorer.exe
0000003a 0
00000039 0
00000038 0
00000037 0
System information:
Wine build: wine-5.5.r2.g7fe7d87f ( TkG Staging Esync Fsync Vkd3d DXVK-Compatible )
Platform: i386 (WOW64)
Version: Windows 8
Host system: Linux
Host version: 5.7.9-1-MANJARO
Game is considered exited.
Initial process has exited.
All monitored processes have exited.
Exit with returncode 1280

i have tried turning off and on dxvk , f sync e sync

it worked on ubuntu with default install from lutris and now im running manjaro and nothing

Use icons in Discord presence

The Discord presence doesn't show any icons at the moment. I think that the default app should show the Lutris logo as large_image and the runner as small_image.

As far as I'm aware, it's not possible to show the game icon since the app has to contain all the art assets which isn't feasible in the case of Lutris. However, the large_image and small_image values could be exposed as settings. That way, users can create a new app, configure Lutris to use its client ID, upload icons for whichever games and runners they want, and set their corresponding values.

2FA support ?

All is in the title, will you add 2FA in Lutris accounts ?
this would be awesome :)

thank you!

Wine launchers broken in latest update on Solus (0.5.3)

Describe the bug

I've updated the Lutris package for the Solus repository from 0.5.2.2 to the 0.5.3 release. Soon after a user pointed out that no Wine launchers were working anymore. I found the same thing upon further testing. I'm going to use the "Hero Lab" installer script as an example.

Expected behavior

Running the script should start the installation of Hero Lab and create working entry in Lutris from which I can launch the game.

Current behavior

Setup rushes through the steps way to quickly after the inital Wine prefix setup, complains about a missing executable at the end and the entry in Lutris is non-functional

Steps to reproduce

  • Select "Install" from the page linked above to start the setup
  • Click through the installation
  • Observe error message and non-functional library entry

Lutris debugging output

https://paste.ubuntu.com/p/nmsptGYB3R/

journalctl output: https://paste.ubuntu.com/p/4h7bhCWW6Y/

System information

https://paste.ubuntu.com/p/sQqJMH2HVH/

Screenshots

Screenshot from 2019-09-11 22:52:13

This happens for every Wine app. Selecting "Wine console", "Wine config", etc. does nothing either.

Lutris snap

It will be great to have a snap version of this app. You can use this site to compile a snap directly from github snapcraft.io

Runtime fails to download if .netrc is present

Describe the bug

Lutris 0.5.6 fails to download any runtime package from https://lutris.nyc3.digitaloceanspaces.com/runtime/lib32.tar.bz2 and they can't be used in runners. The file can be downloaded using wget or in browser. I've had this for a long time with previous versions of Lutris/Fedora.

Expected behavior

Lutris should be able to download runtime packages so that they can be used with runners

Current behavior

Downloading any package from https://lutris.nyc3.digitaloceanspaces.com/runtime/lib32.tar.bz2 fails with error 400

Steps to reproduce

  • Create .netrc file in home directory containing following line: default login anonymous password user@site
  • Launch lutris

Lutris debugging output

INFO 2020-04-30 20:00:40,976 [application.do_command_line:245]:Running Lutris 0.5.6
INFO 2020-04-30 20:00:40,976 [startup.check_driver:62]:Using Intel
INFO 2020-04-30 20:00:40,976 [startup.check_driver:64]:Running Mesa driver 20.0.5 on Mesa Intel(R) Iris(R) Graphics 6100 (BDW GT3) (0x162b)
INFO 2020-04-30 20:00:40,977 [startup.check_driver:77]:GPU: 8086:162B 106B:013F using i915 drivers
INFO 2020-04-30 20:00:41,021 [startup.check_vulkan:132]:Vulkan is supported
INFO 2020-04-30 20:00:41,022 [dxvk.get_dxvk_versions:22]:Updating DXVK versions
DEBUG 2020-04-30 20:00:41,229 [http.get:65]:GET https://lutris.net/api/runtime
DEBUG 2020-04-30 20:00:41,237 [store.get_missing_media:212]:Requesting missing icons from API for diablo-ii-lord-of-destruction
DEBUG 2020-04-30 20:00:41,237 [http.get:65]:GET https://lutris.net/api/games
WARNING 2020-04-30 20:00:41,508 [runtime.should_update:48]:Runtime lib32 is not available locally
DEBUG 2020-04-30 20:00:41,509 [downloader.start:55]:Starting download of:
https://lutris.nyc3.digitaloceanspaces.com/runtime/lib32.tar.bz2
DEBUG 2020-04-30 20:00:41,548 [api.get_game_api_page:132]:Loaded 1 games from page 1
INFO 2020-04-30 20:00:42,006 [downloader.async_download:117]:https://lutris.nyc3.digitaloceanspaces.com/runtime/lib32.tar.bz2 returned a 400 error
ERROR 2020-04-30 20:00:42,007 [jobs.target:32]:Error while completing task <bound method Downloader.async_download of <lutris.util.downloader.Downloader object at 0x7f324a771d60>>: 400 Client Error: Bad Request for url: https://lutris.nyc3.digitaloceanspaces.com/runtime/lib32.tar.bz2
<class 'requests.exceptions.HTTPError'> 400 Client Error: Bad Request for url: https://lutris.nyc3.digitaloceanspaces.com/runtime/lib32.tar.bz2
File "/usr/lib/python3.8/site-packages/lutris/util/jobs.py", line 30, in target
result = self.function(*args, **kwargs)
File "/usr/lib/python3.8/site-packages/lutris/util/downloader.py", line 118, in async_download
response.raise_for_status()
File "/usr/lib/python3.8/site-packages/requests/models.py", line 940, in raise_for_status
raise HTTPError(http_error_msg, response=self)
ERROR 2020-04-30 20:00:42,009 [downloader.on_done:86]:Download failed: 400 Client Error: Bad Request for url: https://lutris.nyc3.digitaloceanspaces.com/runtime/lib32.tar.bz2
DEBUG 2020-04-30 20:00:42,064 [runtime.check_download_progress:84]:Runtime update interrupted

System information

lutris-issue-report.zip

Origin could not be installed in POP OS 20.04

I tried several times to install Origin in the Lutris app in Pop OS 20.04

I played in Pop 19.10 without any issues, but now when I try to install it, it keeps installing .NET 4.7.2 and after several minutes it appears the following message:
"003e:err:ntdll:RtlpWaitForCriticalSection section 0x100a8 "/home/ubuntu/buildbot/runners/wine/wine-src/dlls/ntdll/heap.c: main process heap section" wait timed out in thread 003e, blocked by 01ca, retrying (60 sec)"
I tried also in Ubuntu 20.04 and I have the same problem.
Any idea, if I could try or do something different?

Thanks in advance!

Battle.net installer fails with provided link, works outside of Lutris

Describe the bug
The Battle.net installer (in the Battle.net and in the Overwatch runner) will fail at the Installing Blizzard App step without showing any errors. Battle.net does not get installed at all, which Lutris complains about afterwards.

Expected behavior
Battle.net downloads, then installs, showing a few progress bars, then gets to the Language Select window.

Current behavior
After showing the second progress bar titled "Installing new files", which will get to about a fifth, the installer closes without having done anything.

Steps to reproduce

  • Try to install Overwatch or Battle.net through Lutris
  • Wait until reaching Installing Blizzard App step

Workaround

  • Creating a wineprefix, manually downloading Bnet from its website and installing it through Wine-Staging worked flawlessly, even the link from the installer worked
  • More interestingly, changing the link in the runner to the one you get from Battle.net works, more concisely:
192c192,195
<             "setup": "http://dist.blizzard.com/downloads/bna-installers/322d5bb9ae0318de3d4cde7641c96425/retail.1/Battle.net-Setup-enUS.exe"
---
>             "setup": {
>                 "url": "https://eu.battle.net/download/getInstaller?os=win&installer=Battle.net-Setup.exe",
>                 "filename": "Battle.net-Setup.exe"
> 

I also tried a few things like chaging the Wine version in the script, only adding a filename tag to the link, reinstalling a few dependencies related to networking, but chaging the download link was the only thing that helped me so far.

Moreover, the installer used to work before but that was an older iteration that did not contain the ctrl-scripts etc.. I also did not encounter any issues using other runners.

It's also probably not related to any networking issues, even though the log shows some errors related to that, as I captured the traffic of the installer and I was not able to find the html text inside any packet. The object moved message also appeared when it worked, anyways.

Lutris debugging output

DEBUG    2019-08-06 03:01:26,595 [command.start:111]:Running /usr/lib/python-exec/python3.6/lutris-wrapper 0 3 Battle.net.exe Agent.exe Battle.net Helper.exe /home/leon/.local/share/lutris/runners/wine/lutris-4.12.1-x86_64/bin/wine /home/leon/.cache/lutris/installer/overwatch/setup/Battle.net-Setup-enUS.exe
DEBUG    2019-08-06 03:01:26,595 [command.start:113]:ENV: WINEARCH="win64"
DEBUG    2019-08-06 03:01:26,595 [command.start:113]:ENV: WINE="/home/leon/.local/share/lutris/runners/wine/lutris-4.12.1-x86_64/bin/wine"
DEBUG    2019-08-06 03:01:26,595 [command.start:113]:ENV: WINEPREFIX="/mnt/games/lutris/overwatch-test"
DEBUG    2019-08-06 03:01:26,595 [command.start:113]:ENV: DXVK_CONFIG_FILE="/mnt/games/lutris/overwatch-test/dxvk.conf"
DEBUG    2019-08-06 03:01:26,595 [command.start:113]:ENV: STAGING_SHARED_MEMORY="1"
DEBUG    2019-08-06 03:01:26,595 [command.start:113]:ENV: __GL_SHADER_DISK_CACHE="1"
DEBUG    2019-08-06 03:01:26,595 [command.start:113]:ENV: __GL_SHADER_DISK_CACHE_PATH="/mnt/games/lutris/overwatch-test"
DEBUG    2019-08-06 03:01:26,596 [command.start:113]:ENV: DXVK_HUD="compiler"
DEBUG    2019-08-06 03:01:26,596 [command.start:113]:ENV: DXVK_STATE_CACHE_PATH="/mnt/games/lutris/overwatch-test"
DEBUG    2019-08-06 03:01:26,596 [command.start:113]:ENV: PYTHONPATH="/usr/lib/python-exec/python3.6:/usr/lib64/python36.zip:/usr/lib64/python3.6:/usr/lib64/python3.6/lib-dynload:/usr/lib64/python3.6/site-packages"
DEBUG    2019-08-06 03:01:26,599 [signals.register_handler:26]:Registering <bound method MonitoredCommand.on_stop of <lutris.command.MonitoredCommand object at 0x7fa8225a8c50>> to 20723
Running /home/leon/.local/share/lutris/runners/wine/lutris-4.12.1-x86_64/bin/wine /home/leon/.cache/lutris/installer/overwatch/setup/Battle.net-Setup-enUS.exe
000b:fixme:thread:create_user_shared_data_thread Creating user shared data update thread.
000b:fixme:winediag:start_process Wine TkG 4.12.1 is a testing version containing experimental patches.
000b:fixme:winediag:start_process Please don't report bugs about it on winehq.org and use https://github.com/Tk-Glitch/PKGBUILDS/issues instead.
000f:fixme:thread:create_user_shared_data_thread Creating user shared data update thread.
000d:fixme:thread:create_user_shared_data_thread Creating user shared data update thread.
0012:fixme:thread:create_user_shared_data_thread Creating user shared data update thread.
0014:fixme:thread:create_user_shared_data_thread Creating user shared data update thread.
001b:fixme:thread:create_user_shared_data_thread Creating user shared data update thread.
0022:fixme:thread:create_user_shared_data_thread Creating user shared data update thread.
0009:fixme:heap:RtlSetHeapInformation (nil) 1 (nil) 0 stub
002e:fixme:winhttp:get_system_proxy_autoconfig_url no support on this platform
002e:fixme:winhttp:WinHttpDetectAutoProxyConfigUrl discovery via DHCP not supported
0032:fixme:wininet:InternetSetOptionW Option 77 STUB
0032:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
0039:fixme:wininet:InternetSetOptionW Option 77 STUB
003f:fixme:ver:GetCurrentPackageId (0xfdfefc (nil)): stub
003c:fixme:winhttp:get_system_proxy_autoconfig_url no support on this platform
003c:fixme:winhttp:WinHttpDetectAutoProxyConfigUrl discovery via DHCP not supported
<html><head><title>Object moved</title></head><body>
<h2>Object moved to <a href="http://www.blizzard.com/404">here</a>.</h2>
</body></html>
<html><head><title>Object moved</title></head><body>
<h2>Object moved to <a href="http://www.blizzard.com/404">here</a>.</h2>
</body></html>
<html><head><title>Object moved</title></head><body>
<h2>Object moved to <a href="http://www.blizzard.com/404">here</a>.</h2>
</body></html>
<html><head><title>Object moved</title></head><body>
<h2>Object moved to <a href="http://www.blizzard.com/404">here</a>.</h2>
</body></html>
Waiting on children
All children gone
Exit with returncode 0
DEBUG    2019-08-06 03:01:33,495 [command.on_stop:158]:The process has terminated with code 0
DEBUG    2019-08-06 03:01:33,495 [command.stop:241]:Management process looks dead already.
DEBUG    2019-08-06 03:01:33,495 [command.stop:249]:Detaching logger
DEBUG    2019-08-06 03:01:33,604 [interpreter._iter_commands:564]:Installer command: {'task': {'prefix': '$GAMEDIR', 'name': 'winekill'}}
DEBUG    2019-08-06 03:01:33,604 [commands._get_runner_version:37]:Install script uses Wine lutris-4.12.1-x86_64
DEBUG    2019-08-06 03:01:33,605 [wine.winekill:190]:Killing all wine processes: ['/home/leon/.local/share/lutris/runners/wine/lutris-4.12.1-x86_64/bin/wineserver', '-k']
DEBUG    2019-08-06 03:01:33,605 [wine.winekill:191]:   Wine prefix: /mnt/games/lutris/overwatch-test
DEBUG    2019-08-06 03:01:33,605 [wine.winekill:192]:   Wine arch: win64
DEBUG    2019-08-06 03:01:33,661 [wine.winekill:198]:Waiting for wine processes to terminate
DEBUG    2019-08-06 03:01:33,661 [wine.winekill:216]:Done waiting.
DEBUG    2019-08-06 03:01:34,030 [game.save:212]:Saving Overwatch (wine)
DEBUG    2019-08-06 03:01:34,031 [config.save:208]:Saving LutrisConfig(level=game, game_config_id=overwatch-standard-1565053293, runner=wine) config to /home/leon/.config/lutris/games/overwatch-standard-1565053293.yml
DEBUG    2019-08-06 03:01:34,803 [lutriswindow.on_game_updated:698]:Updating game Overwatch (wine)
DEBUG    2019-08-06 03:01:34,920 [interpreter._write_config:656]:Saved game entry overwatch (11)
WARNING  2019-08-06 03:01:34,928 [interpreter._finish_install:609]:No executable found at specified location /mnt/games/lutris/overwatch-test/drive_c/Program Files (x86)/Battle.net/Battle.net.exe

System information

https://pastebin.com/8WjfUR1b

Use Wine when running under a different user

There have been quite a few discussions in the Manjaro Forum about the option to run wine under a different user as stated in the Arch Wiki to minimize possible security issues.

So the questions are 2:

  1. If the guide is followed, how could someone configure Lutris to use that configuration ?
  2. How could that affect the wine versions bundled with Lutris ?

Lutris does not automatically disable runtime when using system wine on gentoo.

The system wine is listed in the drop down menu in runner options. However, the runtime is not disabled due to where wine is located on gentoo systems.

If you wanted to search for all installed versions of wine they are located in:
/usr/lib/wine-staging-<version#>/bin/wine
/usr/lib/wine-staging-<version#>/bin/wine64
/usr/lib/wine-vanilla-<version#>/bin/wine
/usr/lib/wine-vanilla-<version#>/bin/wine64
/usr/lib/wine-d3d9-<version#>/bin/wine
/usr/lib/wine-d3d9-<version#>/bin/wine64

Gentoo does have a wine selection tool available for the purpose of linking to the user selected version of wine and the binaries are symlinked to:

/usr/bin/wine
/usr/bin/wine64

I do not know which method you would prefer to utilize so I have not drafted a PR for this.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.