App: /home/patte/Games/vintagestory/Vintagestory
Architecture: x64
App host version: 7.0.20
.NET location: Not found
Learn about runtime installation:
https://aka.ms/dotnet/app-launch-failed
Download the .NET runtime:
https://aka.ms/dotnet-core-applaunch?missing_runtime=true&arch=x64&rid=debian.12-x64&apphost_version=7.0.20
To solve this you have to know how to set environment variables. I moved my .dotnet folder from $HOME to $HOME/.local/bin via
mv ~/.dotnet ~/.local/bin/.dotnet
and afterwards I set an environment variable
export DOTNET_ROOT=$HOME/.local/bin/.dotnet
Important: Make sure to use the right command for the shell you are using and set the environment variable permanently.
Note: I believe if you don't move the .dotnet folder like I did in my example you have to also set another environment variable under $PATH.
Hope that helps. I'm a noob and had to figure it out by myself for 2 hours.
---
PS: I'm still trying to solve a problem with the Vintage Story install.sh script as I get the following error executing it:
Fatal! I require sysctl but it's not installed. Aborting.
sysctl is only usable as a super user (with sudo) so I believe install.sh is trying to run sysctl as a "normal" user which isn't possible.
What I did as a workaround is manually add sysctl to the PATH. No idea how clean this is and quite frankly I don't care. Here's the commands:
nano ~/.bashrc
Then add the following line:
export PATH="$PATH:/sbin"
Then run:
exec bash
From that point onward you should be able to run install.sh without it yapping about sysctl.