For people struggling with Roon 2.0.25 on Linux with Bottles/Wine

Okay, so the most likely culprit is the lock file issue. It may be the file left over from the failed install.

First, try this: stop the service, delete the lock file, and restart. If this doesn’t work, it’s likely that Roon can’t create the lock file.

Thank you again, i will look into it when i am at home

1 Like

So I looked for the lock files and deleted them after stopping roonbridge service. Then i restarted the pc to be sure. The lock-files are recreated in ./tmp, but the warning also re-appeared. The endpoint is seen (outside wine, just as linux endpoint), I can select it and even start music but no sound, and playing stops after a few seconds. The journalctl still gives the warning arn: get lock file path: /tmp/.rnbhgem0- but this file does exist. So it appears to be something with permissions for accessing the dac, but before it just worked so no idea what has changed on the fedora/bazzite side. Thx anyway for thinking along!

Well, after a lot of searching and trying, the solution in my case resulted to be: in bottles I had to enforce alsa as standard audio output for all bottles. And I have music playing through roon in bottles on bazzite again.

I’ve just updated to Fedora 44 - I cannot get Roon to run at all. Must have spent a good 4 hours running though various things.

Anyone else come up against this?

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

1 Like

Hi all, has anyone managed to get Roon running on bottles 63.2? I am on a Ubuntu fork and install the Roon app from within Bottles. It installs fine, but when I want to start it, nothing happens…
I had it working before, but that was on a Fedora 43 system if I recall correctly…

Roon works for me with 63.2 on Ubuntu. If you used the built-in recipe to install Roon you may want to remove the start entry for Roon from the list though IIRC (should reveal another shortcut for Roon that works).

My current Roon bottle configuration
Arch: win64
CompatData: ''
Creation_Date: '2026-02-05 16:48:04.760737'
Custom_Path: false
DLL_Overrides:
    windows.media.mediacontrol: d
DXVK: dxvk-2.7.1-17-8ee652a
Environment: Application
Environment_Variables: {}
External_Programs:
    793d7992-644b-4ef6-90ac-b638b13aeaeb:
        arguments: ''
        auto_discovered: true
        executable: Roon.exe
        folder: /home/daniel/Games/Roon-(Productive)/drive_c/users/daniel/AppData/Local/Roon/Application
        icon: com.usebottles.bottles-program
        id: 793d7992-644b-4ef6-90ac-b638b13aeaeb
        name: Roon (Productive)
        path: C:\users\daniel\AppData\Local\Roon\Application\Roon.exe
Inherited_Environment_Variables:
- DBUS_SESSION_BUS_ADDRESS
- DISPLAY
- HOME
- LANG
- LC_ALL
- LC_CTYPE
- LC_MESSAGES
- PATH
- PULSE_SERVER
- TERM
- TZ
- USER
- WAYLAND_DISPLAY
- XAUTHORITY
- XDG_RUNTIME_DIR
Installed_Dependencies:
- arial32
- times32
- courie32
- mono
- gecko
- dotnetcoredesktop10
Language: sys
LatencyFleX: latencyflex-v0.1.1
Limit_System_Environment: true
NVAPI: dxvk-nvapi-v0.7.1
Name: Roon (Productive)
Parameters:
    custom_dpi: 96
    decorated: true
    discrete_gpu: false
    dxvk: true
    dxvk_nvapi: false
    fixme_logs: false
    fsr: false
    fsr_sharpening_strength: 2
    fullscreen_capture: false
    gamemode: false
    gamescope: false
    gamescope_borderless: false
    gamescope_custom_options: ''
    gamescope_fps: 0
    gamescope_fps_no_focus: 0
    gamescope_fullscreen: true
    gamescope_game_height: 0
    gamescope_game_width: 0
    gamescope_scaling: false
    gamescope_window_height: 0
    gamescope_window_width: 0
    latencyflex: false
    mangohud: false
    mangohud_display_on_game_start: true
    mouse_warp: true
    obsvkc: false
    pulseaudio_latency: false
    renderer: vulkan
    sandbox: false
    sync: fsync
    take_focus: false
    use_be_runtime: true
    use_eac_runtime: true
    use_runtime: false
    use_steam_runtime: false
    versioning_automatic: false
    versioning_compression: false
    versioning_exclusion_patterns: false
    virtual_desktop: false
    virtual_desktop_res: 1280x720
    vkbasalt: false
    vkd3d: true
    vmtouch: false
    vmtouch_cache_cwd: false
    wayland: false
    winebridge: false
Path: Roon-(Productive)
Registry_Rules: []
Runner: kron4ek-wine-11.9-amd64
RunnerPath: ''
Sandbox:
    share_net: false
    share_sound: false
State: 0
Uninstallers: {}
Update_Date: '2026-05-27 16:41:08.648842'
VKD3D: vkd3d-proton-3.0.1-1-34ab1ce
Versioning: false
Versioning_Exclusion_Patterns: []
Windows: win11
Winebridge: false
WorkingDir: ''
data: {}
run_in_terminal: false
session_arguments: ''

PS: This is not a fresh install but one that already worked before and kept working through various component (Wine, Bottles, Runners, etc. and Roon) updates.

I had to use Soda 9.0.1 and it worked again. I also use dkxv 2.7.1 (the base, not one with version numbers with dashes).

Do you have a solution for playback on Bazzite? I cannot get the Roon Bridge script to properly work.

I Used to use Squeezelite on Ubuntu but that is not an option for Bazzite.

*EDIT: Squeezelite does work if you layer in with rpm-ostree!

Since Bazzite uses a Fedora base, search the forum for workarounds. However, these may not work because, AFAIK, no one was using Fedora Silverblue.

Bottles com.usebottles.bottles 64.1 stable system

Nuc Haswell / Cachyos, select Roon under Install Programs. Had to uncheck DXVK on my dated hardware. Same works under Fedora 44.

I did a fresh bottle and now it works flawlessly again. Not sure why, I didn’t touch anything.
On TuxedoOS I have it running Bottles 64.1 fine with these now:

@q_dot make sure the Roon Bridge script is exectuable. After it is installed, you will have to do

sudo restorecon -rv /opt/RoonBridge

and then

sudo systemctl daemon-reload and sudo systemctl restart roonbridge.service

I was able to get roon bridge working on Fedora after that (Bazzite is Fedora-based as mjw says)

1 Like