Roon Extension Manager now included in DietPi (v6.10)

With the release of version 0.9.0 of the Extension Manager more extensions become available after the installation of Docker. On DietPi it is easy to add Docker to the mix, you can install it via the dietpi-software installer. Docker can be found in the ‘System Stats / Management’ group within ‘Software Optimized’.

Alternatively, you can install from the command line:

dietpi-software install 162

If you perform a clean install you have to install both the Extension Manager and Docker:

dietpi-software install 86 162

I created two videos, one that demonstrates the clean install:


And one that demonstrates the upgrade:

I wanted to add a few notes about how to retrieve log files from Roon Extension Manager on DietPi using a Windows PC. In brief, here’s what you have to do:

Enable logging in Extension Manager, restart it, then restart (with logging enabled) any extensions you are running. This will start generating the log files.

Install PuTTY on Windows, if you haven’t already done so.

Log in to the DietPi machine, run dietpi-software and change the SSH server to OpenSSH. Install and reboot. (Dropbear apparently does not support SCP.)

Open a Windows Command prompt and enter a command like this:
pscp -scp root@<ip>:/root/.RoonExtensions/lib/log/roon-extension-manager.log <local directory>
Of course, you will replace <ip> with the IP address of your DietPi machine and replace <local directory> with the destination folder path on the Windows PC, e.g., C:\Users\myuserid\Desktop

Hopefully this will be helpful for those like me who are primarily Windows users and can only do Linux with very, very specific instructions. :rofl:

3 Likes

Good evening guys.

I did a clean install of DietPi on my old Raspberry Pi Model B+ and ran into issues:

root@DietPi:~# systemctl status roon-extension-manager
● roon-extension-manager.service - Roon Extension Manager
Loaded: loaded (/etc/systemd/system/roon-extension-manager.service; disabled; vendor preset: enabled)
Active: active (running) since Tue 2020-04-07 22:31:34 CEST; 3min 42s ago
Main PID: 862 (roon-extension-)
Memory: 8.9M
CGroup: /system.slice/roon-extension-manager.service
├─862 /bin/sh /root/.RoonExtensions/bin/roon-extension-manager.sh
└─863 node .

Apr 07 22:33:04 DietPi roon-extension-manager.sh[862]: npm ERR! code ELIFECYCLE
Apr 07 22:33:04 DietPi roon-extension-manager.sh[862]: npm ERR! errno 1
Apr 07 22:33:04 DietPi roon-extension-manager.sh[862]: npm ERR! utf-8-validate@5.0.2 install: node-gyp-build
Apr 07 22:33:04 DietPi roon-extension-manager.sh[862]: npm ERR! Exit status 1
Apr 07 22:33:04 DietPi roon-extension-manager.sh[862]: npm ERR!
Apr 07 22:33:04 DietPi roon-extension-manager.sh[862]: npm ERR! Failed at the utf-8-validate@5.0.2 install script.
Apr 07 22:33:04 DietPi roon-extension-manager.sh[862]: npm ERR! This is probably not a problem with npm. There is likely additional logging output
above.
Apr 07 22:33:04 DietPi roon-extension-manager.sh[862]: npm ERR! A complete log of this run can be found in:
Apr 07 22:33:04 DietPi roon-extension-manager.sh[862]: npm ERR! /root/.npm/_logs/2020-04-07T20_33_04_709Z-debug.log
Apr 07 22:33:04 DietPi roon-extension-manager.sh[862]: 2020-04-07T20:33:04.824Z - Err: Installation failed: utf-8-validate@^5.0.2

Any Ideas?..

The log file might provide some further details:

cat /root/.npm/_logs/2020-04-07T20_33_04_709Z-debug.log

If it is big it might be handy to upload it somewhere and share a link.

TBH i just reinstalled DietPi on my leftover raspberry pi 4 and now it works.

I think the problem was that I manually changed the keyboard layout from utf-8-eng to de…

With my clean install now, I changed it via the dietpi-setup

1 Like

Hi @Jan_Koudijs.

I have just installed Extension Manager and Docker on a Raspberry Pi Zero running DietPi, hoping to get going with the Entrypoints extension. As far as I can tell, this has worked and the service is running.
Unfortunately though, when I check in Roon, the Extension Manager doesn’t show up.

Any suggestions for what to check? Many thanks

On what OS is your Roon core running? Any firewall active on this core machine?

My Core is running ROCK on a NUC.
Other extensions appear just fine.
Running Extension Manager on my iMac works fine.
It’s just the Pi Zero W + DietPi where this doesn’t show.

