Roon Extension Manager v0.10.0


(Edward Lee) #222

Now that is much more my speed! :grinning: Problem now solved. Thank you for the lightning fast reply!!

P.S. Maybe someone could add that link to the top of the first post here for amateurs like me? :grinning:


(Edward Lee) #224

I’ve just tried installing two extensions, but neither seems to be working. See screenshot below. Any advice? Thank you!!


(Rene Bouwmeester) #225

Consider it @done, @Jan_Koudijs!


(Wim) #226

@Jan_Koudijs I followed the uninstall/prepare for re-install instructions and did another attemp today.

There were some warnings, maybe related to the OS, but Roon Extension Manager is now running on my backup-server (HPE ProLiant DL20 Gen10 running Windows Server 2016).

image

Thanks for the Roon Extension Manager and for the support!


(Edward Lee) #227

I just uninstalled and reinstalled Roon Extension Manager. Now, the Web Controller extension installed and is working fine. Still no luck with the Denon extension. Error is:

Terminated: Roon-extension-Denon (1)


(Jan Koudijs) #228

To get to know what is going on it would be helpful if you enable logging for the Extension Manager and the Denon extension. You can read about logging in post 184. With logging active wait till the problem occurs, upload the log files somewhere and share a link.


(Edward Lee) #229

Any idea why I am getting the following error when running the Windows 64 bit installer:

Downloading node-v6.11.1-x64.msi…
######################################################################## 100.0%
OK

Downloading Git-2.13.3-64-bit.exe…
######################################################################## 100.0%
OK

Installing Roon Extension Manager…
7:38 PM 2/19/2019
throw err;
^

Error: Cannot find module ‘core-util-is’
at Function.Module._resolveFilename (module.js:469:15)
at Function.Module._load (module.js:417:25)
at Module.require (module.js:497:17)
at require (internal/module.js:20:19)
at Object. (C:\Program Files\nodejs\node_modules\npm\node_modules\readable-stream\lib_stream_readable.js:40:12)
at Module._compile (module.js:570:32)
at Object.Module._extensions…js (module.js:579:10)
at Module.load (module.js:487:32)
at tryModuleLoad (module.js:446:12)
at Function.Module._load (module.js:438:3)
module.js:471
throw err;
^

Error: Cannot find module ‘core-util-is’
at Function.Module._resolveFilename (module.js:469:15)
at Function.Module._load (module.js:417:25)
at Module.require (module.js:497:17)
at require (internal/module.js:20:19)
at Object. (C:\Program Files\nodejs\node_modules\npm\node_modules\readable-stream\lib_stream_readable.js:40:12)
at Module._compile (module.js:570:32)
at Object.Module._extensions…js (module.js:579:10)
at Module.load (module.js:487:32)
at tryModuleLoad (module.js:446:12)
at Function.Module._load (module.js:438:3)
Press any key to continue . . .


(Jan Koudijs) #230

Are you trying to reinstall?

If so, you might try the reinstall steps first.


(Jan Koudijs) #231

Roon Extension Manager v0.9.0 is now available

Till now the Extension Manager only supported extensions that are Node.js based and installable via npm (cross platform). Not all available extensions are created this way, meaning that only a subset could be provided to the user.

To improve the base of extensions that can be included in the repository, I’ve now added Docker container support to the Extension Manager. For the look and feel I tried to make the support for both types as similar as possible but there are also differentiating features for both types. The table below shows the details from an extension perspective.

Feature npm Docker
Cross platform Yes No (Linux only)
Manager independent execution No Yes
Logging Yes Via Docker
Native code execution (e.g. via node-gyp) No Yes
Multiple instances of single extension No Not Yet
Resource control No Not Yet

An extension can support both types so that the best fit for the environment can be picked. An example of this is that containers will be preferred if the Extension Manager runs in a container itself.

As can be seen above, Docker container support requires a Linux system, it will not work with Docker for Windows or Mac. This is caused by the virtual networking used by the included virtual machine, this type of networking is not supported by the network service discovery method used by Roon.

The options for a working container setup are:

Linux PC

Install Docker via the package manager of your distribution or get it here. At startup the Extension Manager will detect the Docker installation and makes the additional extensions available.

NAS

The more powerful models of the Synology and QNAP NAS’es have container support. By creating a container for the Extension Manager and passing it the path to the Docker socket it will make the additional extensions available.

Raspberry Pi

There are different Pi distributions that let you run Docker containers. Maybe the easiest in use is DietPi because it let you install both Docker and the Extension Manager via the dietpi-software tool. At startup the Extension Manager will detect the Docker installation and makes the additional extensions available.

How to update

If you have auto update enabled then the Extension Manager should be up to date right now. Otherwise it is possible to update manually via the Settings dialog, select the Extension Manager from the System category and perform the Update action.

As this is the biggest change I released since I’m running this project, there might be room for improvement. Let me know how this works out.


Roon Extension: CD Ripper v0.1.0
Roon Extension Manager now included in DietPi (v6.10)
Roon Extension: CD Ripper v0.1.0
(Jan Koudijs) #232

Roon Extension Repository v0.2.2 is now available

So what does the Docker container support bring?

Four new extensions are added to the repository:

By Roon Labs, LLC

By Floris Jan Galesloot

Thanks @danny and @eFJee!

How to update

If auto update is enabled then the changes will be pulled in the next time the update is performed. It is also possible to update manually via the Settings dialog, select the Extension Repository from the System category and perform the update action.


(Jan Koudijs) #233

With the updates in place and Docker installed you can install extensions that run in a container. Here is a screenshot for the installation of the Griffin Powermate extension:

This extension needs to know which USB port the Powermate is connected to, you provide the device path in the Docker Install Options before you select the Install action from the Action pulldown.

Some extensions might require an environment variable to function properly. An example of this is the Alarm Clock extension (if it is installed as a container), where an environment variable is used to get the right time zone:

For those who are new to Docker and want some background information, the Orientation of the Get Started guide might help:


(Jan Koudijs) #234

Roon Extension Manager v0.9.x bug fixes

A couple of bugs were fixed since the release of v0.9.0:

v0.9.1
Fixed a bug in the initial installation of the Extension Repository

v0.9.2
Fixed a bug in the storing of user settings during Auto Update

v0.9.3
Fixed a bug in the querying of available containers

v0.9.4
Fixed a bug in the repository loading after initial install

v0.9.5
Fixed a bug in the Docker detection during repository loading


Roon Extension: Roon Web Controller v1.2.0
(Jan Koudijs) #235

Extension Manager v0.10.0 and Extension Repository v0.3.0 are available now

This update makes the CD Ripper extension available

How to update

If auto update is enabled then the changes will be pulled in the next time the update is performed. It is also possible to update manually via the Settings dialog, select the Extension Manager from the System category and perform the update action, do the same for the Extension Repository.