Help installing on a Raspberry Pi 3

I’m trying to install MineOS on Arch Linux and I keep running into a problem. I am following the guide on the wiki and when I get to the npm install I get a bunch of errors. I have attached a text file with the output shown by the SSH window and the npm-bebug.log file. I’m not great with Linux so if you can give me the commands to fix it and tell me hoe that would be fantastic. Also currently this is on a Raspberry Pi B+ if it matters, I’m trying to learn what I’m doing so that when I get a Raspberry Pi 3 for this project I will know what to do.
Debug fie:

SSH Window:

397 verbose stack Error: posix@4.0.1 install:node-gyp rebuild397 verbose stack Exit status 1 398 verbose pkgid posix@4.0.1

The MineOS webui uses nodejs, and one of the dependencies is a package called posix. If this package doesn’t build, MineOS cannot authenticate users (but in a larger scheme, just won’t work).

You can test this by just going to any directory (preferably one unrelated to MineOS altogether, for demonstration), and test building posix.

mkdir ~/testdir
cd ~/testdir
npm install posix

If this errors out, then you know that we’ve singled-out the issue. Looking at the github issues page, you’ll see my name already on this exact issue not building on BSD 9.3; we see that it is not limited to BSD 9.3, but related to the toolchain that builds it, and so BSD9.3 and Arch (for ARM) probably have something in common that is keeping it from working as expected.

Not much can be done on our end to fix this–either it gets fixed on the github side of development or you can try an alternative distro with a build toolchain already working out-of-box.

1 Like

It did indeed fail spectacularly. I’ll will try again once I get a Pi 3. I believe the use different versions of Arch so perhaps it will work then, if not I’ll try Raspbian which is based on Debian. I’ll give an update once I have one.

1 Like

Okay so I was able to get it work on Arch with a Raspberry Pi3 but the RAM usage seemed high. I set it up on Raspbian Jessie lite and the ram usage was good but the CPU usage was to high for the server to be able to keep up. Shortly after starting the server would give a message saying a single tick took over 60 seconds so it was considering it crashed and force closing it. I know this can work. Any ideas?

On what process? See top

I was looking at the graph in the web ui. even without a minecraft server running it would stay above 0.50 which I assume means the CPU is running above 50%. I also just noticed I installed the python version of MineOS. I’m trying to get the node version installed on a different card right now.

I got the node version installed but got the warnings below when I ran npm install and when I try to connect to the web ui I get either a empty response or connection refused error.

root@raspberrypi:/usr/games/minecraft# npm install
npm WARN deprecated native-or-bluebird@1.2.0: 'native-or-bluebird' is deprecated. Please use 'any-promise' instead.
npm WARN deprecated graceful-fs@3.0.8: graceful-fs v3.0.0 and before will fail on node releases >= v7.0. Please update to graceful-fs@^4.0.0 as soon as possible. Use 'npm ls graceful-fs' to find it in the tree.
npm WARN deprecated static-favicon@1.0.2: use serve-favicon module

> posix@4.0.2 install /usr/games/minecraft/node_modules/posix
> node-gyp rebuild

make: Entering directory '/usr/games/minecraft/node_modules/posix/build'
  CXX(target) Release/
  SOLINK_MODULE(target) Release/
  COPY Release/posix.node
make: Leaving directory '/usr/games/minecraft/node_modules/posix/build'
npm WARN deprecated jade@0.26.3: Jade has been renamed to pug, please install the latest version of pug instead of jade
npm WARN deprecated graceful-fs@2.0.3: graceful-fs v3.0.0 and before will fail on node releases >= v7.0. Please update to graceful-fs@^4.0.0 as soon as possible. Use 'npm ls graceful-fs' to find it in the tree.

> utf-8-validate@1.2.1 install /usr/games/minecraft/node_modules/
> node-gyp rebuild

Have you verified the webui is running?

1 Like

