Bem, eu descobri qual era o problema, e vou descrevê-lo aqui caso alguém chegue aqui com problemas semelhantes.
Algo estava impedindo que unity-settings-daemon
(doravante usd
) funcionasse corretamente. No meu caso, esse algo era indicator-keyboard
(daqui em diante indkbd
) que falhou ao carregar por alguma razão que eu ainda não entendi muito bem, mas tem algo a ver comigo adicionando um novo layout de teclado (por que ele causou isso crash - e sem tão pouco como uma mensagem de erro também - está além de mim). E aparentemente, indkbd
crashing causou usd
a falhar também (novamente, sem uma explicação da causa).
Eu não sei qual processo é executado em usd
, mas parece que ele continua sendo lançado várias vezes. Isso foi responsável por grande parte do comportamento estranho que eu estava presenciando (como a constante flutuação entre dois temas e a constante desaparição e reaparição do cursor do mouse). Além disso, qualquer coisa que usd
cuida depois de indkbd
não foi resolvida, o que explica por que algumas outras coisas não estavam funcionando.
Consegui descobrir onde estava o problema executando dmesg
e examinando o segfault
: eles eram de incontáveis usd
processos, mais alguns indkbd
's - o que me fez suspeitar de indkbd
não estava carregando corretamente, o que de fato foi resolvido depois de restaurar minha lista de layout de teclado ( /usr/share/X11/xkb/rules/evdev.xml
).
O titular usd-locate-pointer
parece ser responsável por atrair atenção visual para o cursor do mouse ao pressionar Ctrl. Provavelmente não tem nada a ver com o problema que tive, é apenas que mais e mais instâncias dele foram lançadas por usd
quando o último foi constantemente relançado (o que sobrecarregou ainda mais o meu sistema).