Skip to content

Sound

Everything under System Settings › Sound, as Nix options. Each one is named after the control you'd click, and set under programs.nix-plist-manager.options in home-manager and nix-darwin.

5 options 3 verified against System Settings

System Settings › Sound › Alert sound

home-manager · per user ✓ Verified on macOS 27
applications.systemSettings.sound.soundEffects.alertSound = "Boop";

One of: "Boop""Breeze""Bubble""Crystal""Funky""Heroine""Jump""Mezzo""Pebble""Pluck""Pong""Sonar""Sonumi""Submerge" "unset" puts back macOS's default.

Where it's stored and what runs
  • NSGlobalDomain com.apple.sound.beep.sound

For Boop:

/usr/bin/defaults write NSGlobalDomain com.apple.sound.beep.sound -string /System/Library/Sounds/Tink.aiff || echo 'nix-plist-manager: failed: /usr/bin/defaults write NSGlobalDomain com.apple.sound.beep.sound -string /System/Library/Sounds/Tink.aiff' >&2
/usr/bin/defaults -currentHost delete NSGlobalDomain com.apple.sound.beep.sound 2>/dev/null || true

For Breeze:

/usr/bin/defaults write NSGlobalDomain com.apple.sound.beep.sound -string /System/Library/Sounds/Blow.aiff || echo 'nix-plist-manager: failed: /usr/bin/defaults write NSGlobalDomain com.apple.sound.beep.sound -string /System/Library/Sounds/Blow.aiff' >&2
/usr/bin/defaults -currentHost delete NSGlobalDomain com.apple.sound.beep.sound 2>/dev/null || true

For Bubble:

/usr/bin/defaults write NSGlobalDomain com.apple.sound.beep.sound -string /System/Library/Sounds/Pop.aiff || echo 'nix-plist-manager: failed: /usr/bin/defaults write NSGlobalDomain com.apple.sound.beep.sound -string /System/Library/Sounds/Pop.aiff' >&2
/usr/bin/defaults -currentHost delete NSGlobalDomain com.apple.sound.beep.sound 2>/dev/null || true

For Crystal:

/usr/bin/defaults write NSGlobalDomain com.apple.sound.beep.sound -string /System/Library/Sounds/Glass.aiff || echo 'nix-plist-manager: failed: /usr/bin/defaults write NSGlobalDomain com.apple.sound.beep.sound -string /System/Library/Sounds/Glass.aiff' >&2
/usr/bin/defaults -currentHost delete NSGlobalDomain com.apple.sound.beep.sound 2>/dev/null || true

For Funky:

/usr/bin/defaults write NSGlobalDomain com.apple.sound.beep.sound -string /System/Library/Sounds/Funk.aiff || echo 'nix-plist-manager: failed: /usr/bin/defaults write NSGlobalDomain com.apple.sound.beep.sound -string /System/Library/Sounds/Funk.aiff' >&2
/usr/bin/defaults -currentHost delete NSGlobalDomain com.apple.sound.beep.sound 2>/dev/null || true

For Heroine:

/usr/bin/defaults write NSGlobalDomain com.apple.sound.beep.sound -string /System/Library/Sounds/Hero.aiff || echo 'nix-plist-manager: failed: /usr/bin/defaults write NSGlobalDomain com.apple.sound.beep.sound -string /System/Library/Sounds/Hero.aiff' >&2
/usr/bin/defaults -currentHost delete NSGlobalDomain com.apple.sound.beep.sound 2>/dev/null || true

For Jump:

/usr/bin/defaults write NSGlobalDomain com.apple.sound.beep.sound -string /System/Library/Sounds/Frog.aiff || echo 'nix-plist-manager: failed: /usr/bin/defaults write NSGlobalDomain com.apple.sound.beep.sound -string /System/Library/Sounds/Frog.aiff' >&2
/usr/bin/defaults -currentHost delete NSGlobalDomain com.apple.sound.beep.sound 2>/dev/null || true

For Mezzo:

