Configure Custom Screen Saver in 10.9.5

TBathe
New Contributor II

Hey guys,

I have been struggling with properly setting the correct screen saver in my environment (10.9.5) both at the login screen and per user. We have created a custom screen saver located in /Library/Screen Savers/XXX.saver.

I have tried a few scripts and config profiles based on information found here and other admin sites but still find myself manually setting this as part of my profiling steps.

Does anyone have any best practices / solutions that worked well in their environments?

Thanks!
Tom

6 REPLIES 6

gachowski
Valued Contributor II

Tom, I spent a day trying to get this working, for a possible requirement. I couldn't get it working and gave up .... I didn't try a config profile. I would guess that getting the config profile to work is your best bet. I have had issued with MCX and default writes/scripts.

However I just checked the profile manager in server 4 and didn't see an option. : ( I thought it was there in older versions.

C

bentoms
Release Candidate Programs Tester

@TBathe, did you try: https://macmule.com/2010/11/19/how-to-set-osxs-screen-saver-via-script/

For the login window, this can be set via a profile.. But screen savers at the login window have other restrictions, such as they can't be flash based.

TBathe
New Contributor II

I did see the Mac Mule article, however I don't think this applies in Mavericks, as Mavericks saves its screen saver configs in different locations. Did you have any luck using this with Mavericks @bentoms][/url? @ikelee, how did you accomplish this?

bentoms
Release Candidate Programs Tester

@TBathe, yea I think we used that on 10.9.

But then moved to Managed Preferences.

tak10
Contributor II

@bentoms May I bring this discussion back up? I created custom video screen saver using Quartz Composer that goes through company values in a video format and I need to set these up for all the users on company owned Macs. I've created script to do this but it is hit or miss. The script works in the controlled environment but I can't get it to work with several test users. Are you using the Screen Saver Loginwindow managed preferences to manage the screen saver settings or do you have the Custom ones you've defined? I tried using this -> Screensaver Managed Preferences Manifest but still no luck.

This is the script. This works in the controlled environment but didn't work with several of the test users.

Grab current user

curUser=ls -l /dev/console | cut -d " " -f 4;

Extract macUUID

if [[ ioreg -rd1 -c IOPlatformExpertDevice | grep -i "UUID" | cut -c27-50 != "00000000-0000-1000-8000-" ]]; then macUUID=ioreg -rd1 -c IOPlatformExpertDevice | grep -i "UUID" | cut -c27-62
fi

Set idle Time

sudo defaults write /Users/$curUser/Library/Preferences/ByHost/com.apple.screensaver.$macUUID.plist idleTime 600;

Set Screen saver parameters

sudo defaults write /Users/$curUser/Library/Preferences/ByHost/com.apple.screensaver.$macUUID.plist moduleDict -dict moduleName "CustomScreenSaver" path "/Library/Screen Savers/CustomScreenSaver.qtz" type -int 1;

Change Screensaver file to be accessible by end user.

sudo chown -R "$curUser:domainNameDomain Users" /Users/$curUser/Library/Preferences/ByHost/com.apple.screensaver.$macUUID.plist;

bentoms
Release Candidate Programs Tester

@tak10 it's been a while since I needed this, so things may have changed.

Have you tried the above via a LaunchAgent?