I was able to get it to work eventually. I tried a default server and it still crashed after just a moment like it did on the python web ui. I though building a spigot server and using it might help but when I try to build it it fails saying that $HOME isn’t set.

Also is there a way I can update to version 8 of the jre?

If you install Java 8, it’s what MineOS will use. I don’t have instructions for how you’d install it on arch, but the key points are:

  1. Prefer 32 bit to 64 bit; 64 bit offers literally zero advantages to RPIs.
  2. Log in as the mc user (or whatever non-root user you’re using) and type in java -version. If it says Java 8, MineOS will use Java 8.
  3. Download the ARM version, preferably “hard-float”

Follow the supervisord instructions here if you use supervisor for starting the webui.

So for my own understanding, can it be said that installing on Arch is not the same as installing Turnkey LAMP?

If so, can an enviorionment be created on the Arch to install a LAMP?

Thanks for any infoo.

I found some instuctions to install Java 8 and uninstall Java 7. Now there is two Java 8 versions on the system. can I remove the openjdk-8-jre-jamvm:armhf one? If so would I just run apt-get purge openjdk-8-jre-jamvm:armhf?

root@MINECRAFT-SERVER:~# dpkg -l | grep openjdk
ii  openjdk-8-jre-headless:armhf   8u40~b04-2                 armhf        OpenJDK Java runtime, using Hotspot Zero (headless)
ii  openjdk-8-jre-jamvm:armhf      8u40~b04-2                 armhf        Alternative JVM for OpenJDK, using JamVM

I’m also wondering if there is a way to set the priority of the Minecraft server to -20 when it starts. I did it manually, using renice -20 1072 where 1072 was the PID of the java process at the time, to see if it would make a difference and it helped a lot. I’ve done a C++ and a HTML course so I though I could understand the code enough to go find the function that starts the server and change it to put the command nice -n -20 in when starting the server. However I wasn’t able to figure out a way to change the code to make it work.

openJDK 8 wasn’t working at all. I left it running for about an hour and a half and it never got done generating the spawn region for the server. I found out the Oracle JDK 8 is available for the Raspbian and now I’ve got it working great with very little to no lag. It was able to perform the first start in 141 seconds and restart in 20!

Now my only issue is memory usage. I used top and discovered node is taking up about 164MB of RAM, so I’m left with about 650MB that I can safely give to the server. I’m going to install the python version on another SD card with Oracle JDK 8 and see how well it works.

This is a known issue. I’m looking into how to fix it–basically, servers with high file counts end up taking up a lot of memory due to the the live-file-streaming functionality of the webui. When I get it fixed, we should expect node to be in the 80’s.

The python version wouldn’t work at all. I couldn’t even get it to start the server so I’m going to stick to the node version. I tried my best to cause it crash or cause it to lag to much to be playable using huge amounts of tnt but I wasn’t able to do either. It appears to be rock solid.

That will be great for systems with limited RAM.

I was wondering if you can assist me with the cron jobs though. I have some set up but they aren’t occurring as they should. Most only occur half as often as they should and at the wrong times. I did make sure that the system time on the Pi is set correctly already. Below are a couple screenshots showing what I have set up and what the calendar shows. I don’t believe it is restarting every two hours as it is supposed to either but cant find any way to determine if it is or not for sure.

When the issue you need help on changes, you should start a new topic instead; long threads often discourage new users from chiming in because they feel there’s too much to read to get caught up. This should help improve response rates and speeds.

Hey hexparrot, It’s been some time since I’ve talked with you here. My question is a bit along this post. I’m looking to test out MineOs agian and was wondering if we can still fix the high filesystem issue by stopping it from looking at size? (Like i did for the cubox over a year ago). This was Python build so I’m not even sure if it’s possible now or not for use arm devices.

This is really not related at all to the OP’s issue. But that said, this commit allows proper operation of the webui without disk usage checks by deleting the du modules:
rm -rf /usr/games/minecraft/node_modules/du

If you have any additional questions, USE A NEW POST by clicking on “Reply as Linked topic”