バッジが付かないようにするのではなく、付いたバッジを消すのであれば、下記の AppleScript を使うとか。
なお、B案は Dock に登録したシステム環境設定のバッジも消せますが、Dock を再起動する際に画面がチカッとします。なので個人的にはおすすめではありませんが一応載せておきます。
あと、両案ともログイン項目に登録しても期待通りには動かないと思います。バッジが付いたことを確認した後でスクリプトを実行する必要があるためです。これらのスクリプトはあくまでもバッジが付いていることに気づいたら手動で実行して消す、、、というものです。
A案
on run
try
Clear_AttentionPrefBundleIDs()
on error errs number errn
return errs
end try
end run
on Clear_AttentionPrefBundleIDs()
do shell script "zsh -s <<'EOF'
defaults read com.apple.systempreferences AttentionPrefBundleIDs >/dev/null 2>&1
if [[ $? -eq 0 ]]; then
defaults delete com.apple.systempreferences AttentionPrefBundleIDs
fi
EOF"
end Clear_AttentionPrefBundleIDs
B案 - Dock に登録したシステム環境設定のバッジも消す
on run
try
Clear_AttentionPrefBundleIDs()
on error errs number errn
return errs
end try
end run
on Clear_AttentionPrefBundleIDs()
do shell script "zsh -s <<'EOF'
defaults read com.apple.systempreferences AttentionPrefBundleIDs >/dev/null 2>&1
if [[ $? -eq 0 ]]; then
defaults delete com.apple.systempreferences AttentionPrefBundleIDs
killall Dock
fi
EOF"
end Clear_AttentionPrefBundleIDs