Easier way to install Roon (Remote) on Linux: Bottles!

I’ve contributed Roon manifest for Bottle so now you can use Bottles for easier installation!
Steps:

  1. Install Bottles from Flathub.
  2. Open it, and press “+” button on the top right, or press that big “Create New Bottle” button.
  3. Type something for name (just go with Roon for simplicity’s sake), and click “Create”.
  4. Wait for it to be created.
  5. When it’s created, close the popup window, and press “>” button on your newly created bottle.
  6. Click “Install” Programs button.
  7. Scroll down a bit, and select Roon, since that’s what we’re looking for.
  8. Press “Start Installation”, wait for a while, and press next button when Roon installer ask for it. DO NOT FORGET TO UNCHECK “Start Roon” CHECKBOX and click finish.
  9. When it’s done, click “Show Programs” to dismiss the popup.
  10. For HiDPI displays, press vertical “…” button on Roon, click “Change Launch Options,” add -scalefactor=2 (or other number that looks good for your screen) in “Command Arguments” AFTER everything already there, like the screenshot, and click “Save.”
  11. (Optional) If you want it in your application menu/launcher/etc, press vertical “…” button on Roon, and click “Add Desktop Entry.”
  12. Press play button on Roon or use your application menu/launcher/etc if you followed step 11 and enjoy!
6 Likes

Awesome, thanks !! Exactly what I was looking for.
Does it run stable ? Have you noticed any limitations ?

It’s stable but for server/playback (remote) run native Linux ones for best experience.

I’ve got the server running on a headless Ubuntu server machine, but I needed the remote on my living room PC, which I’m migrating also to Linux and as far as I know there isn’t yet a Roon remote version for Linux.

Oops I meant bridge.

On my old gen 4 nuc got an error, some problem with the mesa drivers.
Works with DXVK disabled under settings.
There is a newer version soda-experimental_8.0, that one also fails.

That’s likely because your hardware is too old to support Vulkan. In that case, yes you should disable DXVK.

Hi, I followed the instructions and Roon is running. I can’t select any options however. After a while a message pops up I have not created any backup, but even that message can’t be closed. Any tips would be appreciated.

Update: I deleted the bottle, added a new one and choose sys-wine-10.0 instead of soda-9.0-1 and now it all seems to work.

Update 2: and it is broken again. Switching back to soda-9.0-1 did not help.

I tried this solution with high hopes on my Steam Deck but couldn’t get it to work. It’s the only machine where I haven’t managed to integrate my Roon system, and yet I’ve managed to force install or hack solutions on much older, obsolete or weirder hardware like a 2012 Kindle Touch, or an early 2000s CRT monitor via a Raspberry Pi..

Thanks, this worked perfectly for me!

Works for me with Release 1598 on Soda 9.0.

Make sure to use Soda 9 (or Wine 10.16) for Wine runtime.

Has anyone managed to make the remote work without the washed-out effect on wayland through bottles (without going through xwayland)?

Has anyone had an issue with the Bottle install not allowing them to log in? I can open the app just fine it seems but when I try to login it never redirects back to the roon app so I can’t move forward.

I’m on Fedora 43 (KDE) with Roon installed from the Bottles installer.

You have to use some other device for the first login.

Ah ok, I was able to get it logged in using my phone with the app but now I don’t see any audio devices and I have the RoonBridge app installed on my pc.

I suppose roon bridge does not work in your desktop session since it requires an exclusive allocation of your sound device which is in use by your desktop audio.

I use squeezelite on my desktop instead, also fedora 43.
Use this to start as systemd user service (.config/systemd/user/squeezelite.service). It connects squeezelite to pipewire, so it does not conflict with other sources. You have to enable squeezelite in roon.
There is also a script installed with the package, this might work ootb (/usr/lib/systemd/user/squeezelite.service).

My script

[Unit]
Description=Squeezelite headless streaming music client
Documentation=man:squeezelite.service(7)
Wants=sound.target
After=pipewire.service

[Service]
Type=exec
ExecStartPre=/usr/bin/mkdir -p .local/share/squeezelite
ExecStart=/usr/bin/squeezelite -o pipewire -N .local/share/squeezelite/player-name

[Install]
WantedBy=default.target

Or you can just use official Roon Bridge for Linux.

On which linux distro? On fedora after playing over roon bridge I have no sound from the browser.
Seems to work on cachyos, though.