Volumio 3 Roon Bridge install failure

New Volumio 3 install on Raspberry Pi 3b+. Roon bridge install fails. Did not see this error documented on the site. Below is the install log:

Downloading plugin at https://plugins.volumio.workers.dev/pluginsv2/downloadLatestStable/RoonBridge/volumio/buster/armhf
END DOWNLOAD: https://plugins.volumio.workers.dev/pluginsv2/downloadLatestStable/RoonBridge/volumio/buster/armhf
Creating install location
Unpacking plugin
Checking that the plugin is suitable for this version of Volumio The plugin can be used with this version of Volumio
Checking for duplicate plugin
Copying plugin to location
Installing necessary utilities
Installing Roon Bridge Dependencies
Downloading RoonBridge_linuxarmv7hf.tar.bz2 to /tmp/tmp.BusA4vk2hO/RoonBridge_linuxarmv7hf.tar.bz2
Unpacking RoonBridge_linuxarmv7hf.tar.bz2...
An error occured while decompressing RoonBridge_linuxarmv7hf.tar.bz2.
Exit Status: 2
Removing tmp directory..
An error occurred while installing the plugin Error
1 Like
1 Like

I downloaded the code from the volroon project. It also failed to install due to being unable to extract the compressed tarball RoonBridge_linuxarmv7hf.tar.bz2. To debug, I ran the install.sh using “bash -x”. The output is below.

Blockquote

sudo ./install.sh

  • echo ‘Installing volroon Dependencies’
    Installing volroon Dependencies
  • apt-get -qq update
  • apt-get -qqy install bzip2
    ++ uname -m
  • MACHINE_ARCH=armv7l
    +++ dirname ./install.sh
    ++ cd .
    ++ pwd -P
  • PLUGIN_DIR=/home/volumio/plugins/volroon
    ++ cat /home/volumio/plugins/volroon/package.json
    ++ jq -r .volumio_info.plugin_type
  • PLUGIN_CATEGORY=music_service
    ++ cat /home/volumio/plugins/volroon/package.json
    ++ jq -r .name
  • PACKAGE_NAME=volroon
    ++ echo volroon
    ++ tr ‘[A-Z]’ ‘[a-z]’
  • PACKAGE_NAME_LOWER=volroon
    ++ mktemp -d
  • TMPDIR=/tmp/tmp.8ToqvBeAi5
  • INSTALL_DIR=/data/plugins/music_service/volroon
  • trap exit_cleanup EXIT
  • case “$MACHINE_ARCH” in
  • ARCH=armv7hf
  • PACKAGE_FILE=RoonBridge_linuxarmv7hf.tar.bz2
  • PACKAGE_URL=http://download.roonlabs.com/builds/RoonBridge_linuxarmv7hf.tar.bz2
  • echo ‘Downloading RoonBridge_linuxarmv7hf.tar.bz2 to /tmp/tmp.8ToqvBeAi5/RoonBridge_linuxarmv7hf.tar.bz2’
    Downloading RoonBridge_linuxarmv7hf.tar.bz2 to /tmp/tmp.8ToqvBeAi5/RoonBridge_linuxarmv7hf.tar.bz2
    ++ curl --write-out ‘%{http_code}’ -sLfo /tmp/tmp.8ToqvBeAi5/RoonBridge_linuxarmv7hf.tar.bz2 http://download.roonlabs.com/builds/RoonBridge_linuxarmv7hf.tar.bz2
  • DL_STATUSCODE=200
  • R=0
  • ‘[’ 0 -ne 0 ‘]’
  • ‘[’ 200 -ne 200 ‘]’
  • echo ‘Unpacking RoonBridge_linuxarmv7hf.tar.bz2…’
    Unpacking RoonBridge_linuxarmv7hf.tar.bz2…
  • cd /tmp/tmp.8ToqvBeAi5
  • tar xf RoonBridge_linuxarmv7hf.tar.bz2
    tar: This does not look like a tar archive
    bzip2: (stdin) is not a bzip2 file.
    tar: Child returned status 2
    tar: Error is not recoverable: exiting now
  • R=2
  • ‘[’ 2 -ne 0 ‘]’
  • echo ‘An error occured while decompressing RoonBridge_linuxarmv7hf.tar.bz2.’
    An error occured while decompressing RoonBridge_linuxarmv7hf.tar.bz2.
  • exit 1
  • exit_cleanup
  • echo ‘Exit Status: 2’
    Exit Status: 2
  • ‘[’ 2 -eq 1 ‘]’
  • ‘[’ -d /tmp/tmp.8ToqvBeAi5 ‘]’
  • echo ‘Removing temp directory…’
    Removing temp directory…
  • rm -Rf /tmp/tmp.8ToqvBeAi5
  • echo plugininstallend
    plugininstallend

