Kyutsuru Posted April 29 Report Posted April 29 Hi everyone, having serious trouble updating. I run Linux (Ubuntu 6.17.0-20-generic) and did the procedure on the wiki page (https://wiki.vintagestory.at/Installing_the_game_on_Linux#Updating_the_game) to install the game in the first place. This got me version 1.21.1 and I've not been able to update ever since, I tried using the install.sh as reccommended on the above linked wiki page but it straight-up seems to not work. After some experimentation I eventually gave up and resolved to just continue playing on 1.21.1. Anyway, my friend recently invited me to a server but of course they're running 1.22.1, so I reignited the search to work out how to get the update to actually work and have as of yet had no luck. I'll be honest, I've no clue what I'm doing so if someone could walk me through how they install updates it would be much appreciated (I can't be the only one running Ubuntu here lol)
Diff Posted April 29 Report Posted April 29 When you say it doesn't work, what are you seeing? It runs successfully but nothing changes, does it spew out any errors saying what went wrong? How are you running install.sh?
wildforester Posted April 29 Report Posted April 29 What has worked for me is going to the vintagestory install directory and replacing all the files with the new update from the tar.gz. For me the directory is at /home/user here/.local/share/vintagestory/ may be different between ubuntu and fedora. I use a non-flatpak install.
Kyutsuru Posted April 30 Author Report Posted April 30 Hi guys, sorry for the slow response. Wasn't expecting anyone to reply so quickly and ended up going to bed. I've tried a number of different ways of running install.sh, firstly the obvious, double clicking on it and clicking run (nothing happens) click run in terminal (sometimes the terminal briefly opens for like...a millisecond but normally it doesn't even do that) I've tried opening the terminal, navigating to the directory in which install.sh is, and then running it direct through the terminal; terminal claims it doesn't exist. About to try Wildforester's solution to see if it works, but I don't know if it will as I'm using the flatpak install and I don't know where the raw files end up when you do that.
Kyutsuru Posted April 30 Author Report Posted April 30 Okay, going into .local/share/vintagestory. All that's there for me is the install.sh, run.sh and three desktop files (all empty, I tried opening them in text editor for clues to where the executables might be). There's also the tarball for 1.21.4 which I think I put there when trying this before, when attempting to install 21.4. Another thing I forgot to add on my previous reply, I use cinnamon now but back when I was using gnome for some reason attempting to run install.sh would somehow corrupt the entire folder it was kept in (to the point of nuking my downloads folder at one point, lol). I'm guessing that some difference in the way Nemo handles directories vs Nautilus stops this from happening? But either way that doesn't happen anymore
Solution 0gladih Posted May 1 Solution Report Posted May 1 Hi Kyutsuru, I use Debian; I don't use the install.sh script (I think that procedure is outdated). This procedure may work with Ubuntu, too. Make sure dot-net 10 is installed, VS 1.22 requires it. I use a user installation: Download dotnet-runtime-10.0.7-linux-x64.tar.gz from Microsoft (search for the file name; it will take you to it). Open a terminal and untar it in your home, like so: mkdir dotnet10 cd dotnet10 tar xf ~/Downloads/dotnet-runtime-10.0.7-linux-x64.tar.gz Setup environment variables by editing .bashrc, for example: export DOTNET_ROOT=~/dotnet10 export PATH=$PATH:$DOTNET_ROOT:$DOTNET_ROOT/tools Backup your previous vintage story directory, download vs_client_linux-x64_1.22.1.tar.gz from Vintage Story Game Account, open a terminal, and untar it: mv {vintagestory,.back} tar xf ~/Downloads/vs_client_linux-x64_1.22.1.tar.gz If you didn't install the previous version in your home, don't bother with the `mv` first step shown. This will create the directory vintagestory with the `run.sh` script inside, which you can use to run the game. I also use this to get good FPS with my old nvidia card. My VS user configuration doesn't live in .local/share but in .config/VintagestoryData HTH, and happy survival.
Kyutsuru Posted May 1 Author Report Posted May 1 Okay so that worked! Not sure what manner of black magic I've just performed but I got it to boot up...once Now run.sh won't work, same issue as install.sh the terminal doesn't seem to recognize it exists. Trying to run it through a .desktop file also does...nothing but doesn't pull up the "There was an error launching the application" error box that you get when trying to run an Exec that doesn't exist
DoctorSnakes Posted May 1 Report Posted May 1 7 minutes ago, Kyutsuru said: Okay so that worked! Not sure what manner of black magic I've just performed but I got it to boot up...once Now run.sh won't work, same issue as install.sh the terminal doesn't seem to recognize it exists. Trying to run it through a .desktop file also does...nothing but doesn't pull up the "There was an error launching the application" error box that you get when trying to run an Exec that doesn't exist It's "./run.sh", not "run.sh".
Diff Posted May 1 Report Posted May 1 What he said. On Windows that works, but on Linux for security reasons the terminal doesn't look for commands in the current directory. You have to use ./ before it to explicitly say that's what you want.
Kyutsuru Posted May 1 Author Report Posted May 1 Okay, then I'm more confused by why it worked the first time x.x It's now telling me dotnet framework isn't installed? Even though, I definitely installed it using 0gladih's instructions, and as stated...it did actually work once I'm so confused lol The exact error in case this means anything to any of you guys
Diff Posted May 1 Report Posted May 1 (edited) What does echo $DOTNET_ROOT say? Based on that, it seems that .NET 10 was never properly installed. Maybe try the official instructions from Microsoft for Ubuntu 24.04: https://learn.microsoft.com/en-us/dotnet/core/install/linux-ubuntu-install?tabs=dotnet10&pivots=os-linux-ubuntu-2404 And maybe just try running the install.sh script. Based on your command prompt, a few things seem not quite right, and I'm not personally aware of any issues with it... Edited May 1 by Diff
Calmest_of_lakes Posted May 2 Report Posted May 2 Manual installations (via tarballs) seem to be far more finicky than flatpak installations. I would recommend switching to the flatpak version if you continue to have issues updating the game. if you do, though, just be aware that customizing the game is more difficult and complicated because of how flatpaks work.
0gladih Posted May 2 Report Posted May 2 (edited) Hi Kyutsuru, You've installed vintagestory into the dotnet10 directory. It is going to be a little bit cumbersome that way when updating dotnet or VS. Fix your installation by doing: mv ~/dotnet10/vintagestory ~/ You have the old dotnet pestering you (dot net 8), you need to uninstall it, list the packages like this: dpkg -l dotnet\* Depending on what you found (can be dotnet-runtime-<version> or dotnet-sdk-<version>), uninstall it: sudo dpkg -r dotnet-<the name you found> Double-check your ~/.bashrc file, look for the environment variables: export DOTNET_ROOT=~/dotnet10 export PATH=$PATH:$DOTNET_ROOT:$DOTNET_ROOT/tools In a new terminal, test your new dotnet10 installation: dotnet --info It should return some babble containing something similar to this: Host: Version: 10.0.7 Architecture: x64 Commit: b16286c228 RID: linux-x64 If it looks like that, you are ready to run: ~/vintagestory/run.sh Good luck! Edited May 2 by 0gladih forgot sudo
Kyutsuru Posted May 2 Author Report Posted May 2 Okay I followed all the above steps and it's still saying I have 8.0 installed Host: Version: 8.0.26 Architecture: x64 Commit: ace9703c57 RID: ubuntu.24.04-x64 .NET SDKs installed: No SDKs were found. .NET runtimes installed: No runtimes were found. Other architectures found: None Environment variables: Not set global.json file: Not found Learn more: https://aka.ms/dotnet/info Download .NET: https://aka.ms/dotnet/download Also where within .bashrc do I put the export variables? Does it make a difference, and what do those do?
Kyutsuru Posted May 2 Author Report Posted May 2 Okay I have succeeded in removing dotnet 8 completely...now the old version of Vintage Story doesn't work either x.x Tried using the official .net 10 instructions but that doesn't seem to have worked either. Dotnet --info just now says "No such file or directory"
0gladih Posted May 2 Report Posted May 2 (edited) In your .bashrc, put them at the end of the file. After you do, don't forget to open a new terminal. You can also test the variables before editing, just copy/paste the same lines into your terminal and try dotnet --info Edited May 2 by 0gladih
Nick Salt Posted May 2 Report Posted May 2 You're running Ubuntu right? Dotnet is available as a snap using the "app center" orange icon, looks like a shopping bag with an A on it. If you get a message about dotnet after installing then you have to find what the dotnet root directory is, and add a line to vs's run.sh shell script that tells vs where to look. For example I added export DOTNET_ROOT=/usr/lib/dotnet/ to my run.sh script.
Kyutsuru Posted May 4 Author Report Posted May 4 Hey! It's working now! Yeah I think I put those variables in the wrong place in the file, moving them to the end seemed to fix it Thanks for all your help guys! Sorry for being such a pain, I'm an electronic engineer so I know just enough about software to be dangerous, without actually being useful. Thanks for bearing with me! 1
Recommended Posts