Closed 5HT2 closed 2 years ago
Thank you for tracking down this issue to the true cause, and for finding a workaround.
I cannot quickly see any way to have this handled automatically (for example re-write launchSettings.json
for Linux users). Possible solutions:
launchSettings-linux.json
and mention in Readme.md that Linux users should use thatlaunchsettings
sub-heading on this pageI suggest best we defer to your and @copygirl opinions on which is better. Please bear in mind that neither Tyron nor me habitually use Linux, I don't know about other team members. (Within Windows10 I use Ubuntu to run git
from the command line and other filesystem maintenance, but that hardly counts)
I'm not experienced enough on this to have a valuable opinion. I'd only like to see that the solution implemented allows Rider users to properly use the debugging tools (break on exception, breakpoints, maybe edit & continue, ...). Ideally we'd get some input from a person experienced with Rider.
I cannot quickly see any way to have this handled automatically
This is why I opened a bug with Rider, because the natural assumption is that it would use Mono, given it asks the user to download / configure mono.
cover it somewhere on the Vintagestory Wiki
I'm already in the process of doing this on the dev environment page, as mentioned on #12. I do think distributing a second JSON file for Linux users would be ideal.
Apologies for the triple post, should've read through the comments before replying.
In regards to your question @copygirl, this solution does not fix debugging support for Rider.
Attempting to run with debugging gives
Cannot open assembly '/usr/bin/mono': File does not contain a valid CIL image.
This is likely something that has to be fixed on their end, with Rider launching and managing mono instead of using this workaround to launch it.
Documenting the issue that causes anegostudios/VintageStory-Issues#1749. This is currently tracked as RIDER-75160.
Rider supports .NET and Mono natively, but fails to select Mono for the default SLN templates. Instead, it tries to run the specified exe directly, using the current program set for the exe MIME type.
This means VintageStory, when run from the IDE, will have several bugs, the most noticable ones being broken keyboard / mouse input (a symptom of unity being run under wine, unfortunately).
The workaround to this is to edit your mod's
launchSettings.json
to run Mono with vintagestory's exe being the arguments, for example:This issue is to request this being documented somewhere (if I knew where the proper place for this kind of documentation was, I'd make my own PR).