


This may not sound like much, but if you read through the source you'll see that there are a variety of subtleties and nuances that took quite a bit of research and effort to match exactly what sysadminctl -addUser and System Preferences/Settings does. The user accounts created by mkuser should be indistinguishable from a user account created by sysadminctl -addUser or System Preferences/Settings. Mkuser is also focused on precision and accuracy. This info may be informative beyond just using mkuser since it's really all about all the different kinds of advanced customizations user accounts can have on macOS. If somehow an issue does occur with a future version of macOS, mkuser's excessive verifications should detect the issue and output a detailed warning or error message.Īlong with abundant options and excessive verifications, mkuser has detailed help info which explains each available option and what affect it will have on the created user account. Because of how mkuser is written and the built-in tools it uses to create user accounts, it should support future versions of macOS without any major issues as the fundamentals of user creation have been consistent for years across many versions of macOS. The newest version of macOS that mkuser has been tested with as of writing this is macOS 13 Ventura. Mkuser supports and has been thoroughly tested with macOS 10.13 High Sierra and newer (it likely works on older versions of macOS as well, but that hasn't been tested).
USED RUNONLY APPLESCRIPTS TO AVOID FOR VERIFICATION
Mkuser ma kes user accounts for macOS with more options, more validation of inputs, and more verification of the created user account than any other user creation tool, including sysadminctl -addUser and System Preferences/Settings!


USED RUNONLY APPLESCRIPTS TO AVOID FOR FULL
Mkuser for macOS ⬇️ INSTALLATION Local Installation Running Without Installation Installation Summary ℹ️ USAGE NOTES 👤 PRIMARY OPTIONS -account-name, -record-name, -short-name, -username, -user, -name, -n 244 CHARACTER/BYTE ACCOUNT NAME LENGTH LIMIT NOTES: ACCOUNT NAMES STARTING WITH PERIOD (.) NOTES: -full-name, -real-name, -f FULL NAME LENGTH LIMIT NOTES: -unique-id, -user-id, -uid, -u NEGATIVE USER ID NOTES: -generated-uid, -guid, -uuid, -G -primary-group-id, -group-id, -group, -gid, -g -login-shell, -user-shell, -shell, -s 🔐 PASSWORD OPTIONS -password, -pass, -p BLANK/EMPTY PASSWORD NOTES: AUTO-LOGIN 251 BYTE PASSWORD LENGTH LIMIT NOTES: 511 BYTE PASSWORD LENGTH LIMIT NOTES: PASSWORDS IN PACKAGE NOTES: -stdin-password, -stdin-pass, -sp -password-prompt, -pass-prompt, -pp -no-password, -no-pass, -np -password-hint, -hint, -ph 280 CHARACTER PASSWORD HINT LENGTH LIMIT NOTES: -prohibit-user-password-changes 📁 HOME FOLDER OPTIONS -home-folder, -home-path, -home, -H -do-not-share-public-folder, -dont-share-public -do-not-create-home-folder, -dont-create-home 🖼 PICTURE OPTIONS -picture, -photo, -pic, -P -no-picture, -no-photo, -no-pic -prohibit-user-picture-changes 🎛 ACCOUNT TYPE OPTIONS -administrator, -admin, -a -hidden, -hide -sharing-only-account, -sharing-account, -sharing-only, -sharing, -soa -role-account, -role, -r -service-account, -service, -sa GROUPS SPECIFICALLY FOR SERVICE ACCOUNTS NOTES: -prevent-secure-token-on-big-sur-and-newer, -prevent-secure-token, -no-st VOLUME OWNER ON APPLE SILICON NOTES: macOS 11 Big Sur AND NEWER FIRST SECURE TOKEN NOTES: macOS 10.15 Catalina FIRST SECURE TOKEN NOTES: macOS 10.14 Mojave AND macOS 10.13 High Sierra FIRST SECURE TOKEN NOTES: ALL VERSIONS OF macOS SECURE TOKEN NOTES: BOOTSTRAP TOKEN NOTES (MDM-ENROLLED macOS 10.15 Catalina AND NEWER ONLY): -secure-token-admin-account-name, -st-admin-name, -st-admin-user, -st-name -secure-token-admin-password, -st-admin-pass, -st-pass SECURE TOKEN ADMIN 1022 BYTE PASSWORD LENGTH LIMIT NOTES: -fd-secure-token-admin-password, -fd-st-admin-pass, -fd-st-pass -secure-token-admin-password-prompt, -st-admin-pass-prompt, -st-pass-prompt 🚪 LOGIN OPTIONS -automatic-login, -auto-login, -A -prevent-login, -no-login, -nl -skip-setup-assistant, -skip-setup, -S 📦 PACKAGING OPTIONS -package-path, -pkg-path, -package, -pkg -package-identifier, -pkg-identifier, -package-id, -pkg-id -package-version, -pkg-version, -pkg-v -package-signing-identity, -package-sign, -pkg-sign ⚙️ MKUSER OPTIONS -do-not-confirm, -no-confirm, -force, -F -suppress-status-messages, -quiet, -q -check-only, -dry-run, -check, -c -version, -v -help, -h README.md
