<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Sync private iCloud calendar with MagicMirror]]></title><description><![CDATA[<p dir="auto">A while ago, I posted a thread for <a href="https://forum.magicmirror.builders/topic/1980/synchronizing-private-icloud-calendar-with-magicmirror-a-workaround">syncing an iCloud calendar with MagicMirror</a>. Unfortunately this solution was just a workaround and you needed to use a Mac which is also synced with your calendar. <strong>It was far from being a nice solution.</strong></p>
<p dir="auto">I just found out that the tool I was using (<code>vdirsyncer</code>) also supports syncing with iCloud. I wrote a detailed walkthrough for this.</p>
<p dir="auto">I’ll re-post this part from the original post:</p>
<h4>Why doing it this way?</h4>
<p dir="auto">I don’t want my calendar to be available via a public URL like mentioned in the <a href="https://forum.magicmirror.builders/topic/595/calender-module-icloud-calender">iCloud calendar thread</a>. Even though the public sharing address is quite long, web crawlers can still find them and your private life is publicly available. I just don’t like that scenario. So I wanted a solution that uses encryption and authentication against all services.</p>
<hr />
<p dir="auto">So here’s a really nice solution to sync the mirror with iCloud (privately):</p>
<h1>Get app-specific password from iCloud</h1>
<p dir="auto"><code>vdirsyncer</code> needs an app-specific password to connect to iCloud. You can create one in your AppleID settings like descibed in Apple’s support document for using app-specific passwords: <a href="https://support.apple.com/en-us/HT204397" target="_blank" rel="noopener noreferrer nofollow ugc">https://support.apple.com/en-us/HT204397</a></p>
<p dir="auto">Create one and write it down for later.</p>
<h1>Install and set up <code>vdirsyncer</code></h1>
<p dir="auto"><code>vdirsyncer</code> needs to be installed on the machine that hosts your mirror software. On my raspbian system, <code>vdirsyncer</code> was not available via <code>apt</code>. So I hat to install it via <code>pip</code>.</p>
<h2>Installation of <code>vdirsyncer</code></h2>
<p dir="auto">Now we get <code>vdirsyncer</code> and it’s dependencies:</p>
<pre><code class="language-Bash">sudo apt-get install libxml2 libxslt1.1 zlib1g python3
pip3 install --user --ignore-installed vdirsyncer
</code></pre>
<p dir="auto">(This is the quick and easy way, it should suffice for most users. For a more clean way to install it, please refer to <a href="https://vdirsyncer.pimutils.org/en/stable/installation.html#the-clean-hard-way" target="_blank" rel="noopener noreferrer nofollow ugc">https://vdirsyncer.pimutils.org/en/stable/installation.html#the-clean-hard-way</a>)</p>
<p dir="auto">Now, change the first line of your <code>vdirsyncer</code> executable to use only <code>python3</code>:</p>
<pre><code class="language-Bash">nano ~/.local/bin/vdirsyncer
</code></pre>
<p dir="auto">And change the first line to <code>#!/usr/bin/python3</code></p>
<p dir="auto">I needed to create a symlink to the vdirsyncer executable. So we’re doing this:</p>
<pre><code class="language-Bash">sudo ln -s /home/pi/.local/bin/vdirsyncer /usr/bin/vdirsyncer
</code></pre>
<p dir="auto">Now you should be able to use the <code>vdirsyncer</code> command from the command line.</p>
<h2>Create a folder for the calendar file</h2>
<p dir="auto">As mentioned in <a href="https://forum.magicmirror.builders/topic/467/calendar-ics-file-from-local-path/7">this post</a>, we can put the calendar file into the modules folder to access it via the calendar module. So we create a folder for our calendars:</p>
<pre><code class="language-Bash">mkdir /home/pi/MagicMirror/modules/calendars
</code></pre>
<h2>Configure <code>vdirsyncer</code></h2>
<p dir="auto">Create a config file in <code>~/.vdirsyncer/config</code> and open it with <code>nano</code>:</p>
<pre><code class="language-Bash">mkdir ~/.vdirsyncer
touch ~/.vdirsyncer/config
nano ~/.vdirsyncer/config
</code></pre>
<p dir="auto">Here’s an example configuration to use with iCloud. Just copy it into your opened file in <code>nano</code> and enter your iCloud credentials.</p>
<pre><code class="language-ini"># vdirsyncer configuration for MagicMirror.
#
# Move it to ~/.vdirsyncer/config or ~/.config/vdirsyncer/config and edit it.
# Run `vdirsyncer --help` for CLI usage.
#
# Optional parameters are commented out.
# This file doesn't document all available parameters, see
# http://vdirsyncer.pimutils.org/ for the rest of them.

[general]
# A folder where vdirsyncer can store some metadata about each pair.
status_path = "~/.vdirsyncer/status/"

# CALDAV Sync
[pair iCloud_to_MagicMirror]
a = "Mirror"
b = "iCloud"
collections = ["HERE-GOES-THE-UUID-OF-THE-CALENDAR-YOU-WANT-TO-SYNC"]

# Calendars also have a color property
metadata = ["displayname", "color"]

[storage Mirror]
# We need a single .ics file for use with the mirror (Attention! This is really slow on big amounts of events.)
type = "singlefile"
# We'll put the calendar file to a readable location for the calendar module
path = "/home/pi/MagicMirror/modules/calendars/%s.ics"

[storage iCloud]
type = "caldav"
url = "https://caldav.icloud.com/"
# Authentication credentials
username = "YOUR-ICLOUD-EMAIL-ADDRESS"
password = "HERE-GOES-YOUR-APP-SPECIFIC-ICLOUD-PASSWORD"
# We only want to sync in the direction TO the mirror, so we make iCloud readonly
read_only = true
# We only want to sync events
item_types = ["VEVENT"]
# We need to keep the number of events low, so we'll just sync the next month
# Adjust this to your needs
start_date = "datetime.now() - timedelta(days=1)"
end_date = "datetime.now() + timedelta(days=30)"
</code></pre>
<p dir="auto">Make sure, you use the <code>start_date</code> and <code>end_date</code> parameters to keep the number of calendar events <em>low</em>. I tried syncing with 700+ events and it is <strong>really really sloooooow</strong>! Especially when using the <code>singlefile</code> option for the mirror.</p>
<p dir="auto">Add your iCloud credentials like shown in the config file.</p>
<h2>Running <code>vdirsyncer</code> as a systemd.timer for automatic sync</h2>
<p dir="auto">Install the <code>vdirsyncer.service</code> and <code>vdirsyncer.timer</code> files to <code>/etc/systemd/user</code>:</p>
<pre><code class="language-Bash">curl https://raw.githubusercontent.com/pimutils/vdirsyncer/master/contrib/vdirsyncer.service | sudo tee /etc/systemd/user/vdirsyncer.service
curl https://raw.githubusercontent.com/pimutils/vdirsyncer/master/contrib/vdirsyncer.timer | sudo tee /etc/systemd/user/vdirsyncer.timer
</code></pre>
<p dir="auto">By default, the syncer is started every 15 minutes. You can change it by configuring the times in the <code>vdirsyncer.timer</code> file:</p>
<pre><code class="language-Bash">sudo nano /etc/systemd/user/vdirsyncer.timer
</code></pre>
<p dir="auto">Now we activate the timer in systemd:</p>
<pre><code class="language-Bash">systemctl --user enable vdirsyncer.timer
</code></pre>
<h2>Let <code>vdirsyncer</code> discover the collections and do the inital sync</h2>
<p dir="auto">Now, we have to find out, which collection we want to sync. Let <code>vdirsyncer</code> discover everything:</p>
<pre><code class="language-Bash">vdirsyncer discover
</code></pre>
<p dir="auto">You should get an output like this (depending on the number of calendars you have in iCloud):</p>
<pre><code>Discovering collections for pair iCloud_to_MagicMirror
Mirror:
iCloud:
  - "25CB285C-E163-4E0E-B420-C3FB469B7C00" ("Calendar 1")
  - "9221FEE8-E8B4-4D07-9402-8638529919EC" ("Calendar 2")
  - "953A5477-E405-4ED6-A5C3-473444EACC95" ("Calendar 3")
warning: No collection "HERE-GOES-THE-UUID-OF-THE-CALENDAR-YOU-WANT-TO-SYNC" found for storage Mirror.
Should vdirsyncer attempt to create it? [y/N]:
</code></pre>
<p dir="auto">Choose <code>N</code> for now and press <code>return</code>.<br />
Now replace the <code>HERE-GOES-THE-UUID-OF-THE-CALENDAR-YOU-WANT-TO-SYNC</code> in the config with the UUID of the calendar you want to sync.<br />
We assume, we want to sync “Calendar 2”.</p>
<p dir="auto">So line 19 of your config should look like this:</p>
<pre><code class="language-ini">collections = ["9221FEE8-E8B4-4D07-9402-8638529919EC"]
</code></pre>
<p dir="auto">Now, we can run the discover again and make the first sync:</p>
<pre><code class="language-Bash">vdirsyncer discover
</code></pre>
<p dir="auto">You should get something loke this:</p>
<pre><code>Discovering collections for pair iCloud_to_MagicMirror
Mirror:
iCloud:
  - "25CB285C-E163-4E0E-B420-C3FB469B7C00" ("Calendar 1")
  - "9221FEE8-E8B4-4D07-9402-8638529919EC" ("Calendar 2")
  - "953A5477-E405-4ED6-A5C3-473444EACC95" ("Calendar 3")
warning: No collection "9221FEE8-E8B4-4D07-9402-8638529919EC" found for storage Mirror.
Should vdirsyncer attempt to create it? [y/N]:
</code></pre>
<p dir="auto">Choose <code>y</code> and press <code>enter</code>. Now we can start the sync with:</p>
<pre><code class="language-Bash">vdirsyncer sync
</code></pre>
<p dir="auto">You should find a single calendar file in <code>/home/pi/MagicMirror/modules/calendars/</code> with the UUID of your calendar as filename like <code>221FEE8-E8B4-4D07-9402-8638529919EC.ics</code> in this example.</p>
<h2>Add the calendar file to the calendar module of the mirror</h2>
<p dir="auto">Now, we just have to add the URL to the calendar file to our calendar module of the mirror like this:</p>
<pre><code class="language-JavaScript">{
    module: 'calendar',
    position: 'top_left',   // This can be any of the regions. Best results in left or right regions.
    config: {
        maximumNumberOfDays: 10,
        maximumEntries: 7,
        calendars: [
                {
                        url: 'http://localhost:8080/modules/calendars/221FEE8-E8B4-4D07-9402-8638529919EC.ics',
                        symbol: 'calendar'
                }
        ]
    }
},
</code></pre>
<p dir="auto">If everything went well, your MagicMirror is now automatically syncing your iCloud calendar with it’s calendar module :)</p>
]]></description><link>https://forum.magicmirror.builders/topic/5327/sync-private-icloud-calendar-with-magicmirror</link><generator>RSS for Node</generator><lastBuildDate>Sun, 12 Apr 2026 02:47:42 GMT</lastBuildDate><atom:link href="https://forum.magicmirror.builders/topic/5327.rss" rel="self" type="application/rss+xml"/><pubDate>Sat, 21 Oct 2017 15:31:57 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Sync private iCloud calendar with MagicMirror on Mon, 26 May 2025 11:51:35 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/nwonnink" aria-label="Profile: nwonnink">@<bdi>nwonnink</bdi></a> this topic is old, but seems pretty comprehensive</p>
<p dir="auto">you have to setup some mechanism to run the sync on a schedule<br />
<a href="https://forum.magicmirror.builders/topic/5327/sync-private-icloud-calendar-with-magicmirror">https://forum.magicmirror.builders/topic/5327/sync-private-icloud-calendar-with-magicmirror</a></p>
]]></description><link>https://forum.magicmirror.builders/post/126741</link><guid isPermaLink="true">https://forum.magicmirror.builders/post/126741</guid><dc:creator><![CDATA[sdetweil]]></dc:creator><pubDate>Mon, 26 May 2025 11:51:35 GMT</pubDate></item><item><title><![CDATA[Reply to Sync private iCloud calendar with MagicMirror on Mon, 26 May 2025 11:32:09 GMT]]></title><description><![CDATA[<p dir="auto">Hi All,</p>
<p dir="auto">I have set it up like above, my Icloud agenda is shown in the Magicmirror but it does not synchronize also not after the minutes set?<br />
Also after vdirsyncer sync command it doesnt update directly on the Magicmirror only when i stop and start the services again.<br />
Anybody knows what it could be?<br />
I only had a fault during setup the Symbolic Link. The error message was that the file already Exist.<br />
Thank you in advanced,</p>
]]></description><link>https://forum.magicmirror.builders/post/126740</link><guid isPermaLink="true">https://forum.magicmirror.builders/post/126740</guid><dc:creator><![CDATA[nwonnink]]></dc:creator><pubDate>Mon, 26 May 2025 11:32:09 GMT</pubDate></item><item><title><![CDATA[Reply to Sync private iCloud calendar with MagicMirror on Sat, 05 Apr 2025 15:00:43 GMT]]></title><description><![CDATA[<p dir="auto">Hey - this script with vdirsyncer was working for years without any issues - recently i obersverd that my meetings are not shown any more - so i went to the console and entered “vdirsyncer discover” - and i am getting this error:</p>
<p dir="auto">warning: Failed to discover collections for iCloud, use <code>-vdebug</code> to see the full traceback.<br />
error: Unknown error occurred: 401, message=‘Unauthorized’, url=URL(‘<a href="https://caldav.icloud.com/.well-known/caldav" target="_blank" rel="noopener noreferrer nofollow ugc">https://caldav.icloud.com/.well-known/caldav</a>’)</p>
<p dir="auto">I did check the iCloud API Keys - they are still there.<br />
Is anyone having the same issue? Does anyone know how to fix it?</p>
]]></description><link>https://forum.magicmirror.builders/post/125618</link><guid isPermaLink="true">https://forum.magicmirror.builders/post/125618</guid><dc:creator><![CDATA[bobbythemoh]]></dc:creator><pubDate>Sat, 05 Apr 2025 15:00:43 GMT</pubDate></item><item><title><![CDATA[Reply to Sync private iCloud calendar with MagicMirror on Tue, 27 Aug 2024 16:30:23 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/sdetweil" aria-label="Profile: sdetweil">@<bdi>sdetweil</bdi></a> Up and running, thank you so very much!</p>
]]></description><link>https://forum.magicmirror.builders/post/119362</link><guid isPermaLink="true">https://forum.magicmirror.builders/post/119362</guid><dc:creator><![CDATA[aceahspades]]></dc:creator><pubDate>Tue, 27 Aug 2024 16:30:23 GMT</pubDate></item><item><title><![CDATA[Reply to Sync private iCloud calendar with MagicMirror on Tue, 27 Aug 2024 15:51:38 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/aceahspades" aria-label="Profile: aceahspades">@<bdi>aceahspades</bdi></a> is the userid  you are logged on as</p>
<p dir="auto">pi??</p>
<p dir="auto">if not you should change that string the /user/xxxxx</p>
<p dir="auto">where xxxxx is your logged on username</p>
]]></description><link>https://forum.magicmirror.builders/post/119361</link><guid isPermaLink="true">https://forum.magicmirror.builders/post/119361</guid><dc:creator><![CDATA[sdetweil]]></dc:creator><pubDate>Tue, 27 Aug 2024 15:51:38 GMT</pubDate></item><item><title><![CDATA[Reply to Sync private iCloud calendar with MagicMirror on Tue, 27 Aug 2024 15:23:32 GMT]]></title><description><![CDATA[<p dir="auto">Hello! I can get to the point where I update my collections, but when I run the discover feature again and enter y + enter I get this error message</p>
<p dir="auto">error: Unknown error occurred: [Errno 13] Permission denied: ‘/home/pi’<br />
error: Use <code>-vdebug</code> to see the full traceback.</p>
<p dir="auto">Is there a fix for this?</p>
]]></description><link>https://forum.magicmirror.builders/post/119360</link><guid isPermaLink="true">https://forum.magicmirror.builders/post/119360</guid><dc:creator><![CDATA[aceahspades]]></dc:creator><pubDate>Tue, 27 Aug 2024 15:23:32 GMT</pubDate></item><item><title><![CDATA[Reply to Sync private iCloud calendar with MagicMirror on Thu, 22 Aug 2024 04:52:20 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/gailby" aria-label="Profile: Gailby">@<bdi>Gailby</bdi></a> said in <a href="/post/34189">Sync private iCloud calendar with MagicMirror</a>:</p>
<blockquote>
<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/gailby" aria-label="Profile: Gailby">@<bdi>Gailby</bdi></a> <a class="plugin-mentions-user plugin-mentions-a" href="/user/ganther" aria-label="Profile: ganther">@<bdi>ganther</bdi></a> <a class="plugin-mentions-user plugin-mentions-a" href="/user/beh" aria-label="Profile: Beh">@<bdi>Beh</bdi></a> the ics files doesn’t seem to sync in Calendars… all files are empty. Have anyone resolved this?</p>
</blockquote>
<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/ganther" aria-label="Profile: ganther">@<bdi>ganther</bdi></a> said in <a href="/post/34078">Sync private iCloud calendar with MagicMirror</a>:</p>
<blockquote>
<p dir="auto">Hi there,<br />
i followed the instructions, my calendars are shown in discovery.<br />
I copied the UUID and it starts syncing, but the saved files are 0kb.<br />
I tried several calendars and checked the UUID’s but can’t find any mistake?</p>
<p dir="auto">any ideas?<br />
thanks!!</p>
</blockquote>
<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/ganther" aria-label="Profile: ganther">@<bdi>ganther</bdi></a> said in <a href="/post/34338">Sync private iCloud calendar with MagicMirror</a>:</p>
<blockquote>
<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/maestro82" aria-label="Profile: maestro82">@<bdi>maestro82</bdi></a><br />
Did you check your calendar-url in conf/config.js?</p>
<p dir="auto">My calendar is running now correctly. Don‘t know why but now my ics-file isn‘t empty anymore.</p>
</blockquote>
<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/ggfuzzy" aria-label="Profile: ggfuzzy">@<bdi>ggfuzzy</bdi></a> said in <a href="/post/91222">Sync private iCloud calendar with MagicMirror</a>:</p>
<blockquote>
<p dir="auto">Went through all the steps in the tutorial (including the modification to set the .service file to point to where vdirsyncer really lives [Thanks <a class="plugin-mentions-user plugin-mentions-a" href="/user/beh" aria-label="Profile: Beh">@<bdi>Beh</bdi></a> !]). Everything works, except that my .ics files are empty (0 length).  I saw a reference to this early in the forum comments, but the poster said they eventually started working with no reason for the change. Anyone have any ideas?</p>
</blockquote>
<p dir="auto">I’m getting this same thing. The .ics files are created, but they’re empty. Everything up to there is working. The iCloud credentials must be correct as it’s talking to me and I can see the names and uuids of the remote calendars when I use “vdirsync discover”. I just don’t get any events into the local files with “vdirsync sync”.</p>
<p dir="auto">I’m aware this is more a vdirsync issue than MagicMirror, but did any of you folks having this problem ever figure it out?</p>
]]></description><link>https://forum.magicmirror.builders/post/119279</link><guid isPermaLink="true">https://forum.magicmirror.builders/post/119279</guid><dc:creator><![CDATA[raisins]]></dc:creator><pubDate>Thu, 22 Aug 2024 04:52:20 GMT</pubDate></item><item><title><![CDATA[Reply to Sync private iCloud calendar with MagicMirror on Sun, 25 Feb 2024 10:29:01 GMT]]></title><description><![CDATA[<p dir="auto">The problem with not updating looks like it’s related to one of my calendars not having any entries in the requested timescale.  If all calendars have entries then they sync however if one (in my case the last one) has no entries then there are no updates. Very strange.</p>
]]></description><link>https://forum.magicmirror.builders/post/115898</link><guid isPermaLink="true">https://forum.magicmirror.builders/post/115898</guid><dc:creator><![CDATA[JamesScreech]]></dc:creator><pubDate>Sun, 25 Feb 2024 10:29:01 GMT</pubDate></item><item><title><![CDATA[Reply to Sync private iCloud calendar with MagicMirror on Sat, 17 Feb 2024 16:36:01 GMT]]></title><description><![CDATA[<p dir="auto">Thanks for the detailed description, I’ve done this and it works most of the time, however one of my calendars is not updating.<br />
I know very little about Pi’s and am new to Linux it general, are there any suggestions on how to find issues?</p>
]]></description><link>https://forum.magicmirror.builders/post/115664</link><guid isPermaLink="true">https://forum.magicmirror.builders/post/115664</guid><dc:creator><![CDATA[JamesScreech]]></dc:creator><pubDate>Sat, 17 Feb 2024 16:36:01 GMT</pubDate></item><item><title><![CDATA[Reply to Sync private iCloud calendar with MagicMirror on Mon, 08 Jan 2024 07:54:21 GMT]]></title><description><![CDATA[<p dir="auto">Hi <a class="plugin-mentions-user plugin-mentions-a" href="/user/beh" aria-label="Profile: Beh">@<bdi>Beh</bdi></a>,</p>
<p dir="auto">thank you very much for this detailed description. This was exactly what I was looking for for my MM, and with your step-by-step instructions it worked for me straight away.<br />
Happy New Year and thank you very much again!!! :thumbs_up:</p>
<p dir="auto">May the code be with you<br />
-kai</p>
]]></description><link>https://forum.magicmirror.builders/post/114144</link><guid isPermaLink="true">https://forum.magicmirror.builders/post/114144</guid><dc:creator><![CDATA[kai]]></dc:creator><pubDate>Mon, 08 Jan 2024 07:54:21 GMT</pubDate></item><item><title><![CDATA[Reply to Sync private iCloud calendar with MagicMirror on Wed, 18 Jan 2023 23:48:17 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/sdetweil" aria-label="Profile: sdetweil">@<bdi>sdetweil</bdi></a><br />
Thanks, it works now.<br />
Also, I have learned about the dot (.) implying Hidden folders, thanks.<br />
Tomorrow I’m gonna try to add multiple calendars.</p>
]]></description><link>https://forum.magicmirror.builders/post/107408</link><guid isPermaLink="true">https://forum.magicmirror.builders/post/107408</guid><dc:creator><![CDATA[Alfnie]]></dc:creator><pubDate>Wed, 18 Jan 2023 23:48:17 GMT</pubDate></item><item><title><![CDATA[Reply to Sync private iCloud calendar with MagicMirror on Wed, 18 Jan 2023 23:07:36 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/alfnie" aria-label="Profile: Alfnie">@<bdi>Alfnie</bdi></a><br />
who is adm?   should be the current username (pi?)</p>
<p dir="auto">always best to use the shortcut</p>
<p dir="auto">~/.config</p>
<p dir="auto">~ means the home folder of the current user , same as<br />
/home/$USER</p>
<p dir="auto">or /home/pi is pi is logged in</p>
]]></description><link>https://forum.magicmirror.builders/post/107407</link><guid isPermaLink="true">https://forum.magicmirror.builders/post/107407</guid><dc:creator><![CDATA[sdetweil]]></dc:creator><pubDate>Wed, 18 Jan 2023 23:07:36 GMT</pubDate></item><item><title><![CDATA[Reply to Sync private iCloud calendar with MagicMirror on Wed, 18 Jan 2023 23:04:34 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/alfnie" aria-label="Profile: Alfnie">@<bdi>Alfnie</bdi></a> you missed the . in front of vdirsyncer…</p>
<p dir="auto">the dot on linux makes the folder ‘hidden’ from normal ls commands…   as linux file system doesn’t have a hidden attribute</p>
]]></description><link>https://forum.magicmirror.builders/post/107406</link><guid isPermaLink="true">https://forum.magicmirror.builders/post/107406</guid><dc:creator><![CDATA[sdetweil]]></dc:creator><pubDate>Wed, 18 Jan 2023 23:04:34 GMT</pubDate></item><item><title><![CDATA[Reply to Sync private iCloud calendar with MagicMirror on Wed, 18 Jan 2023 22:58:16 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/sdetweil" aria-label="Profile: sdetweil">@<bdi>sdetweil</bdi></a><br />
Thanks for your reply, it sounds simple, however it seems complicated for me.<br />
I do as you say by taking these commands from the instruction (is this correct?)</p>
<pre><code>mkdir /home/adm/.config/vdirsyncer/
touch /home/adm/.config/vdirsyncer/config
nano /home/adm/.config/vdirsyncer/config
</code></pre>
<p dir="auto">It results in:</p>
<pre><code>admns@raspberrypi:~ $ mkdir /home/adm/.config/vdirsyncer/
mkdir: cannot create directory ‘/home/adm/.config/vdirsyncer/’: No such file or directory
admns@raspberrypi:~ $ touch /home/adm/.config/vdirsyncer/config
touch: cannot touch '/home/adm/.config/vdirsyncer/config': No such file or directory
</code></pre>
<p dir="auto">How should I create the folder <strong>.config/.vdirsyncer</strong> as you pointed out?</p>
]]></description><link>https://forum.magicmirror.builders/post/107405</link><guid isPermaLink="true">https://forum.magicmirror.builders/post/107405</guid><dc:creator><![CDATA[Alfnie]]></dc:creator><pubDate>Wed, 18 Jan 2023 22:58:16 GMT</pubDate></item><item><title><![CDATA[Reply to Sync private iCloud calendar with MagicMirror on Wed, 18 Jan 2023 22:17:39 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/alfnie" aria-label="Profile: Alfnie">@<bdi>Alfnie</bdi></a> so  create the folder .config/.vdirsyncer</p>
<p dir="auto">And add the config file there</p>
]]></description><link>https://forum.magicmirror.builders/post/107403</link><guid isPermaLink="true">https://forum.magicmirror.builders/post/107403</guid><dc:creator><![CDATA[sdetweil]]></dc:creator><pubDate>Wed, 18 Jan 2023 22:17:39 GMT</pubDate></item><item><title><![CDATA[Reply to Sync private iCloud calendar with MagicMirror on Wed, 18 Jan 2023 21:06:57 GMT]]></title><description><![CDATA[<p dir="auto">I run into a problem with <strong><strong>vdirsyncer (discover)</strong></strong> which is raised some times before in this thread, but I can’t find the solution. I have tried with other internet resources to solve my problem, but I ran out of options. Hopefully one of you can help me troubleshoot.</p>
<p dir="auto">1.) First, I successfully followed the steps of <a class="plugin-mentions-user plugin-mentions-a" href="/user/beh" aria-label="Profile: Beh">@<bdi>Beh</bdi></a> with additionally <strong>the clean, easy way</strong> from here:<br />
<a href="https://vdirsyncer.pimutils.org/en/stable/installation.html#the-clean-hard-way" target="_blank" rel="noopener noreferrer nofollow ugc">https://vdirsyncer.pimutils.org/en/stable/installation.html#the-clean-hard-way</a></p>
<p dir="auto">I got stuck at the part: <strong>Let vdirsyncer discover the collections and do the inital sync</strong>, with the command <strong>vdirsyncer discover</strong>. It returned:</p>
<pre><code>adm@raspberrypi:~ $ vdirsyncer discover
Traceback (most recent call last):
  File "/home/adm/.local/bin/vdirsyncer", line 5, in &lt;module&gt;
    from vdirsyncer.cli import main