Blockquote

he’s saying that it’s not a bzip or a tar file and could not extract it but why i don’t get
it’s both :stuck_out_tongue: this not tar or bz it’s bs. :slight_smile:

Digging a bit, it appears the download URL should be https://download.roonlabs.com/builds/RoonBridge_linuxarmv7hf.tar.bz2 instead of http://download.roonlabs.com/builds/RoonBridge_linuxarmv7hf.tar.bz2.

the download code 200 is all is oke only the decompressing is where it flunks.
tried 7zip and it just extracts no problem…so it could be the extractor

Just edited my local copy of install.sh to change http to https and now the installation script succeeds.

sudo ./install.sh

  • echo ‘Installing volroon Dependencies’
    Installing volroon Dependencies
  • apt-get -qq update
  • apt-get -qqy install bzip2
    ++ uname -m
  • MACHINE_ARCH=armv7l
    +++ dirname ./install.sh
    ++ cd .
    ++ pwd -P
  • PLUGIN_DIR=/home/volumio/plugins/volroon
    ++ cat /home/volumio/plugins/volroon/package.json
    ++ jq -r .volumio_info.plugin_type
  • PLUGIN_CATEGORY=music_service
    ++ cat /home/volumio/plugins/volroon/package.json
    ++ jq -r .name
  • PACKAGE_NAME=volroon
    ++ echo volroon
    ++ tr ‘[A-Z]’ ‘[a-z]’
  • PACKAGE_NAME_LOWER=volroon
    ++ mktemp -d
  • TMPDIR=/tmp/tmp.GAdZgJLFXJ
  • INSTALL_DIR=/data/plugins/music_service/volroon
  • trap exit_cleanup EXIT
  • case “$MACHINE_ARCH” in
  • ARCH=armv7hf
  • PACKAGE_FILE=RoonBridge_linuxarmv7hf.tar.bz2
  • PACKAGE_URL=https://download.roonlabs.com/builds/RoonBridge_linuxarmv7hf.tar.bz2
  • echo ‘Downloading RoonBridge_linuxarmv7hf.tar.bz2 to /tmp/tmp.GAdZgJLFXJ/RoonBridge_linuxarmv7hf.tar.bz2’
    Downloading RoonBridge_linuxarmv7hf.tar.bz2 to /tmp/tmp.GAdZgJLFXJ/RoonBridge_linuxarmv7hf.tar.bz2
    ++ curl --write-out ‘%{http_code}’ -sLfo /tmp/tmp.GAdZgJLFXJ/RoonBridge_linuxarmv7hf.tar.bz2 https://download.roonlabs.com/builds/RoonBridge_linuxarmv7hf.tar.bz2
  • DL_STATUSCODE=200
  • R=0
  • ‘[’ 0 -ne 0 ‘]’
  • ‘[’ 200 -ne 200 ‘]’
  • echo ‘Unpacking RoonBridge_linuxarmv7hf.tar.bz2…’
    Unpacking RoonBridge_linuxarmv7hf.tar.bz2…
  • cd /tmp/tmp.GAdZgJLFXJ
  • tar xf RoonBridge_linuxarmv7hf.tar.bz2
  • R=0
  • ‘[’ 0 -ne 0 ‘]’
  • echo ‘Moving Files into plugin directory.’
    Moving Files into plugin directory.
  • mv /tmp/tmp.GAdZgJLFXJ/RoonBridge /data/plugins/music_service/volroon
  • rm -Rf /tmp/tmp.GAdZgJLFXJ
  • echo ‘Creating service file.’
    Creating service file.
  • SERVICE_FILE=/lib/systemd/system/roonbridge.service
  • cat
  • chown -R volumio:volumio /data/plugins/music_service/volroon
  • exit_cleanup
  • echo ‘Exit Status: 0’
    Exit Status: 0
  • ‘[’ 0 -eq 1 ‘]’
  • ‘[’ -d /tmp/tmp.GAdZgJLFXJ ‘]’
  • echo plugininstallend
    plugininstallend