/usr/bin/defaults write NSGlobalDomain com.apple.sound.beep.sound -string /System/Library/Sounds/Basso.aiff || echo 'nix-plist-manager: failed: /usr/bin/defaults write NSGlobalDomain com.apple.sound.beep.sound -string /System/Library/Sounds/Basso.aiff' >&2
/usr/bin/defaults -currentHost delete NSGlobalDomain com.apple.sound.beep.sound 2>/dev/null || true

For Pebble:

/usr/bin/defaults write NSGlobalDomain com.apple.sound.beep.sound -string /System/Library/Sounds/Bottle.aiff || echo 'nix-plist-manager: failed: /usr/bin/defaults write NSGlobalDomain com.apple.sound.beep.sound -string /System/Library/Sounds/Bottle.aiff' >&2
/usr/bin/defaults -currentHost delete NSGlobalDomain com.apple.sound.beep.sound 2>/dev/null || true

For Pluck:

/usr/bin/defaults write NSGlobalDomain com.apple.sound.beep.sound -string /System/Library/Sounds/Purr.aiff || echo 'nix-plist-manager: failed: /usr/bin/defaults write NSGlobalDomain com.apple.sound.beep.sound -string /System/Library/Sounds/Purr.aiff' >&2
/usr/bin/defaults -currentHost delete NSGlobalDomain com.apple.sound.beep.sound 2>/dev/null || true

For Pong:

/usr/bin/defaults write NSGlobalDomain com.apple.sound.beep.sound -string /System/Library/Sounds/Morse.aiff || echo 'nix-plist-manager: failed: /usr/bin/defaults write NSGlobalDomain com.apple.sound.beep.sound -string /System/Library/Sounds/Morse.aiff' >&2
/usr/bin/defaults -currentHost delete NSGlobalDomain com.apple.sound.beep.sound 2>/dev/null || true

For Sonar:

/usr/bin/defaults write NSGlobalDomain com.apple.sound.beep.sound -string /System/Library/Sounds/Ping.aiff || echo 'nix-plist-manager: failed: /usr/bin/defaults write NSGlobalDomain com.apple.sound.beep.sound -string /System/Library/Sounds/Ping.aiff' >&2
/usr/bin/defaults -currentHost delete NSGlobalDomain com.apple.sound.beep.sound 2>/dev/null || true

For Sonumi:

/usr/bin/defaults write NSGlobalDomain com.apple.sound.beep.sound -string /System/Library/Sounds/Sosumi.aiff || echo 'nix-plist-manager: failed: /usr/bin/defaults write NSGlobalDomain com.apple.sound.beep.sound -string /System/Library/Sounds/Sosumi.aiff' >&2
/usr/bin/defaults -currentHost delete NSGlobalDomain com.apple.sound.beep.sound 2>/dev/null || true

For Submerge:

/usr/bin/defaults write NSGlobalDomain com.apple.sound.beep.sound -string /System/Library/Sounds/Submarine.aiff || echo 'nix-plist-manager: failed: /usr/bin/defaults write NSGlobalDomain com.apple.sound.beep.sound -string /System/Library/Sounds/Submarine.aiff' >&2
/usr/bin/defaults -currentHost delete NSGlobalDomain com.apple.sound.beep.sound 2>/dev/null || true

For unset:

/usr/bin/defaults delete NSGlobalDomain com.apple.sound.beep.sound 2>/dev/null || true
/usr/bin/defaults -currentHost delete NSGlobalDomain com.apple.sound.beep.sound 2>/dev/null || true

System Settings › Sound › Alert volume

home-manager · per user Not verified
applications.systemSettings.sound.soundEffects.alertVolume = 0.0;

A number from 0 to 1 "unset" puts back macOS's default.

Where it's stored and what runs
  • NSGlobalDomain com.apple.sound.beep.volume

For 0.0:

/usr/bin/defaults write NSGlobalDomain com.apple.sound.beep.volume -float 0.000000 || echo 'nix-plist-manager: failed: /usr/bin/defaults write NSGlobalDomain com.apple.sound.beep.volume -float 0.000000' >&2
/usr/bin/defaults -currentHost delete NSGlobalDomain com.apple.sound.beep.volume 2>/dev/null || true

For 1.0:

/usr/bin/defaults write NSGlobalDomain com.apple.sound.beep.volume -float 1.000000 || echo 'nix-plist-manager: failed: /usr/bin/defaults write NSGlobalDomain com.apple.sound.beep.volume -float 1.000000' >&2
/usr/bin/defaults -currentHost delete NSGlobalDomain com.apple.sound.beep.volume 2>/dev/null || true

For unset:

/usr/bin/defaults delete NSGlobalDomain com.apple.sound.beep.volume 2>/dev/null || true
/usr/bin/defaults -currentHost delete NSGlobalDomain com.apple.sound.beep.volume 2>/dev/null || true

System Settings › Sound › Play feedback when volume is changed

home-manager · per user ✓ Verified on macOS 27
applications.systemSettings.sound.soundEffects.playFeedbackWhenVolumeIsChanged = true;

true or false "unset" puts back macOS's default.

Where it's stored and what runs
  • NSGlobalDomain com.apple.sound.beep.feedback

For false:

/usr/bin/defaults write NSGlobalDomain com.apple.sound.beep.feedback -int 0 || echo 'nix-plist-manager: failed: /usr/bin/defaults write NSGlobalDomain com.apple.sound.beep.feedback -int 0' >&2
/usr/bin/defaults -currentHost delete NSGlobalDomain com.apple.sound.beep.feedback 2>/dev/null || true

For true:

/usr/bin/defaults write NSGlobalDomain com.apple.sound.beep.feedback -int 1 || echo 'nix-plist-manager: failed: /usr/bin/defaults write NSGlobalDomain com.apple.sound.beep.feedback -int 1' >&2
/usr/bin/defaults -currentHost delete NSGlobalDomain com.apple.sound.beep.feedback 2>/dev/null || true

For unset:

/usr/bin/defaults delete NSGlobalDomain com.apple.sound.beep.feedback 2>/dev/null || true
/usr/bin/defaults -currentHost delete NSGlobalDomain com.apple.sound.beep.feedback 2>/dev/null || true

System Settings › Sound › Play sound on startup

nix-darwin · system-wide ✓ Verified on macOS 27
applications.systemSettings.sound.soundEffects.playSoundOnStartup = true;

true or false

Where it's stored and what runs

For false:

/usr/sbin/nvram StartupMute=%01

For true:

/usr/sbin/nvram StartupMute=%00

System Settings › Sound › Play user interface sound effects

home-manager · per user Not verified
applications.systemSettings.sound.soundEffects.playUserInterfaceSoundEffects = true;

true or false "unset" puts back macOS's default.

Where it's stored and what runs
  • NSGlobalDomain com.apple.sound.uiaudio.enabled

For false:

/usr/bin/defaults write NSGlobalDomain com.apple.sound.uiaudio.enabled -int 0 || echo 'nix-plist-manager: failed: /usr/bin/defaults write NSGlobalDomain com.apple.sound.uiaudio.enabled -int 0' >&2
/usr/bin/defaults -currentHost delete NSGlobalDomain com.apple.sound.uiaudio.enabled 2>/dev/null || true

For true:

/usr/bin/defaults write NSGlobalDomain com.apple.sound.uiaudio.enabled -int 1 || echo 'nix-plist-manager: failed: /usr/bin/defaults write NSGlobalDomain com.apple.sound.uiaudio.enabled -int 1' >&2
/usr/bin/defaults -currentHost delete NSGlobalDomain com.apple.sound.uiaudio.enabled 2>/dev/null || true

For unset:

/usr/bin/defaults delete NSGlobalDomain com.apple.sound.uiaudio.enabled 2>/dev/null || true
/usr/bin/defaults -currentHost delete NSGlobalDomain com.apple.sound.uiaudio.enabled 2>/dev/null || true