ModuleNotFoundError: No module named 'vdirsyncer'
</code></pre>
<p dir="auto">2.)  Second, I followed the routine from <a class="plugin-mentions-user plugin-mentions-a" href="/user/mr190e" aria-label="Profile: mr190e">@<bdi>mr190e</bdi></a>, on page 13 in this thread (<a href="https://forum.magicmirror.builders/topic/5327/sync-private-icloud-calendar-with-magicmirror/126?lang=nl&amp;page=13">link</a>), after i used <strong>pipx uninstall vdirsyncer</strong> from <a href="https://vdirsyncer.pimutils.org/en/stable/installation.html#the-clean-easy-way" target="_blank" rel="noopener noreferrer nofollow ugc">The clean, easy way</a>.</p>
<pre><code>Seems like I got to work again.

First of all, I installed vdirsyncer via
“sudo apt-get install vdirsyncer”,
and not using pip.
</code></pre>
<p dir="auto">Now, vdirsyncer discover returns:</p>
<pre><code>critical: Error during reading config /home/adm/.config/vdirsyncer/config: [Errno 2] No such file or directory: '/home/adm/.config/vdirsyncer/config'
</code></pre>
<p dir="auto">Now I am out of tricks, I’m not sure how to troubleshoot this. What do I need to check, or to modify, to get it to work…</p>
<p dir="auto">Thanks advance for your help!</p>
]]></description><link>https://forum.magicmirror.builders/post/107402</link><guid isPermaLink="true">https://forum.magicmirror.builders/post/107402</guid><dc:creator><![CDATA[Alfnie]]></dc:creator><pubDate>Wed, 18 Jan 2023 21:06:57 GMT</pubDate></item><item><title><![CDATA[Reply to Sync private iCloud calendar with MagicMirror on Mon, 16 Jan 2023 14:34:10 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/anhanyoung91" aria-label="Profile: anhanyoung91">@<bdi>anhanyoung91</bdi></a> did u do the tutorial</p>
<p dir="auto"><a href="https://vdirsyncer.pimutils.org/en/stable/tutorial.html" target="_blank" rel="noopener noreferrer nofollow ugc">https://vdirsyncer.pimutils.org/en/stable/tutorial.html</a></p>
]]></description><link>https://forum.magicmirror.builders/post/107330</link><guid isPermaLink="true">https://forum.magicmirror.builders/post/107330</guid><dc:creator><![CDATA[sdetweil]]></dc:creator><pubDate>Mon, 16 Jan 2023 14:34:10 GMT</pubDate></item><item><title><![CDATA[Reply to Sync private iCloud calendar with MagicMirror on Mon, 16 Jan 2023 11:59:00 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/saabman" aria-label="Profile: Saabman">@<bdi>Saabman</bdi></a> I’ve literally re-done the steps over and over and I keep getting the permissions error. Have any other ideas what might be causing this or how to fix it? Thanks in advance</p>
]]></description><link>https://forum.magicmirror.builders/post/107327</link><guid isPermaLink="true">https://forum.magicmirror.builders/post/107327</guid><dc:creator><![CDATA[anhanyoung91]]></dc:creator><pubDate>Mon, 16 Jan 2023 11:59:00 GMT</pubDate></item><item><title><![CDATA[Reply to Sync private iCloud calendar with MagicMirror on Wed, 11 Jan 2023 07:15:12 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/saabman" aria-label="Profile: Saabman">@<bdi>Saabman</bdi></a> thank you so much for the reply. I’ll trace my steps and give it a shot!</p>
]]></description><link>https://forum.magicmirror.builders/post/107132</link><guid isPermaLink="true">https://forum.magicmirror.builders/post/107132</guid><dc:creator><![CDATA[anhanyoung91]]></dc:creator><pubDate>Wed, 11 Jan 2023 07:15:12 GMT</pubDate></item><item><title><![CDATA[Reply to Sync private iCloud calendar with MagicMirror on Tue, 10 Jan 2023 11:19:10 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/anhanyoung91" aria-label="Profile: anhanyoung91">@<bdi>anhanyoung91</bdi></a> Hi, I just followed the instructions on the first page.<br />
I did have an issue at one point and it was just because I didn’t follow the instructions exactly as written.<br />
If your getting an error Permission denied: /home/pi to me that sounds like you may not have the path to the vdirsyncer status folder set right.  It appears it is trying to write to the /home/pi folder rather than ~/.vdirsyncer/status/</p>
<p dir="auto">Id go through the steps again and make sure you don’t skip anything.</p>
<p dir="auto">As for the array issue in the  vdirsyncer config I have 2 calendars I sync and the line looks something like this<br />
where home is my main calendar and the random number string is my birthdays calendar.</p>
<pre><code>collections = ["home","57B7E3E-AB79-4DC3-9CF1-A63EB181DB"]
</code></pre>
<p dir="auto">hope that helps</p>
]]></description><link>https://forum.magicmirror.builders/post/107119</link><guid isPermaLink="true">https://forum.magicmirror.builders/post/107119</guid><dc:creator><![CDATA[Saabman]]></dc:creator><pubDate>Tue, 10 Jan 2023 11:19:10 GMT</pubDate></item><item><title><![CDATA[Reply to Sync private iCloud calendar with MagicMirror on Tue, 10 Jan 2023 04:41:21 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/sdetweil" aria-label="Profile: sdetweil">@<bdi>sdetweil</bdi></a> sounds good. Sorry about that. New to this forum and I wanted to tag him too. I suppose I could have just used @</p>
]]></description><link>https://forum.magicmirror.builders/post/107128</link><guid isPermaLink="true">https://forum.magicmirror.builders/post/107128</guid><dc:creator><![CDATA[anhanyoung91]]></dc:creator><pubDate>Tue, 10 Jan 2023 04:41:21 GMT</pubDate></item><item><title><![CDATA[Reply to Sync private iCloud calendar with MagicMirror on Tue, 10 Jan 2023 02:39:36 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/anhanyoung" aria-label="Profile: anhanyoung">@<bdi>anhanyoung</bdi></a> how to create array</p>
<pre><code> name_of_field: [],
</code></pre>
<p dir="auto">you are not just creating an array. you are creating a field that IS an array</p>
]]></description><link>https://forum.magicmirror.builders/post/107115</link><guid isPermaLink="true">https://forum.magicmirror.builders/post/107115</guid><dc:creator><![CDATA[sdetweil]]></dc:creator><pubDate>Tue, 10 Jan 2023 02:39:36 GMT</pubDate></item><item><title><![CDATA[Reply to Sync private iCloud calendar with MagicMirror on Tue, 10 Jan 2023 01:01:39 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/anhanyoung91" aria-label="Profile: anhanyoung91">@<bdi>anhanyoung91</bdi></a> please don’t double post, all posts from users w reputation below 2 are reviewed</p>
]]></description><link>https://forum.magicmirror.builders/post/107114</link><guid isPermaLink="true">https://forum.magicmirror.builders/post/107114</guid><dc:creator><![CDATA[sdetweil]]></dc:creator><pubDate>Tue, 10 Jan 2023 01:01:39 GMT</pubDate></item><item><title><![CDATA[Reply to Sync private iCloud calendar with MagicMirror on Mon, 09 Jan 2023 23:53:41 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/saabman" aria-label="Profile: Saabman">@<bdi>Saabman</bdi></a> do you know how to get the syncer to work? I keep getting an error saying I don’t have permissions to /home/pi</p>
]]></description><link>https://forum.magicmirror.builders/post/107112</link><guid isPermaLink="true">https://forum.magicmirror.builders/post/107112</guid><dc:creator><![CDATA[anhanyoung91]]></dc:creator><pubDate>Mon, 09 Jan 2023 23:53:41 GMT</pubDate></item></channel></rss>