From 0e165dd9791e8e4639cd80e1ed4193c0dd71e312 Mon Sep 17 00:00:00 2001 From: Zhineng Li Date: Wed, 7 Jan 2026 17:48:47 +0800 Subject: initialize .macos --- .macos | 171 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 171 insertions(+) create mode 100755 .macos (limited to '.macos') diff --git a/.macos b/.macos new file mode 100755 index 0000000..00c14b9 --- /dev/null +++ b/.macos @@ -0,0 +1,171 @@ +#!/usr/bin/env bash +set -ex + +######################################################################### +# Keyboard +######################################################################### + +# Repeat keys while held down +defaults write -g ApplePressAndHoldEnabled -bool FALSE + +# Repeat keys without delay +defaults write -g InitialKeyRepeat -float 15 + +# Fastest key repeat rate +defaults write -g KeyRepeat -float 2 + +# Use F1, F2, etc. keys as standard function keys +defaults write -g com.apple.keyboard.fnState -bool TRUE + + +######################################################################### +# Finder +######################################################################### + +# Open new window in home directory +defaults write com.apple.finder NewWindowTarget PfHm + +# Show breadcrumbs +defaults write com.apple.finder ShowPathbar 1 + +# Show status bar (file count and available storage) +defaults write com.apple.finder ShowStatusBar 1 + +# Show all filename extensions +defaults write -g AppleShowAllExtensions 1 + +# No warning before changing an extension +defaults write com.apple.finder FXEnableExtensionChangeWarning 0 + +# No warning before emptying the Trash +defaults write com.apple.finder WarnOnEmptyTrash 0 + +# Remove items from the Trash after 30 days +defaults write com.apple.finder FXRemoveOldTrashItems 1 + +# Search the current folder +defaults write com.apple.finder FXDefaultSearchScope SCcf + +# Show hard disks, external disks, removables, and servers on desktop +defaults write com.apple.finder ShowHardDrivesOnDesktop 1 +defaults write com.apple.finder ShowExternalHardDrivesOnDesktop 1 +defaults write com.apple.finder ShowRemovableMediaOnDesktop 1 +defaults write com.apple.finder ShowMountedServersOnDesktop 1 + + +######################################################################### +# Desktop & Dock +######################################################################### + +# Automatically hide and show the Dock +defaults write com.apple.dock autohide -bool TRUE + +# Remove auto-hide delay +defaults write com.apple.dock autohide-delay -float 0 + +# Animate auto-hide (500ms) +defaults write com.apple.dock autohide-time-modifier -float 0.5 + +# Position Dock on the left +defaults write com.apple.dock orientation left + +# Small icons in Dock +defaults write com.apple.dock tilesize -int 36 + +# Hide suggested and recent apps in Dock +defaults write com.apple.dock show-recents -bool FALSE + +# Customize Hot Corners +# +# Allowed corner values: +# 1: - (Do nothing) +# 2: Mission Control +# 3: Application Windows +# 4: Desktop +# 5: Start Screen Saver +# 5: Disable Screen Saver +# 10: Put Display to Sleep +# 11: Apps +# 12: Notification Center +# 13: Lock Screen +# 14: Quick Note + +defaults write com.apple.dock wvous-bl-corner -int 1 +defaults write com.apple.dock wvous-bl-modifier -int 0 +defaults write com.apple.dock wvous-br-corner -int 1 +defaults write com.apple.dock wvous-br-modifier -int 0 +defaults write com.apple.dock wvous-tl-corner -int 1 +defaults write com.apple.dock wvous-tl-modifier -int 0 +defaults write com.apple.dock wvous-tr-corner -int 1 +defaults write com.apple.dock wvous-tr-modifier -int 0 + +# Hide widgets on desktop +defaults write com.apple.WindowManager StandardHideWidgets -bool TRUE + + +######################################################################### +# Spotlight +######################################################################### + +# Exclude selected results from Spotlight +defaults write com.apple.Spotlight EnabledPreferenceRules -array \ + 'System.files' \ + 'System.folders' \ + 'System.iphoneApps' \ + 'com.apple.AddressBook' \ + 'com.apple.AppStore' \ + 'com.apple.MobileSMS' \ + 'com.apple.Notes' \ + 'com.apple.Photos' \ + 'com.apple.Safari' \ + 'com.apple.VoiceMemos' \ + 'com.apple.clock' \ + 'com.apple.freeform' \ + 'com.apple.iBooksX' \ + 'com.apple.iCal' \ + 'com.apple.iWork.Keynote' \ + 'com.apple.iWork.Numbers' \ + 'com.apple.mail' \ + 'com.apple.mobilephone' \ + 'com.apple.news' \ + 'com.apple.podcasts' \ + 'com.apple.reminders' \ + 'com.apple.shortcuts' \ + 'com.apple.systempreferences' \ + 'com.apple.tips' \ + ; + + +######################################################################### +# Siri +######################################################################### + +# Turn off Siri +defaults write com.apple.assistant.support 'Assistant Enabled' -bool FALSE + +# Do not activate Siri by voice +defaults write com.apple.Siri VoiceTriggerUserEnabled -bool FALSE + + +######################################################################### +# Safari +######################################################################### + +# Show full website address +defaults write com.apple.Safari ShowFullURLInSmartSearchField -bool TRUE + +# Show features for web developers +defaults write com.apple.Safari IncludeDevelopMenu -bool TRUE + + +######################################################################### +# Close affected applications +######################################################################### + +apps=("Finder" "Dock" "Spotlight" "Siri" "Safari" "System Settings") + +for appname in "${apps[@]}"; do + killall -q "$appname" || true +done + +echo "macOS configured successfully. Some settings require a reboot to take effect." -- cgit v1.2.3