Bypass all of the Mac setup steps when logging in a new local user account

howie_isaacks
Valued Contributor II

I remember being able to bypass all of the new user setup steps in macOS in the past, but I don't see how that's done now on newer versions of macOS. I remember there was a payload we could deploy in a configuration profile. We can do this during PreStage but if I setup a hidden admin account, and I later need to login using it, I would like to not have to click through all of the setup steps just to get in and do what needs to be done. Does anyone have a process for this to avoid the setup steps?

1 ACCEPTED SOLUTION

ljcacioppo
Contributor III

I believe you can do this by creating a "skipbuddy" file at the root of the home directory if its only for that user. Something like 

touch "/Users/${username}/.skipbuddy"


 

View solution in original post

13 REPLIES 13

ljcacioppo
Contributor III

I believe you can do this by creating a "skipbuddy" file at the root of the home directory if its only for that user. Something like 

touch "/Users/${username}/.skipbuddy"


 

This worked. The actual command that worked is:

touch "/Users/username/.skipbuddy" 

I was trying to understand why the brackets and the dollar sign were used in your command, unless you meant that as just a place holder for the actual username. 

 

yep, just had that as a placeholder

I figured 😁

atomczynski
Valued Contributor

So after enrollment I can run a policy to run the command to create this file and when I sign in as that user I don't have to select colors/theme, touch ID, etc?

 

As long as the user you are setting this for already exists (or you are setting this in the default user template so it applies to all created users), that's been my interpretation

No. I got right in after running that command. I created a second admin user on my test Mac, and then used the existing admin account to run the command to bypass the setup steps for that new user. I had to use sudo to do it since I was writing to another user's home folder. I have not yet created a policy that would run this command, but that's my next step. If that works then I will create a policy to do this on every newly enrolled Mac.

AVmcclint
Honored Contributor

This is also a possible solution.

howie_isaacks
Valued Contributor II

I will try this too. I have that app installed actually. I have used it for a few profiles before. 

Tribruin
Valued Contributor II

That is what i do. I just create a Config Profile and push it to all machine:

 

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
  <dict>
    <key>SkipAppearance</key>
    <true/>
    <key>SkipCloudSetup</key>
    <true/>
    <key>SkipPrivacySetup</key>
    <true/>
    <key>SkipScreenTime</key>
    <true/>
    <key>SkipSiriSetup</key>
    <true/>
    <key>SkipTouchIDSetup</key>
    <true/>
    <key>SkipTrueTone</key>
    <true/>
    <key>SkipiCloudStorageSetup</key>
    <true/>
  </dict>
</plist>

 

The preference domain is `com.apple.SetupAssistant.managed`

howie_isaacks
Valued Contributor II

I will try this too. So far, the method of writing the ".skipbuddy" file to a user's home folder has been the best option since it allows me to target a specific local user. We will be deploying Jamf Connect soon. This admin account will be set to only login as a local account and it will be hidden on the login screen.

Hello there! New mac admin here! Can you explain which payload you used and where you placed this script in? Having some trouble understanding where this goes :D

howie_isaacks
Valued Contributor II

As part of your enrollment policies, you could have a policy that runs this command:

touch "/Library/User Template/Non_localized/.skipbuddy"

This will create the skipbuddy file in the user template. Each new user account, including an admin account created by a policy or any account created manually will skip through all of the setup steps. You can use the Files and Processes payload in a policy to run this command. If this command gets ran early on before other policies it will be there when you create an admin account during the enrollment and setup process.