mac-dev-playbook
mac-dev-playbook copied to clipboard
Quirks with automating macOS Sonoma
I decided to finally upgrade to Sonoma, since I'm also adding on an M4 Mac mini... therefore I will document any weird problems I find in this project and try to resolve them in this issue.
- [ ] Check over various
.osxcommands to see what errors out or doesn't work - [x] Re-run playbook after
Developmentfolder copy completes - [x] Figure out https://github.com/geerlingguy/mac-dev-playbook/pull/209 so CI works on Sonoma
- [ ] Test and merge in https://github.com/geerlingguy/mac-dev-playbook/pull/79
- [x] Check on dock resizing
- [ ] Fix annoyingly-slow key repeat rate
- [ ] Add
EnableStandardClickToShowDesktopoption to my.osxfile - [x] Fix autocorrect still autocorrecting even if disabled see tweet
Surprisingly, very few things failed. Dock resizing seems not to work, and a couple apps were missing as I did the thing in the wrong order the first time.
In my .osx file, I have:
# Disable press-and-hold for keys in favor of key repeat
defaults write NSGlobalDomain ApplePressAndHoldEnabled -bool false
# Set a blazingly fast keyboard repeat rate, and make it happen more quickly.
# (The KeyRepeat option requires logging out and back in to take effect.)
defaults write NSGlobalDomain InitialKeyRepeat -int 20
defaults write NSGlobalDomain KeyRepeat -int 1
I do this because I often like to 'scroll' with just the down arrow or keys in Vim quickly, without going a page at a time. The fastest I can go using macOS's built-in slider is not very fast (for me).
Those settings don't seem to do anything in Sonoma, see Did we lose key repeat in Sonoma?.
Also, for some uses, Terminal really needs to have full disk access:
Inside "Privacy & Security" > "Full Disk Access", enable 'Terminal'
I don't know if I'm going to recommend that as a default though.
It looks like the key repeat stuff might be under com.apple.Accessibililty now:
********* READING DEFAULT DOMAIN com.apple.Accessibility **********
{
AXSClassicInvertColorsPreference = 0;
ApplicationAccessibilityEnabled = 0;
AutomationEnabled = 0;
BrailleInputDeviceConnected = 0;
CommandAndControlEnabled = 0;
DarkenSystemColors = 0;
DifferentiateWithoutColor = 0;
EnhancedBackgroundContrastEnabled = 1;
FullKeyboardAccessEnabled = 0;
FullKeyboardAccessFocusRingEnabled = 1;
GenericAccessibilityClientEnabled = 0;
GrayscaleDisplay = 0;
InvertColorsEnabled = 0;
KeyRepeatDelay = "0.5";
KeyRepeatEnabled = 1;
KeyRepeatInterval = "0.083333333";
ReduceMotionEnabled = 0;
SpeakThisEnabled = 0;
VoiceOverTouchEnabled = 0;
}
Debugged with:
for i in `defaults domains | tr ',' '\n'`; do echo "********* READING DEFAULT DOMAIN $i **********"; echo; defaults read $i; done
I'm going to test the following and log out and log back in to see if it takes:
defaults write com.apple.Accessibility KeyRepeatDelay -float 0.1
defaults write com.apple.Accessibility KeyRepeatInterval -float 0.001
Nope... looks like those values were set back to 0.5 and 0.083333333, respectively :(
Also started getting very annoyed that if I clicked on the desktop, all my windows would fly away. Apparently there's some silly default for that in Sonoma. Luckily disabling it is as simple as:
defaults write com.apple.WindowManager EnableStandardClickToShowDesktop -bool false
For Dock resizing, this works:
defaults write com.apple.dock tilesize -int 30; killall Dock
The int is the dimension of icons in the Dock.
Edit: That's... apparently in the .osx file already, so maybe it was just errored out on first run.
The worst thing running Sequoia a few days: autocorrect is still autocorrecting / switching suggestions even though I thought I disabled it in System Preferences!
Example of frustration:
Apparently as suggested on X, "turning it on and off again" worked, lol.
Just set up another Mac today, tweaked a few more things in my full-mac-setup.md document — commit will appear below.
Still working my way through:
- [x] Installing Elgato apps
- [x] Installing Fusion
- [x] Signing into Google Accounts
- [x] Adding Wireguard VPN configs
This issue has been marked 'stale' due to lack of recent activity. If there is no further activity, the issue will be closed in another 30 days. Thank you for your contribution!
Please read this blog post to see the reasons why I mark issues as stale.
This issue has been closed due to inactivity. If you feel this is in error, please reopen the issue or file a new issue with the relevant details.
Closing in favor of #232