Read the statement by Michael Teeuw here.
MMM-CalDAV
-
[ERROR] Error: EACCES: permission denied, open ‘/opt/magic_mirror/modules/MMM-CalDAV/service/.SYNOLOGY_Simon.ics’
I’m not familiar with the Docker setting. Anyway, it seems to be a permission issue. The docker container creation and execution might be performed by different accounts. Or you may need proper permission for those files or directories. However, I have no idea of Docker environment, so that’s all I can say.
-
[ERROR] Error: EACCES: permission denied, open ‘/opt/magic_mirror/modules/MMM-CalDAV/service/.SYNOLOGY_Simon.ics’
how did you start the container? Please provide full
docker run ...command or compose file. -
Hello, I am new and wondering what do you name the file env.example to? Second What lines need to be added to the /config/config.js file?
Thanks -
@danny607 the env file name is typically
.envnote the leading dot
the linux file systems do not have a flag for hidden, so by convention anything with a leading . (dot) will not be shown in file lists unless explicitly requested
-
so looking at the code, this module will write out the constructed ICAL format data to
const filePath = path.resolve(__dirname, 'service', '.' + fileName)notice the dot… in linux =by convention, file/folder names that start with dot are not shown unless explicitly requested… (making them hidden ‘most’ of the time
SO, the code above is trying to USE a directory ‘service’ (part of this module repo)
in THIS module folder… but write to it…@karsten13 is the docker volume for where modules are located mapped read/write?? (the compose file doesn’t say)
-
@sdetweil said in MMM-CalDAV:
@karsten13 is the docker volume for where modules are located mapped read/write?? (the compose file doesn’t say)
see docs
rw: Read and write access. This is the default if none is specified. -
@karsten13 thats what I thought
@caw can you ssh logon to your synology and execute a docker command
docker inspect magicmirrorscroll up to look at the mounts section
(this is from a different container, as I don’t have one running MM)Mounts": [ { "Type": "volume", "Name": "94f89b1076c681a8dd32a7863d7a867e2077849f0fc53091062aae3797433919", "Source": "/var/lib/docker/volumes/94f89b1076c681a8dd32a7863d7a867e2077849f0fc53091062aae3797433919/_data", "Destination": "/config", <---- check for /opt/magic_mirror/modules "Driver": "local", "Mode": "", "RW": true, <------------ check this , should be true "Propagation": "" },also, how (from where, as what userid?) did you git clone the module, and npm install?
another docker command
docker exec magicmirror ls /opt/magic_mirror/modules -laF
-
i used:
docker run -d --user root --name magicmirror
-p 8036:8080
-v /volume1/docker/magicmirror/config:/opt/magic_mirror/config
-v /volume1/docker/magicmirror/modules:/opt/magic_mirror/modules
-v /volume1/docker/magicmirror/customcss:/opt/magic_mirror/customcss
-e TZ=Europe/Berlin
–restart always
registry.gitlab.com/khassel/magicmirror -
@caw from synology ssh terminal window do
ls /volume1/docker/magicmirror -laF -
-
@caw ok now need to look inside modules
ls -laF /volume1/magicmirror/modules
and in the module folder
ls -laF /volume1/magicmirror/modules/MMM-CalDAVwe did not check INSIDE the MMM-CalDAV/service folder to see if there is an existing file that might be overwritten (with the wrong permissions)
-
it´s in the /volume1/docker/magicmirror/modules
-
@caw ok, the docker container is running as user/group 1000/1000
so Simon and users is neither of those
and linux permissions are a set of values, 3 flags per
user – this user number/name (Simon)
group --if the user is part of the named group (users)
other – permissions for any user NOT in the two choices abovethe permissions shown
user = rwx // user can read( r) write(w) and execute(x)
group = r-x // group can read( r) and execute(x)
other = r-x // all others can read ( r) and execute(x)or 755
if you fix the permissions to 757
user rwx
group r-x
other rwxor 775 (probably better, not allow ‘any’ other…)
user rwx
group rwx
other r-xthen other (1000) will be allowed to write to the folder (service folder)
-
so the permission error is gone but the *ics is still not saved
LOG attached
-
@caw can you show all the calDAV messages…
last says fetching
but the prior says not found… -
@caw
I cannot say anything without the full log. But at the first execution, ics would not be written yet, (calendar module is so fast than CalDAV’s connection and parsing) so just wait for the next cycle to finish serving, or just stop and rerun MM. From the second execution, ics will be served.

-
@MMRIZE
hi i´ve got it- it was the firewall blocking and the ics files are created and a test is shownTHANK YOU VERY MUCH!!! :)
maybe you can add the workaround for a tutorial for any Synology User :) -
@caw add the workaround?
-
@sdetweil i think some of the Synology users have the same issue with permissions an their nas
-
@caw this is really a docker on synology implementation issue. you created files needed by the docker container using an outside the container userid.
many modules use their folder as a cache storage location
Hello! It looks like you're interested in this conversation, but you don't have an account yet.
Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.
With your input, this post could be even better 💗
Register Login


