Como já foi dito, sudo
não é necessário (nem para executar comandos em rc.local
em geral, nem para executar xgamma
especificamente) mas o problema aqui é xgamma
requer (é claro) o X servidor a ser executado, mas rc.local
é executado (como é declarado nos comentários de rc.local
) no final de cada runlevel multiusuário, o que é muito antes de o servidor X ser iniciado.
Para executar o comando logo após o servidor X ser iniciado, crie um script chamado .xinitrc
em ~
( touch ~/.xinitrc
), marque-o como executável com chmod +x ~/.xinitrc
e coloque o comando lá:
#!/bin/sh -e
xgamma -gamma .8
exit 0