Skip to main content
Jamf Nation, hosted by Jamf, is a knowledgeable community of Apple-focused admins and Jamf users. Join us in person at the ninth annual Jamf Nation User Conference (JNUC) this November for three days of learning, laughter and IT love.

Installing Keynote Template

My company recently updated their Keynote template. I used Jamf Composer to create a snapshot package where I used the Keynote app to manually save the theme as a template. I saved it as a DMG, and applied it to a policy that Fills existing users. It does exactly what I expect, placing the .kth file in the user Keynote directory (~/Library/Containers/com.apple.iWork.Keynote/Data/Library/Application Support/User Templates). However, upon opening Keynote.app, the theme does not appear in the Theme Chooser.

The final strange detail is that on the same computer I've been testing the policy on, if I create a new user before running the policy that has never opened Keynote before, the template does appear in the Theme Chooser on that second account, but will still not appear in Keynote on the first account.

I'm very new to this so please don't hesitate to suggest that I've made a mistake that seems dumb or obvious to you, it's entirely possible. I'll take any and all advice and appreciate it!

Like Comment
Order by:
SOLVED Posted: by murphym

I'm also running into this issue and wondering if something changed in the new Keynote Version 9 as it used to work just fine in version 8. If the template file is installed by script or manually into that User Templates folder Keynote does not add the theme tab like it used to. But if you double click a template file and opt to add it to the theme chooser it will add it to the folder and make the tab visible. Maybe there is a plist somewhere to toggle that tab?

Like
SOLVED Posted: by pmcavey

Any update on this issue?

Like
SOLVED Posted: by ryanlower

I've not been able to find a solution that works without user interaction, and instead ended up writing a script that puts the keynote template file into /users/shared and then opens the file with keynote, so that the user is prompted to "add to theme chooser". Since I obviously don't want this happening randomly and confusing people, it's also meant that I compromised and am using self-service for the initial deployment so that the user expects the interaction.

The good news is that it also seems like the only thing that keynote needs to maintain the link between the theme chooser window and the .kth file stored in ~/Library/Containers/com.apple.iWork.Keynote/Data/Library/Application Support/User Templates is a consistent filename (not a plist or UUID or something). So, after a one time installation of the keynote theme file that requires user interaction, I can now update it as a background process.

I'm definitely open to hearing from anyone who has come up with a better solution!

Like
SOLVED Posted: by s.hass

i have the following solution:

Every template in ~/Library/Containers/com.apple.iWork.Keynote/Data/Library/Application Support/User Templates creates an entry in ~/Library/Containers/com.apple.iWork.Keynote/Data/Library/Application Support/com.apple.iWork.CloudKitStorage/com.apple.iWork.TSKCloudKitPrivateZone.db
(and also a numeric file in ~/Library/Containers/com.apple.iWork.Keynote/Data/Library/Application Support/com.apple.iWork.CloudKitStorage/data)

You need to delete these .db-file after adding the new .kth-files.
After restarting Keynote the db.-file will be recreated and the new templates appear in the Theme Chooser.

By doing this another new numeric file is generated in the "data"-Folder for every template.
In order to prevent the creation of thousands of numeric files you could also clear the whole "com.apple.iWork.CloudKitStorage"-folder

Like
SOLVED Posted: by b.schueder

Yeah! Thanks! It works for me :-)

Like