Nitrox icon indicating copy to clipboard operation
Nitrox copied to clipboard

pressure-vessel launch fails on some systems

Open anewusername opened this issue 6 months ago • 9 comments

Are you on the latest version of Nitrox?

Yes, I'm on the latest commit of the repo (only for experts).

Which OS are you playing on?

Linux (currently not supported, don't file any reports if your are using this)

On which platform did you buy Subnautica?

Steam

Describe the issue.

Trying to start on my Linux machine, I get pressure-vessel-adverb[957142]: E: Failed to execute child process “/jan_ssd/SteamLibrary/steamapps/common/SteamLinuxRuntime_sniper/pressure-vessel/bin/steam-runtime-launcher-interface-0” (No such file or directory)

The file does exist, pressure-vessel just doesn't see it. Possibly related to https://github.com/ValveSoftware/steam-runtime/issues/288 .

I mentioned this over on https://github.com/Measurity/Nitrox/pull/19#issuecomment-2395588993 but wanted to make sure it didn't get forgotten.

As a workaround, I am launching without pressure-vessel, with the following edits inNitroxModel/Platforms/Store/Steam.cs; probably you could fall back to this if the normal way fails:

//FileName = Path.Combine(sniperruntimepath, "_v2-entry-point"),
//Arguments = $" --verb=run -- \"{Path.Combine(protonPath, "proton")}\" run \"{pathToGameExe}\" {launchArguments}",
FileName = Path.Combine(protonPath, "proton"),
Arguments = $"waitforexitandrun \"{pathToGameExe}\" {launchArguments}",

Describe the steps you took to encounter the bug.

No response

Relevant log output

Console output:

$ ./Nitrox.Launcher 
[18:52:54.678] [DBG] Game installation was found by NitroxModel/Discovery/InstallationFinders/ConfigFinder at '/jan_ssd/SteamLibrary/steamapps/common/Subnautica'
[18:52:54.926] [INF] Trying to request data from https://nitrox.rux.gg/api/version/latest
[18:53:06.757] [INF] Launching Subnautica in multiplayer mode
[18:53:06.764] [DBG] Removing Nitrox entry point from Subnautica
[18:53:08.664] [DBG] Removed Nitrox entry point from Subnautica
[18:53:08.665] [DBG] Adding Nitrox entry point to Subnautica
[18:53:09.708] [DBG] Writing assembly to Assembly-CSharp-Nitrox.dll
[18:53:09.709] [DBG] Deleting Assembly-CSharp.dll
[18:53:09.709] [DBG] Added Nitrox entry point to Subnautica
pv-adverb[343042]: E: Failed to execute child process “/jan_ssd/SteamLibrary/steamapps/common/SteamLinuxRuntime_sniper/pressure-vessel/bin/steam-runtime-launcher-interface-0” (No such file or directory)

anewusername avatar Jul 15 '25 02:07 anewusername

Have you tried building Nitrox and launching the game on #2336?

NinjaPedroX avatar Jul 15 '25 02:07 NinjaPedroX

Just checked, same symptoms when on the latest commit (67e139e6) of your launcher-improvements branch.

anewusername avatar Jul 15 '25 02:07 anewusername

Are you using proton? Proton isn't supported. Nitrox will have native linux support in 1.8 (aka now on the github)

oliver408i avatar Jul 15 '25 02:07 oliver408i

I'm running the linux-native launcher.

I believe 1.8 attempts to launch the game itself via proton, and that's the code that is failing.

anewusername avatar Jul 15 '25 03:07 anewusername

No it shouldn't. A few weeks ago I tried the launcher on my ubuntu box too. It was able to load in (I did not play due to it not being a gaming machine) but it proves it works. It seems like this problem is related to SteamLibrary on external disks? As far as I know Nitrox will not launch itself with proton, it is native.

oliver408i avatar Jul 15 '25 03:07 oliver408i

What does jan_ssd point to? It seems to be an alias?

oliver408i avatar Jul 15 '25 03:07 oliver408i

Not sure how else to interpret this code where the error occurs: https://github.com/SubnauticaNitrox/Nitrox/blob/354eae16c7c725385b308e2c8f5be3fe914b642f/NitroxModel/Platforms/Store/Steam.cs#L327-L331

/jan_ssd is the mount point for a different partition (different from where my steam executable is located).

anewusername avatar Jul 15 '25 03:07 anewusername

This appears to be Steam issue? Is it only with Nitrox launcher that there's a problem?

Adding the fallback seems to work at first. But when I tried switching back to using pressure-vessel, it corrupted the proton prefix.

Measurity avatar Jul 15 '25 05:07 Measurity

As far as I can tell, running _v2-entry-point --verb=run -- whatever fails with the same error, regardless of whether whatever is proton with Subnautica.exe or anything else (e.g. echo). I don't have any issues normally running subnautica (or anything else through steam) on this system. If you can point me to the docs for _v2-entry-point and the rest of pressure-vessel, I can take a shot at understanding what exactly is failing in this case.

For the fallback, I suspect users aren't going to switch back and forth between working / non-working pressure-vessel, but I can see risk of corruption being unacceptable. I'm happy to just keep building my own patched copy, just want to make sure you guys are aware of the issue in case others encounter it.

anewusername avatar Jul 15 '25 07:07 anewusername