i was reading about the error code but if this fixed it nice :slight_smile:
hope that the creator could fix it in the install.
i gave the link to your posts. with fix for install.sh

I’ll write up a pull request for the github project. Should be a simple fix.

tnx for sorting it out :+1:

Thanks for the quick debug and fix. I’ll update mine. The install.sh is verbatim from the original roon bridge plugin so if that one stopped working then mine wasn’t going to pull a rabbit out of the hat :wink:

1 Like

we got a fast reply :slight_smile: he will fix it :slight_smile: :+1:

Well, that fixed the download and tar extraction. But the RoonBridge service won’t start. It appears the tar file layout changed, so the service configuration is broken. Sigh.

The good news is the Roon provided Easy Installer script does work. It’s just not manageable under the Volumio control. So some additional updates to the Volroon install.sh script are required to fix the service configurations.

if you already know the way …send it to charliesjs he will be happy with it :slight_smile:

What errors are you getting now that the download has been fixed? I will look into this later today, but it seems then that something small has changed on Roon’s side if these things are happening to you. I have debugged volroon before with the roon bridge service and it doesn’t matter how the roon bridge service actually gets installed, it is still called with systemctl. If that isn’t working then something else has gone wrong on your installation. Which version of Volumio are you using?

Just a follow on to this before I go and make changes etc: Before you tried my volroon plugin, did you ever manage to install the original Roon Bridge plugin at all? I ask because I know that I have had problems with it before where it doesn’t necessarily clean-up properly after a failed install and/or uninstall properly because of an issue with permissions. I had to get stuck in and remove all the leftovers manually.

I’m using the latest build of Volumio 3.378. As I posted above, there were no errors thrown by the Volroon install.sh script. However, the Roon Bridge service never appeared. I tried rebooting, but still the service was not up. I did not have time to troubleshoot further, so I ran the uninstall.sh script and reinstalled it using Roon’s Easy Install script. That’s how got the service up. However, I cannot stop or start service from the plugin control in Volumio. Seem’s that the Volroon installation of the new tarball may not be accounting for some path changes, but that’s just a guess with the little amount of time I’ve looked into it.

Thanks for all your work on this.

Okay so I uninstalled volroon completely from my system and re-ran the plugin installer and hit the same error you did initially (the http vs https problem), I fixed that and it installed successfully. The RoonBridge service also successfully started up. I double checked with “systemctl status roonbridge” and everything is working. I don’t seem to be able to replicate your issue.

What I suggest is run the uninstaller for volroon and then manually delete /data/volumio/plugins/music_service/volroon if it’s there (also check if RoonBridge is there and nuke that too). Do the same for /data/configuration/music_service/volroon (and RoonBridge if you find it). And lastly, if you find it, delete /lib/systemd/system/roonbridge.service. Then run the volroon installer from scratch (Ensuring you still have the https fix in there).

Hang on. Are you installing volroon by just running the install.sh script or are you installing it by running “volumio plugin install” ?

1 Like

You da man! I followed your advice after uninstalling Roonbridge. The install.sh script installation was clean and I was able to start and stop the service with the Volumio plugin control. I did not try to run the volumio plugin install. I can try that if you like.