Atualize para 17.10. Não congela mais ao executar o script.
Eu escrevi um script para alterar o arquivo de fundo no Mate 17.04:
Primeiro, uma vez eu emiti este comando:
gsettings set org.gnome.desktop.background picture-uri file:///home/me/temp/background.jpg
Então eu executei este script:
#/bin/bash
find -L ~/Pictures -name '*.jpg'>~/jpegs.text
while true ; do
convert 'shuf -n 1 jpegs.text' -resize 1920x1080 ~/temp/background.jpg
sleep 60
done
Trabalhou lindamente até ??? Após 20 minutos, o sistema congela. Muito repetidamente. Proporcionalmente mais rápido se reduzir o tempo de sono.
Então eu imaginei que poderia ser que escrever no arquivo de fundo enquanto o sistema queria fazer algo com ele pudesse ser um problema. Então eu vim com isto:
#/bin/bash
find -L ~/Pictures -name '*.jpg'>~/jpegs.text
while true ; do
convert 'shuf -n 1 jpegs.text' -resize 1920x1080 ~/temp/backgroundtemp.jpg
gsettings set org.gnome.desktop.background picture-uri file:///home/john/temp/backgroundtemp.jpg
cp ~/temp/backgroundtemp.jpg ~/temp/background.jpg
gsettings set org.gnome.desktop.background picture-uri file:///home/john/temp/background.jpg
sleep 60
done
Esta versão coloca uma nova imagem no arquivo "temp" e diz ao gsettings para usar esse arquivo. Em seguida, copia-o para o arquivo "real" e reposiciona os gsettings para o arquivo "real", de modo que na próxima vez que ele não for gravado em um arquivo que o gsettings está usando. Trabalhei por horas! Maravilhoso! Então o sistema congelou novamente.
Note que, se o script não estiver em execução, o sistema não congelará.
Estou fazendo algo errado? Em caso afirmativo. Não é o roteiro, eu acredito. Possivelmente a interação de comandos repetidos de gsettings.
Editar: Esqueceu de mencionar. Congelar inclui tudo, exceto mouse.
Atualize para 17.10. Não congela mais ao executar o script.