Steps to reproduce
I’m using Templater to create notes with icalBuddy shell command. It used to work well (with a few tweaks mentioned in thread here), and after I upgraded to v1.0 and Ventura, it stopped working.
Shell command in Templater:
/usr/local/bin/icalBuddy -npn -nc -ps “/: /” -iep “datetime,title” -po “datetime, title” -b "\n\n### " -tf “%H%M” -ic “Calendar” eventsToday
It works in shell window (Terminal) and other tools (SwiftBar).
Obsidian didn’t request permission for Calendar and is not added to the Calendar permission list under Privacy & Security setting.
Have not tried uninstall and reinstall Obsidian as I don’t want to lose current settings.
Obsidian should request Calendar permission to access user calendar.
No calendar access.
- Operating system: macOS Ventura
we haven’t changed anything and this looks like a FR, please open one.
Thanks for the response. I can open an FR for it, however since it was working before with previous versions of macOS, it seems like a bug to me (the user) when it stopped working after system upgrade. I’ll follow the process but just want to let you know. Thanks!
Same issue here. Updated to MacOS Ventura yesterday and icalBuddy refuses to work. Was not working in the terminal either. I reinstalled iCalBuddy. Now works fine in the terminal but I get what seems to be a permission error in Obsidian using Templater. “error: No calendars”.
Updated to Obsidian v1 few days ago and it was fine.
I’ve updated the entitlements for Obsidian app and it solved the problem by requesting calendar access when icalbuddy is called.
This the entitlement xml that I used (extracted from existing Obsidian entitlement and added a key for com.apple.security.personal-information.calendars):
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "https://www.apple.com/DTDs/PropertyList-1.0.dtd">
Tested on Obsidian v1.0.3.
Hi @lielu, would you mind explaining the steps you followed to make it work? Having the same issue, and not seeing how to modify the App bundle to add those new permissions.
Same problem, would like more detailed instructions because I’m not sure how to do this. Thanks!
Hi @pvillega @Cat,
Here are my steps (but do it with caution, back up your files):
- Save the XML in my previous reply in a file (say, ~/Downloads/entitlements-ob.xml).
- You need to use
codegen to resign the Obsidian app using the xml. If you don’t have a signing certificate, you can follow this post to generate a code signing certificate with a certificate name (say, “My code signing cert”). You may need a CA if you don’t already have one, and the steps to create one are similar.
- Run in shell:
$ cd /Applications
$ codesign --entitlements ~/Downloads/entitlements-ob.xml -f -s "My code signing cert" Obsidian.app/
Re-launch the app, and it should now request Calendar permission when icalbuddy is first run.
Ran into the same issue running icalBuddy in Keyboard Maestro. Just created my trusted CA cert and about to patch the obsidian app. How do you run icalBuddy in Templater? Thanks!
Hi, Thanks for your efforts. I have tried patching Obsidian and get the following error when executing codesign:
/Users/username/Downloads/entitlements-ob.xml: unrecognized blob type (accepting blindly)
/Users/username/Downloads/entitlements-ob.xml: invalid length in entitlement blob
Can you help?
entitlements-ob.xml.zip (833 Bytes)
You can try the xml I attached here.
Thanks for your help! I tried the steps and now could successfully patch with the xml file. However, the console in Obsidian still shows No Calendars as error and it also doesn’t work in Terminal. What can I do to make it work?
Can you post your Terminal output when you execute icalbuddy? If it doesn’t work in Terminal, it won’t work in Obsidian. Please make sure you’re running one of the latest versions of icalbuddy from Releases · dkaluta/icalBuddy64 · GitHub.
Attached the output, incl the version of iCalBuddy I am running.
@skylin3 I observed the same behavior as you, but was able to get it to work when ran the homebrew version of iCalBuddy:
/opt/homebrew/bin/icalBuddy -npn -nc -ps "/: /" -iep "datetime,title" -po "datetime, title" -b "\n\n### " -tf "%I:%M %p" -eed eventsToday
Thanks, @lielu, for providing this workaround!
Hi thombehrens and lielu, The installation via homebrew worked and permission for calendars was asked for terminal. Same for Obsidian. So the solution with homebrew worked for me on macOS Ventura (13.0) and Apple M1. Thanks again for your help!