A resposta de Long é a melhor para desktops modernos como o Gnome, porque o próprio Gnome usa o xkb e sobrescreve as configurações do xmodmap por padrão (também, o xmodmap está saindo e não é suportado no Wayland). Infelizmente, ainda funcionará apenas até a reinicialização.
Você pode aplicar esta opção permanentemente para o seu desktop Gnome com este comando:
gsettings set org.gnome.desktop.input-sources xkb-options "['lv3:caps_switch']"
É claro que você também pode fazer essa alteração permanentemente e até mesmo em todo o sistema, sem usar o Gnome. Se você usa o Gnome, você ainda deve usar o comando acima para evitar que o Gnome sobrescreva esta configuração. Para Arch , você pode adicionar um arquivo /etc/X11/xorg.conf.d/90-custom-kbd.conf
com o seguinte conteúdo:
Section "InputClass"
Identifier "keyboard defaults"
MatchIsKeyboard "on"
Option "XKbOptions" "lv3:caps_switch"
EndSection
Suponho que isso difere entre as distribuições, portanto, sua milhagem pode variar.