Roon Server on DietPi?

I had tried this many moons ago with much the same results and gave up and just went with ROCK. Interested to know what the reply was from Dan

Same problems here !
I’ve thought that is normal untill now but it seems it is a problem.
I am running DietPi on ESXi as virtual appliance.
Everything is working fine except of database reset on updates.
DietPi roon installer script is modifiied, and RoonServer is installed in anotere location than usual linux installation.
To be more specific, default Roon installation uses ‘opt’ as installation folder, and on DietPi Roon is installed under mnt/dietpi_userdata
Maybe this is an issue for updates?

I think we would understand better if the @support crew could outline the update process for a Roon Core/Server? And we could bring that info to the DietPi-guys also,

I think the problem is the database location.
By default, roonserver database is set to be in var/roon/RoonServer
DietPi team has changed the database location to be in the same folder as roonserver app, but the update process first delete installation folder and then unarchive the updated version.
So, the database is deleted on every update.

1 Like

IIRC DietPi runs all in RAM

I think it runs in RAM on RPi.
I am talking about x86 version of DietPi.

My conclusion is that Roon claims that it’s OK to change the $ROON_DATAROOT to, say:
/mnt/dietpi_userdata/roonserver
And DietPi does this, but at each update the update procedure deletes the database and then rewrites it?

I assume I have to uninstall Roon Server using DietPi Software manager and then reinstall it using Roons easy install scripts to make sure everything is default.
And then, once again restore my database! :slight_smile: I’m getting good at this now though! :smiley:

1 Like

I think you are right !
Like I said also in DietPi forum, it is OK to change the $ROON_DATAROOT but I think is shall not be in the same folder as roonserver installation !
That’s why roon has database by default on var/roon.
I have thought also to try this:

  1. Stop roonserver
  2. move RoonServer folder from /mnt/dietpi_userdata/roonserver to var/roon
  3. modify roonserver.service file on etc/systemd/system and change this line: Environment=ROON_DATAROOT=/mnt/dietpi_userdata/roonserver
    to be:
    Environment=ROON_DATAROOT=/var/roon
  4. restart roonserver
  5. see what’s happening
1 Like

I have just installed a new server based on Debian Buster.
RoonCore is installed via official script.
I have also installed Roon Extension Manager.
Working great so i will keep it from now.

1 Like

Hi @Mikael_Ollars,

It sounds like the proper folders might not be persistent on the DietPi build. I would make sure that all of these folders are set as persistent and that the creators of the image haven’t set up a Deep Freeze kind of capability on the image:

If there are still issues after, can you please request that a DietPi dev reach out directly to us?

1 Like

I have just posted your findings on DietPi forum.
Let’s see their answer.

1 Like

I am using Dietpi roon server, thanks Dietpi team.

This issue has been solved with latest DietPi v7.8. All existing Roon Server installations are migrated, separating/moving the Roon binaries and assets away from the data directory into a dedicated one /opt/roonserver, where the updater won’t touch any data or settings anymore.

4 Likes

Did you get this to work in the end?

Just trying out Dietpi on x86 and want to have my Plex server and Roon on same machine. But I cant seem to get the instance of Roonserver to access any of the smb mounts says unathourised. Plex can access them no problems and they are all accessible in Dietpi.

Which issue are you referring to? It does work, and the issue discussed in the middle, that updates removed configs/data, has been solved over 2 years ago.

Access permission issues are a different topic: The service runs as user and group roonserver. So when you have a local SMB mount, assure that this user or group has read access.

Hmm, I just checked it and see that SMB mounts done via dietpi-drive_manager have 770 modes for dietpi user and group. Not sure why this is, usually 775 should be fine as default. However, try to add the roonserver user to this group:

sudo usermod -aG dietpi roonserver

I am currently not sure whether the Roon Server has some internal SMB mount/access feature. If so, and you are referring to this, then of course forget about the above, and the problem then seems to be more on authentication/credentials or the SMB server side.

It has its own network mounting which mounts but you cant access, but I was using dietoi drive manager to add the mounts, I changed the UID in fstab to be roonsever then I can access the mount. I will try your method of adding it to the dietpi group

Adjusting UID/GID and/or modes of the mount in /etc/fstab of course works as well. Adding the user to dietpi group just seemed a little faster and more sustainable, e.g. when you (re)add SMB shares via drive manager.

I have been running Roon Server on DietPi for about 18 months now. Early on I switched several times between it and ROCK and I stuck with DietPi because I found it more stable (likely because my hardware is not officially ROCK supported). All of my music is on an CIFS/SMB mount that’s mounted by Drive Manager and accessed “locally” by Roon. All of this works perfectly with one exception, every time I install a Roon Server update (inside Roon), it loses access to the local mount and I need to reboot. When it comes back up everything works again.

Is this available to be installed via normal dietpi-software screen?

Or you had to do some command line manually

Yes, but only on x86_64 machines. For ARM, there is currently only the Roon Bridge available: https://help.roonlabs.com/portal/en/kb/articles/linux-install#Downloads

But there are discussions/requests for the serve/core on ARM, which would be pretty reasonable IMO with ARM SBCs available which easily outperform a lot of x86_64 server boxes:

1 Like