Editar Gsettings do Cron via script não funciona [duplicado]

-1

Então, estou tentando mudar meu tema de uma luz para uma versão sombria à noite, e vice-versa pela manhã. No entanto, o Gsettings não funciona no Cron, e as soluções postadas aqui aqui e aqui não parecem funcionar, nem os postados nos comentários abaixo deles.

Este é o script que o Cron está executando:

#!/bin/bash

#Export DBUS_SESSION_BUS_ADDRESS environment variable
PID=$(pgrep -o gnome-shell)
export DBUS_SESSION_BUS_ADDRESS=$(grep -z DBUS_SESSION_BUS_ADDRESS/proc/$PID/environ|cut -d= -f2-)

#Change theme
gsettings set org.gnome.desktop.interface gtk-theme 'Arc-Dark'
gsettings set org.gnome.shell.extensions.user-theme name 'Arc-Dark'

E este é o erro que estou chegando em dead.letter (maneira Crons de erros de registro):

grep: /proc/1098/environ: Permission denied

(process:28536): dconf-WARNING **: failed to commit changes to dconf: The given address is empty


grep: /proc/1098/environ: Permission denied

(process:28811): dconf-WARNING **: failed to commit changes to dconf: The given address is empty

Eu sei que posso usar o sudo -u para executar o script, mas prefiro não usar o cron do root.

    
por jorvi 02.12.2015 / 19:04

1 resposta

0

Eu estava tendo um problema semelhante executando um comando dconf do cron. No meu caso, adicionei dbus-launch ao início do meu comando, além de adicionar uma variável DISPLAY=:0 ao arquivo crontab.

meu crontab tem esta aparência: DISPLAY=:0 0 6 * * * dbus-launch /path/to/my/dconf-script

    
por Antonios Hadjigeorgalis 14.12.2016 / 14:51