fat-tire / resolve

Container scripts to build and run DaVinci Resolve [Studio] for Linux using Docker or Podman
MIT License
193 stars 23 forks source link

bind source path does not exist: /pulse/native #2

Closed bcnx closed 2 years ago

bcnx commented 2 years ago

Hi,

I am testing this on Linux Mint 20.3. When running ./resolve.sh, I get:

docker: Error response from daemon: invalid mount config for type "bind": bind source path does not exist: /pulse/native

resolve.sh contains:

--mount type=bind,source=${XDG_RUNTIME_DIR}/pulse/native,target=${XDG_RUNTIME_DIR}/pulse/native \

so I guess the XDG_RUNTIME_DIR variable is not filled in . How to fix this?

Cheers BC

bcnx commented 2 years ago

This is how a temporarely fixed it: I edited resolve.conf and replaced ${XDG_RUNTIME_DIR} with /run/user/1000 (I'm using my first user which has an ID of 1000), and then resolve.sh seems to start the container,

BC

fat-tire commented 2 years ago

Yes in Ubuntu 21.10 XDG_RUNTIME_DIR is set to /run/usr/1000 -- I thought this was the correct way to set it so that it will work for any UID. This seems to be the FreeDesktop standard. Do you happen to know if it's set to something else in Mint? If so, it could detect which linux it's using-- or maybe the solution is simply to set it to

    /run/usr/`id -u` 

You have any thoughts on this?

BTW thanks for sending these issues!

fat-tire commented 2 years ago

Ah, I see there is a bug filed for Mint related to this. Looks like a check for mint would be the solution. Is this something you feel comfortable doing? I think a good way to check might be to look at /etc/os-release. I think this is beter than lsb_release -d as CentOS for example doesn't support it by default.

fat-tire commented 2 years ago

I think adding something like this would work. Let me know, and if so, I can add it.

 if [ -z ${XDG_RUNTIME_DIR+x} ]; then export XDG_RUNTIME_DIR=/run/user/`id -u`; fi

Thanks in advance!

fat-tire commented 2 years ago

Well, I figured I'd add it. Closing.