I'm building a MTG Arena snap and have some issues

Hi everyone,
I’m building a MTG arena snap.
The snap downloads the game and installs it and is built upon the template https://github.com/snapcrafters/wine-sommelier

It seems that some computers have issues with the snap and some don’t and i cant pinpoint the issue.

I’m thinking maybe it could be Nvidia related but I’m not sure

on Ubuntu 19.10 i get the following error

Mono path[0] = 'C:/Program Files (x86)/Wizards of the Coast/MTGA/MTGA_Data/Managed' Mono config path = 'C:/Program Files (x86)/Wizards of the Coast/MTGA/MonoBleedingEdge/etc' libGL error: No matching fbConfigs or visuals found libGL error: failed to load driver: swrast X Error: GLXBadContext Request Major code 151 (GLX) Request Minor code 6 () Error Serial #197 Current Serial #196

please try the snap for yourself and report back
sudo snap install mtg-arena --edge

It takes a long time to install and it seems to be stuck on 0% but dont worry its doing its thing just give it time.

any ideas/suggestions would be highly appreciated

-DM

2 Likes

Thanks for putting in the work to do this!

The snap works well on my end. I can install the snap, wait patiently for it to get setup, and then launch the game. It runs well on my integrated Intel GPU.

One thing doesn’t work: I have a discrete Nvidia GPU, currently configured to take advantage of the Nvidia On Demand support in the latest kernels. To run a game on my Nvidia card, I need to set some environment variables, including __NVIDIA_PRIME_RENDER_OFFLOAD=1 and __GLX_VENDOR_LIBRARY_NAME=“nvidia”. Those environment variables doesn’t seem to get passed on to the snap, so I’m stuck running this version of Arena on my Intel card.

Thanks again, and I hope this helps.

2 Likes

Thank you very much for testing!
Do you mind sharing what distro where you using to test and what was the nvidia driver version?

Thanks!!

That info would be useful. Apologies for neglecting to include it initially:

Distro: Ubuntu Focal Fossa (pre-release)
Driver Version: 435.21

GPU: GeForce MX150
CPU: Intel Core i7-8650U
Kernel: 5.4.0-14-generic

Nice work, there went 3 hours of my life last night (only ever played with physical cards before).

I would recommend not using pulseaudio andinstead change that to audio-playback to get audio out of the box. If the game supports conversation you can potentially hook up audio-record which would require manual connection.

About the NVIDIA setup, this might be a nice task for snap set, something like snap set mtg-arena nvidia.enable-on-demand=true (I didn’t give the setting that much thought) and have a configure hook that acts upon that and writes out something (maybe to $SNAP_DATA) that can be sourced a command-chain to export those variables.

@the-mentor Thank you so much for this!!

In the opening screen it says to report issue to the mtg arena issue tracker at https://example.com - what is the correct url?

1 Like

Hi @hellsworth you can file issues Here

Sorry I didn’t respond sooner had to deal with my country going on lockdown due to COVID-19.

-DM

Hi @sergiusens,
I have the latest code on GitHub Here.
I would love if you can submit a PR with your recommended changes so I can merge them.

thank you !
-DM

1 Like

I submitted two quick PRs fixing missed spots when adapting from the template. That should allow to start the application with mtg-arena (instead of mtg-arena.super-snap), if I understand correctly.

You should check out Wizard’s Fan Content Policy. I’m fairly certain re-wrapping the client (without changing it) is okay according to that license (NAL!) but you will want to

  1. replace the logo image with something not in violation with the license (or obtain permission) and
  2. include the necessary license note in both the README and Snap description.

I added another PR which adds an option as proposed above.
@petevg and @sergiusens, can you please have a look?

Unfortunately, in my case the app still doesn’t start; it seems the Nvidia driver is not found at all? Some advice can be found online but I have no idea how to (efficiently) act on it in the context of Wine inside a snap.

Hi @raphael.reitzig as i commented on the PR you’ve made

The Nvidia issue is with snapd from my understanding
Here is a link to the issue Nvidia beta drivers completely break snaps

you can file issues Here

Thanks for the link!

Sorry I didn’t respond sooner had to deal with my country going on lockdown due to COVID-19.

omg aren’t we all!

1 Like