Há respostas de bajillion na internet, a maioria delas confusas.
A chave é que você precisa mapear 'keycode 66' para sua hiper-chave, remover o mapeamento dessa chave de outros mod {1,2,4,5} (somente se presente) e então definir mod3.
Abra ~ / .Xmodmap e coloque o seguinte:
! Unmap capslock
clear Lock
keycode 66 = Hyper_L
! Leave mod4 as windows key _only_
remove mod4 = Hyper_L
! Set mod3 to capslock
add mod3 = Hyper_L
Execute isto
xmodmap ~/.Xmodmap
Se algo der errado, você poderá redefinir seu teclado com:
setxkbmap -layout us
Causas prováveis de algo explodindo são que o Hyper_L é mapeado em algum outro lugar. Corrija isso executando xmodmap sem args para descobrir o que mais está vinculado a Hyper_L. Quando você sabe o que precisa remover, mande um 'remover BINDING = Hyper_L' no seu arquivo .Xmodmap.
O arquivo .Xmodmap será carregado quando você abrir as sessões do X11, você deve ter esse mapeamento em vigor na próxima vez que fizer login ou reinicializar.
Esta configuração funciona para a configuração do ubuntu 14.04. Se você tiver um * nix diferente e isso não funcionar, poste o que você fez para contornar isso aqui e eu o incorporarei na resposta.