Isso acontece porque a unidade systemd não é executada pelo usuário como padrão. Na unidade systemd, sob o serviço de seção, adicione as duas linhas a seguir
User=<yourusername>
Environment=DISPLAY=:0
e a unidade deve funcionar.
Eu tenho uma unidade systemd que executa um script que supostamente toca um som no caso de um determinado evento acontecer, ou seja, ele contém uma linha
mplayer /home/myusername/Music/audiofile.WAV
Isso não acontece. O script parece correto, já que funciona quando executado sozinho.
Por que isso acontece e como eu corrijo isso?
Tags systemd