aadhar.sh/dotfiles
Address
aadhar.shDotfiles

macOS, the way i have it

Every setting below is one i changed on my own Macs, read back off the machines with defaults read. The System rows came off pmset, nvram and the firewall's own tool. Tick the ones you want, copy the script, paste it into Terminal, and restart what it tells you to. Nothing runs from this page.

Advanced settings:

Generated script:

paste into Terminal, then do what the last lines say

The whole set, unedited

The same lines with everything ticked live at /dotfiles/macos.sh. Read it before you run it; it is short.

curl -fsSL https://aadhar.sh/dotfiles/macos.sh -o macos.sh
less macos.sh
bash macos.sh

How this list was made

defaults read <domain> prints only the keys something has written, so a missing key proves that setting is still at factory, and a present key means something touched it at some point. i read the dozen domains that dotfiles conventionally cover, kept the keys whose value differs from what a fresh account gets, and dropped the ones i could not vouch for. Where i know the factory value it sits at the right of the row. A second sweep on 2026-10-09 read my personal Mac the same way and added 61 rows; where the two machines disagreed, the page kept the value it already had.

What is deliberately missing
My text replacements (personal), the Dock's app list (bookmark blobs, dockutil territory), the Control Center menu bar layout (an opaque blob), and the Terminal profile (archived colours, exportable as a .terminal file instead). Also the keyboard shortcuts i turned off under Accessibility, because i could not confirm which of those ship off already. Some keys stayed out because macOS no longer reads them: LSQuarantine, the Launchpad springboard-* keys, no-glass and dashboard-in-overlay. So did verbose boot, which needs reduced security on Apple Silicon. Safari, Mail, TextEdit and Preview went unswept: privacy protection keeps defaults read out of their settings without Full Disk Access.
Why some rows want a logout
Key repeat, the press-and-hold switch, tracking speed and the sound settings are read once at login by the processes that own them, and no killall reaches those. The Dock, Finder, the screenshot service and the clock each restart in place. The four app rows need only that app relaunched.
The rows that ask for more
Accessibility writes fail unless Terminal has Full Disk Access (System Settings, Privacy & Security). The script keeps going past them and says at the end what it skipped. The System rows run as root, so a script with any of them ticked asks for your password once, before it writes anything.
Measured on
macOS 27.2 (Darwin 27.2), 2026-09-21 and 2026-10-09. Four rows are macOS 26 keys and say so, and the wallpaper-click and tiling rows came with Sonoma and Sequoia.

Made in the same spirit as mathiasbynens/dotfiles, which is where most of the world learned these keys. The difference is the checklist: his is a script you edit, this is a list you tick.

folder options, for a macnothing runs from this pageread off two Macs, last on 2026-10-09