Creating a Policy for Bookmarks for Safari in macOS Mojave

RLim945
New Contributor III

Hi, we've been copying the bookmarks.plist file located in ~/Library/Safari/ along with FEU FUT in order to set up Safari Bookmarks and had success until macOS Mojave. When we run this policy in Safari, not only does it not copy over the bookmarks, but when you create a new local user account, we get the message "macOS needs to repair your Library."

I've asked Jamf support about this and their solution is to move away from setting up Safari bookmarks and instead use Self Service bookmarks. Have you guys had any luck with setting up bookmarks in Safari?

12 REPLIES 12

terrence_rose
New Contributor

Hey,

Have been working through the same issue today, deployed the same policy but removed the FUT option and it installs successfully. Not ideal, but users can install the bookmarks themselves.

RLim945
New Contributor III

Hi there...I gave that a try but not having any luck. It appears like the bookmarks.plist file's behavior is unique in macOS 10.14. When I drag the .plist file into the ~/Library/Safari/ folder in Composer, nothing shows up. When I run the policy with FUT option removed, the file does not get modified or replaced. Very odd, but it appears like there's no simple way to get this working

donald_olson
New Contributor

Bump!

bsuk2
New Contributor

Bump. Would be useful to be able to deploy corporate bookmarks to Safari. Surely not a complicated requirement? 🙂

dsmetham
New Contributor

Only way I have found at the moment is to have a policy be listed in Self Service, I have the bookmarks file copied to a tmp location and then a script to move it to the users library safari folder.

The next step is trying to get the copy to happen on login, i've tried running the script as the user during login but I still get 'Operation not permitted'

hhorn
New Contributor III

Here is a script that will create safari bookmarks from items in a list:
https://github.com/hhorn76/JAMF/blob/master/Scripts/createSafariBookmarks.sh

donjakubczak
New Contributor II

hhorn thanks! Works like a charm!

jonw
New Contributor III

hhorn for the win! Your script is terrific!

To take it one step further if you have a number of departments requiring different sets of bookmarks (or that change frequently) like I do, you can create a seperate text file with your bookmark list. Then deploy/update just the list as necessary. Just make sure to lock down the list so standard users can't monkey with it.

mod the script like so:

add variable:
bookmarksfile="/path/to/your/bookmarksfile"

change arrList array to read from the file rather than the script:
arrList=$(cat "$bookmarksfile")

ICTMuttenz
Contributor

@hhorn Thanks for the script. Hwo can I create Folder for the bookmarks?

ICT-JPC
New Contributor III

Hi,

I am still trying to get my head around JAMF and masOS Mojave in general. I also have a need to apply bookmarks to Safari as part of our organisational setup.

If I have understood this script correctly, which I am very appreciative of being created, I just need to edit the script with the Bookmarks I need, which will create a plist file and then I can deploy this via JAMF as a Config Profile?

Thanks,
James.

gachowski
Valued Contributor II

Just an FYI,

Apple has consistently changed "how to edit" the default bookmarks. I am guessing that they feel that it's Apple to own. I think they changed 3 OS in a row... that is when I gave up... and spent 15 mins with my managers convincing them while they think it's a good idea, Apple has a different point of view and it's a waste of time to fight Apple at the OS.

C

joelreid
New Contributor III

Is this actually doable?

I see the script above, but it tries to modify the user template and existing homes. Modifying the user template is not a thing anymore these days (see thread, thread). After a fresh [no-Jamf, no-Apple-Automatic-Device-Enrollment] install of Mojave, I cannot even run touch ~/Library/Safari/test.plist which yields "Operation not permitted" …it's protected by SIP's extension to user folders.

As for using the script's .plist output to instead create a custom payload in a config profile, the Safari bookmarks don't live in com.apple.Safari but a standard-violating loose file in the standard-violating ~/Library/Safari folder. Can profiles cover settings that come from oddball locations?

Seems Apple really don't want us affecting their precious UX. My takeaway; I guess we're not using Safari anymore.