I find it annoying to hear a loud camera shutter sound every time I take a screenshot in GNOME. Disabling all system sounds in the settings also silences the notifications and other sounds not just the screenshot sound.
The best way to silence only the screenshot is by using a local user override. This method is safer than modifying system files because it survives OS updates and doesn't require sudo.
The Solution
Run these commands in your terminal to create a "silent" version of the screenshot sound for your user account:
Create the local sound theme directory structure
mkdir -p ~/.local/share/sounds/freedesktop/stereo/mkdir -p: Creates the specific folder path required by the XDG Sound Theme Specification.
Link the sounds /dev/null
ln -s /dev/null ~/.local/share/sounds/freedesktop/stereo/screen-capture.ogaln -s /dev/null ...: Creates a symbolic link. Instead of playing a real audio file, GNOME will try to "play" /dev/null, which contains no data, resulting in total silence.
Why This is the Best Method
GNOME follows a specific search order for sounds. It looks in your home directory (~/.local/share/sounds/) before looking at the system files (/usr/share/sounds/). By placing a "silent" file with the same name in your home directory, you effectively hide the original sound without deleting it.
How to Revert
If you ever want the shutter sound back, simply delete the links you created:
rm ~/.local/share/sounds/freedesktop/stereo/screen-capture.oga
rm ~/.local/share/sounds/freedesktop/stereo/camera-shutter.ogaNote: You may need to log out and back in (or restart GNOME) for the changes to take effect.