Skip to content
Jan Koudijs edited this page Jun 26, 2021 · 10 revisions

Roon Extension Manager

Introduction

With the release of Roon 1.3 (build 192) the Roon API became available to developers, they can use it for the development of Roon Extensions. The 1.3 Release Notes state the following:


Roon API (BETA)

The Roon API will allow developers to enable:
  • Custom volume controls even if the device is not Roon Ready
  • Custom convenience switching/standby can be used even for devices not Roon Ready
  • Display of now-playing data and transport controls
  • Lightweight hierarchical browsing
  • Plugin settings from Roon UI

Roon’s API is still in a pretty early state, but 1.3 contains support for these features and is suitable for experimentation.

We have several exciting integrations planned over the next few months using the API as a jumping off point, and look forward to expanding and improving the Roon API with your feedback. Please try it out and let us know!


Since that time multiple developers stepped in and released their extensions to the Roon Community. The central place for announcements and discussion is at the Roon API subforum.

The biggest issue users ran into is the installation of the extensions. That led to the idea to come up with a repository of community developed extensions and a matching installer.

What's the goal?

The goal of the project is to make it (much) easier for developers to distribute their extensions and for users to put them into use.

The project consists out of multiple parts, the main ones being:

The Extension Repository

The Repository contains the community developed extensions. There are extensions for volume and source control on specific devices, extensions that add playback modes and extensions that expose Roon functionality via web interfaces. New extensions will be added when they arrive, if the author agrees on inclusion.

The Extension Manager

The Extension Manager is a special extension that allows for the installation of the extensions included in the repository. Via ☰→Settings→Extensions within Roon the repository can be viewed and an extension can be selected to perform a certain action on it.

Possible actions are:

  • Install
  • Update
  • Uninstall
  • Start
  • Restart
  • Stop

The Extension Manager Settings dialog:
Roon Extension Manager


Head over to the Installation page to learn about supported systems and to get detailed instructions on installation and set up.

The Extension Generator

The Extension Generator is a tool that extension developers can use to create multi-architecture Docker images for their extensions. Usage instructions can be found in the README file.

@ Roon Labs Community

https://community.roonlabs.com/c/tinkering/roonapi

https://community.roonlabs.com/t/roon-extension-manager/161624