Can't create servers / No Profiles downloaded - Arch

Ultimately I think the issue is that when the user root tries to run node, it’s doing so from a non-login session, which is another way of saying it doesn’t run a couple of critical variable-setting scripts we’re depending on.

So, like when you’re logging in as a user and expecting a terminal, some scripts are ‘sourced’ which introduces variables into the environment that would do things like allow your NPM-versioned node to take precedence over the system version.

Right now you have a system version of 11.12.0, and you have a version controlled by nvm that exists and gets detected/run instead of the 11.12.0. However, mineos doesn’t know that your 8.0.0 exists, because MineOS runs a non-login shell (where if you’re typing, you’re running a login shell).

You’re building userid correctly. It’s building and it’s working. The webui just doesn’t ever get to see it because 11.12.0 is what’s being invoked and 11.12.0 doesn’t care for your userid build.

Answer?

  1. [it is something]. Remove the system-installed version of NodeJS (11.12.0) if you don’t need it. Recreating a symlink where the old one existed to point to your 8.0.0 install.

  2. [better]. Update /etc/profile to source the NVM environment that your /root/.bashrc is already doing. You’d check the latter file for what the script is and then just have it exist in /etc/profile which MineOS would see.

  3. [another option]. (but requires git committing). Edit /usr/games/minecraft/webui.js–the very first line that says: #!/usr/bin/env node and update that to the path of your 8.0.0 installation. Make a commit of this change with git so that your change lives peacefully along with future updates (which won’t be coming very often).

Realistically, you can do just the edit and you’re likely to be AOK forever. Worst case scenario is that you ‘reset the webui to default/factory settings’ and then you remake this change.

Those are a few options. I think #2 might be best, #3 might be the actual easiest but if not fully done, could be … confusing shortly, down the line.