OK, that is useful information. It might be something Pi Zero specific, I don’t think I have had any success or failure feedback on it from other users.

If you log into dietpi, and stop the service:

systemctl stop roon-extension-manager

Then switch to the Extension Manager directory:

cd .RoonExtensions/lib/node_modules/roon-extension-manager

And run it from the command line:

node .

Does it keep on running, what output do you get on the console, any errors?

Here is the output:

> root@DietPi:~/.RoonExtensions/lib/node_modules/roon-extension-manager# node .
> { 'roon-extension-manager': '0.11.8',
>   'roon-extension-manager-updater': '0.4.0' }
> Docker for Linux found: Version 19.03.13
> 2020-09-22T20:49:44.005Z - Inf: Installing peer dependency: utf-8-validate@^5.0.2...
> gyp ERR! configure error 
> gyp ERR! stack Error: Can't find Python executable "python", you can set the PYTHON env variable.
> gyp ERR! stack     at PythonFinder.failNoPython (/usr/local/lib/node_modules/npm/node_modules/node-gyp/lib/configure.js:484:19)
> gyp ERR! stack     at PythonFinder.<anonymous> (/usr/local/lib/node_modules/npm/node_modules/node-gyp/lib/configure.js:406:16)
> gyp ERR! stack     at F (/usr/local/lib/node_modules/npm/node_modules/which/which.js:68:16)
> gyp ERR! stack     at E (/usr/local/lib/node_modules/npm/node_modules/which/which.js:80:29)
> gyp ERR! stack     at /usr/local/lib/node_modules/npm/node_modules/which/which.js:89:16
> gyp ERR! stack     at /usr/local/lib/node_modules/npm/node_modules/isexe/index.js:42:5
> gyp ERR! stack     at /usr/local/lib/node_modules/npm/node_modules/isexe/mode.js:8:5
> gyp ERR! stack     at FSReqCallback.oncomplete (fs.js:158:21)
> gyp ERR! System Linux 5.4.51+
> gyp ERR! command "/usr/local/bin/node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
> gyp ERR! cwd /root/.RoonExtensions/lib/node_modules/roon-extension-manager/node_modules/utf-8-validate
> gyp ERR! node -v v11.15.0
> gyp ERR! node-gyp -v v3.8.0
> gyp ERR! not ok 
> npm WARN ws@7.3.1 requires a peer of bufferutil@^4.0.1 but none is installed. You must install peer dependencies yourself.
> 
> npm ERR! code ELIFECYCLE
> npm ERR! errno 1
> npm ERR! utf-8-validate@5.0.2 install: `node-gyp-build`
> npm ERR! Exit status 1
> npm ERR! 
> npm ERR! Failed at the utf-8-validate@5.0.2 install script.
> npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
> 
> npm ERR! A complete log of this run can be found in:
> npm ERR!     /root/.npm/_logs/2020-09-22T20_50_13_422Z-debug.log
> 
> 2020-09-22T20:50:13.521Z - Err: Installation failed: utf-8-validate@^5.0.2

You can install python with:

apt-get install python

Then check again how far it gets.

the perils of Diet-Pi sometimes

Got there eventually - thanks for your help @Jan_Koudijs.
I needed to install Python as suggested, but also the DietPi -> Software Additional -> Build-Essentials package first in order for Python to install.
Then finally Extension Manager is running.

Now on to getting EntryPoints running…

1 Like

Hi @Jan_Koudijs,
I had to re-flash and re-install dietpi.
I took the risk and downloaded the latest 64-bit image that is still in beta.
Installing docker went OK but I got an error installing Roon Extension Manager.
Should it work with the 64-bit version?

I just tried the 64-bit version on a Pi 3B+ and had no issues. What was the error you got?

Everything runs fine until here:

Then I get this error:

It fails in downloading the setup script, the link works in my setup. The command executed is:

curl -ILfvm 10 https://github.com/TheAppgineer/roon-extension-manager-packaging/raw/master/linux/setup.sh

Error 28 indicates a timeout.

Although the Extension Manager technically works on 64-bit it isn’t of much use if you plan on using Docker based extensions as these are not available for the arm64 architecture.

Installed the 32-bit version and I have the same problem:

I don’t know what’s the issue in your setup, I can’t reproduce it. It might be at the DietPi side of things.

Can this be due to firewall rules? I’ll check with my IT service provider.
They are managing a WatchGuard Firebox T35 firewall appliance with Total Security Suite.