screepers / screeps-launcher

Launcher for the Screeps Private Server
MIT License
133 stars 34 forks source link

Installing Node failed #40

Open qido2 opened 1 year ago

qido2 commented 1 year ago

We are trying to set up a private server on Raspberry Pi 3 running Raspbian following this guide using the latest version:

Once we try to run the ./screeps-launcher inside terminal it tries to install NodeJS and fails with error code 404.

image

We are using the screeps-launcher_v1.15.1_linux_arm version as it is the only we were actually able to execute. As we later found out inside the source code of the install.go file at line 201, it sets the arch to armv6l and tries to install NodeJS based on that.

We then found out there is no such distributable for the NodeJS based on the Index of /dist/v12.22.12/ and our Raspberry is also running on armv7l architecture as shown in the screenshot below.

image

We are able to manually install the correct armv7l version of NodeJS, but the ./screeps-launcher keeps looking for the armv6l version as it is predefined in the code.

Any ideas on how to tackle this?

AlinaNova21 commented 1 year ago

Haven't messed with that recently, but may want to try a 64 bit os and arm 64, you can also extract a node tar into the deps/node folder to manually install it. I'll look into setting what it would take to fix this issue at some point, although in my experience a pi really doesn't like the server

qido2 commented 1 year ago

Haven't messed with that recently, but may want to try a 64 bit os and arm 64, you can also extract a node tar into the deps/node folder to manually install it. I'll look into setting what it would take to fix this issue at some point, although in my experience a pi really doesn't like the server

We are trying to fiddle with it a bit more. I will keep this post updated with what we find.

ckreon commented 1 year ago

I have a similar issue when installing on Ubuntu 18.04 LTS - I can get all the way to running screeps-launcher, but when it goes to install Node I get this error:

2023/09/16 16:16:32 screeps-launcher v1.15.1 (Wed Sep 13 22:01:35 UTC 2023)
2023/09/16 16:16:38 Loaded config from config.yml
2023/09/16 16:16:38 Installing Node
2023/09/16 16:16:40 Get https://nodejs.org/dist/index.json: net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers)

Not sure exactly what is causing this at the moment, I've poked into it a bit, but the usual suspects aren't the issue (/etc/hosts, proxies, and so forth).

BlueskyFR commented 1 year ago

Same issue here on standard Linux using the docker image

BlueskyFR commented 1 year ago

Ok so on my side I was using podman-compose (rootless) so since root was owning the /screeps directory and the default screeps user has no permissions I had to add user: root to my docker-compose.yml!

qido2 commented 10 months ago

We were unable to find any solution.

We've tried to:

  1. Clean install of the newest Raspbian version for the Raspberry Pi 3.
  2. Manually set the arch value to armv7l in the source code and recompile the launcher.
    • this fixed the 404 error message when installing NodeJS.
  3. After fixing the 404 error message we encountered a few missing packages and were able to install them manually.
  4. What followed was a never-ending battle with yarn and package versions.

In conclusion, we gave up for now, as we don't have enough spare time to continue this investigation.

OlofHaglund commented 10 months ago

I had this issue. The problem was that I was running podman on a system with SElinux. Adding a :z to volume worked.

/srv/screeps:/screeps:z