12

In previous versions of macOS, I had a separate profile picture for the user account on the computer and the Apple ID iCloud account. With Monterey, it seems to have combined them such that if I change one that it automatically changes the other.

How can I set the profile picture for the local user account without changing the Apple ID iCloud account?

Ideally, I would like to unlink them. Alternatively, I'm wondering if there is a way to modify a preferences file rather than going through the UI to avoid the trigger that would sync the two.

1

5 Answers 5

6

I have found a way that seems to work. The theory is that the user interface for System Preferences is updating both the iCloud profile pic and the local user profile pic if one or the other is changed. By using the command line, I was able to change the local user profile pic without changing the iCloud pic.

The following steps use the change_userpic.sh script from this answer. Save the script locally and set the permissions to allow it to execute.

Then follow these steps...

  1. Set the desired profile picture for the local user account through System Preferences.

  2. Save the profile picture using the command line replacing 'username' with the username of the local account.

    dscl . read /Users/username JPEGPhoto | xxd -r -p > ./username.jpg

  3. Set the desired iCloud profile picture through System Preferences. This will also change the local user account — which we will change in a moment.

  4. Delete the local user account profile picture with the following two commands.

    dscl . delete /Users/username JPEGPhoto

    dscl . delete /Users/username Picture

  5. Set the local user account profile picture to the image saved in step 2.

    ./change_userpic.sh username username.jpg

This seems to have worked. I can see the two different profile pics in System Preferences (though not changing either one!).

2
  • I've been trying to do this, but I always get zsh: operation not permitted: ./change_userpic.sh I've got Full Disk Access set on Terminal, but can't seem to get it to run.
    – Phoebe
    Commented Jan 16, 2022 at 18:24
  • You probably need to do chmod +x change_userpic.sh before running it.
    – lhf
    Commented Jan 18, 2022 at 23:18
3

It seems like it's possible to fix this behavior by disabling Contacts sync in iCloud settings. It does mean your contacts will no longer sync (and iCloud will immediately delete the local contacts without confirmation). So far this seems to be working for me, but, as with these synchronization issues, it might just be temporary.

1
  • That is helpful to know, thank you. I rely on syncing contacts so I need a different solution.
    – g .
    Commented Jan 20, 2022 at 8:29
3

Here's a solution if you have another admin account (on my machine this is associated with a different Apple ID; I'm not sure whether this is necessary).

First, logged into your own account, set the picture you want to use for iCloud in System Preferences. Next, get the owner of the other admin account to log into their account. Navigate to System Preferences → Users & Groups. Unlock if necessary, then click on your user account. You can edit the picture for the local user account, and your iCloud picture will not be affected.

1

Tacking on to @phoebe's answer: Just disable Contacts (sync) in your iCloud settings on your Mac, change your pictures (for your Apple ID and local user profiles), and then simply re-enable Contacts (sync) in your iCloud settings.

Note: You just have to follow these steps again anytime you want to change any of the pictures.

0

Here’s what worked for me:

  1. Be logged into your own User account. If you already like your AppleID image then skip to step #4

  2. Open the Photos app and find (or import) the image you want to display as your AppleID. Mark it as a favorite. This is simply to make it easy to find in the next step

  3. Open System Preferences and click on the top left image to edit your AppleID image. Choose Photos > Favorites > image_from_step_2. Save and quit System Preferences

  4. Find the image you want to use for your User account (a.k.a your login image) and use your favorite method to copy it into an administrator’s account on the same machine. I chose to drag the image into ~administrator/Public/Drop Box.

  5. Logout of your own User account. Step #8 won’t work if you are still logged in to the account

  6. Login to the administrator account on the same machine. It is not necessary for this account to have an AppleID

  7. Open System Preferences > Users & Groups. In the lower left click the lock to make changes

  8. Click on your User account to highlight it, then click on the existing image to open the Edit dialogue box and add your image. Or simply drag the preferred image (from wherever you put it in step #4) onto the current login image

  9. After making changes, Save and then quit System Preferences

  10. Logout of the admin account

  11. Login to your User account

  12. Open System Preferences. If the steps were successful you should still see your AppleID image in the upper left, and when you click on Users & Groups you should see the different local login image

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .