Eu tenho trabalhado como fazer isso. Primeiro, você precisa definir a variável de ambiente XCURSOR_DISCOVER
antes de executar o programa que está configurando o cursor do mouse, no meu caso, rdesktop
:
$ XCURSOR_DISCOVER=1 rdesktop ...
Isso imprimirá os bitmaps e hashes de cada cursor uma vez somente quando forem definidos pela primeira vez. Aqui está o que cuspiu quando o cursor padrão do Windows foi definido, que é a imagem que eu quero substituir:
Cursor image name: 24020000002800000528000084810000
...
Cursor image name: 7bf1cc07d310bf080118007e08fc30ff
...
Cursor hash 24020000002800000528000084810000 returns 0x0
Quando o Xcursor procura por cursores ausentes, o caminho de busca inclui ~/.icons/default/cursors
, então é onde podemos colocar imagens para cursores ausentes.
$ mkdir -p ~/.icons/default/cursors
Agora, aqui você apenas aponta qualquer hash para uma imagem existente. Quando um aplicativo tenta definir o hash, essa imagem será usada. Nesse caso, queremos que a imagem left_ptr
seja usada (essa é a seta padrão) do tema Vanilla-DMZ
:
$ ln -s /usr/share/icons/Vanilla-DMZ/cursors/left_ptr ~/.icons/default/cursors/24020000002800000528000084810000
É isso! A alteração deve ser visível imediatamente.