Are you using the following?
Apply Setting To: User Level...
Since this is a user preference and user preferences are their own (not for us to dictate) I suggest applying "User Level At Next Login Only". This sets the default that you think is appropriate but allows the user to change it back if he prefers.
I am also trying to disable this setting. Apparently it can be applied at either the user level (~/Library/Preferences/.GlobalPreferences.plist) or the system level (/Library/Preferences/.GlobalPreferences.plist):
However, I have had no luck getting this setting to stick using MCX settings from the JSS. I set it up using the proper domain, key, and value. I have tried both user and system level.
Is MCX via Casper a reliable means of applying settings? So far it seems to be really wonky. I would gladly use config profiles (my clients are all Lion), if I could customize them to my needs. Sadly, there do not appear to be nearly as many settings that are configurable via profiles. Perhaps I'm missing something... can I use profiles to configure settings such as scrolling direction?
I gave up on the MCX in Lion for now...was running out of time to push out an image. I just created a Fill User Template dmg for the .GlobalPreferences.plist file and that works fine. I'm only using it in a lab, office users can just change their setting once if they don't like it. Trying to keep most things default as the OS ships.
OK, I must be doing something wrong, because this is not working reliably for me. I tried using a script to issue the 'defaults write' command to /L/P/.GlobalPreferences, and this does not change the setting for any users, local or network-based. I also tried a policy, set to change the setting for users once, at every login, and/or system wide... no luck with any of these. If I issue a 'jamf mcx -username mysuer', I see the setting get pulled down from the server, and the scrolling direction is (sometimes) changed after a logout. However, it seems that:
Could this be related to the bug mentioned here:
If you set it to User Lever at Every Login, does it work?
Nope, that's what I have it set to, and it does not get applied at login.
I am able to apply it using 'jamf mcx -username foo', and it works after a logout/login. So the setting itself is valid (to answer your question, bentoms), it just isn't being applied properly.
Sigh... Managed Client is one of the last uses that I have for our xServe running 10.6.8 server. It is WAAAAYYY past its prime, and due for retirement, but I can't ditch it until I get MCX working via Casper. At this rate, it looks like I'm stuck. Maybe Apple will release an updated xServe today. Ha.
Maybe Apple will release an updated xServe today. Ha.
Yeah, and maybe pigs will fly too! :)
Can you get the settings to apply via a script, as in "defaults write, blah blah?" If so, maybe try setting up a login policy that runs this via the Run Command in the Advanced tab. Its a bit of a kludge admittedly, because it should work via plain ol' MCX, but I have no idea why it wouldn't be.
Are you using the following? Domain: .GlobalPreferences Key: com.apple.swipescrolldirection Value: false Apply Setting To: User Level... Since this is a user preference and user preferences are their own (not for us to dictate) I suggest applying "User Level At Next Login Only". This sets the default that you think is appropriate but allows the user to change it back if he prefers.
I've set this up, but I am unclear on what the "Key Type" should be set to: boolean, string, integer, etc?
Thanks! About the same time you were posting this, I ended up finding the answer too:
To change the scroll behavior for all users (there are no line breaks in this command either)… defaults write /Library/Preferences/.GlobalPreferences com.apple.swipescrolldirection -bool <value>
Turns out, this was in the link that was shared above by Andy. When I saw the "-bool", that clued me in.
But thanks again!
@CasperSally~ or anyone who knows:
By the way, the MCX issue that was referenced above, has that ever been resolved? I'm going to put this Managed Preference into affect, and I was planning to use "User Level At Next Login". Not to mention, we are also moving our users to AD accounts, rather than setting up a local account for them as we had done in the past, so will this also apply to AD users as well? Thanks!
I discovered this week that a firstboot script I rolled out broke the scroll setting for mouse scroll - kept defaulting back to "natural" direction, wouldn't save the users preference.
This is the script (although I've modified my copy of it):
Turned out the permissions on ~/Library/Preferences/.GlobalPreferences.plist was messed up, it had been changed to root:wheel when it should be (for us anyway) username:_appleevents
Might be worth checking.
Otherwise, the following works for the Macs I look after (running 10.10.5):
Tested using a script that runs as currently logged on user to disable 'natural' scrolling
#!/bin/sh user=$(stat -f %Su /dev/console) sudo su - $user -c "/usr/bin/defaults write NSGlobalDomain com.apple.swipescrolldirection -bool false"
Can be confirmed that it's changed using :
defaults read NSGlobalDomain
ls -lhatr /Users/username/Library/Preferences/.GlobalPreferences
This will list the contents of /Users/username/Library/Preferences/ in reverse order chronologically including hidden files so you can see the most recently modified files in the bottom of the list - .GlobalPreferences should be one of the most recently edited files.
You can use this to also see what plist files are being modified when you make changes via the system prefs gui.
For applying to a user template, believe this should work:
defaults write "/System/Library/User Template/English.lproj/Library/Preferences/.GlobalPreferences.plist" com.apple.swipescrolldirection -bool false