Eu apenas estou supondo aqui, mas o daemon de plano de fundo pode estar sendo executado como usuário diferente, que não tem permissão para acessar a exibição.
Você pode usar xhost
para controlar o acesso do usuário:
The xhost program is used to add and delete host names or user names to the list allowed to make connections to the X server.
Você pode testar se esse é o problema executando:
xhost +
a partir de uma janela de terminal, que permitirá a qualquer usuário acessar a exibição.
xhost +
(insira o nome de usuário aqui)
permitirá o acesso de um usuário específico.