Nieuws:

Welkom, Gast. Alsjeblieft inloggen of registreren.
Heb je de activerings-mail niet ontvangen?

Auteur Topic: [OPGELOST]Wallpaper veranderen met cron  (gelezen 285 keer)

Offline martijn1985

  • Lid
  • Steunpunt: Nee
[OPGELOST]Wallpaper veranderen met cron
« Gepost op: 2013/06/24, 21:55:38 »
Ik heb het volgende script gemaakt om automatisch mijn wallpaper aan te passen
DIR=/home/martijn/Dropbox/Wallpapers

# Command to Select a random file from directory
PIC="file://$(
for p in $DIR ; do
 ls $DIR/*.*
done | shuf -n1
)"

#stel het random bestand in als wallpaper
gsettings set org.gnome.desktop.background picture-uri $PIC

als ik deze gewoon uitvoer via de terminal werkt het en veranderd mijn wallpaper ook. Echter als ik hem instel als cronjob dan werkt het niet. Mijn crontab ziet er als volgt uit:
#!/bin/bash
#Borrowed from anacron
SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
#End borrowed from anacron

*/15 * * * * /home/martijn/scripts/change_wallpaper>>/home/martijn/scripts/wallpaper.log 2>&1

Ik heb al de shell en path variabelen ingesteld in de crontab zelf, maar elke keer dat de opdracht gedraaid wordt ontstaat de volgende foutmelding:

(process:844): dconf-WARNING **: failed to commit changes to dconf: Fout bij starten van de opdrachtregel ‘dbus-launch --autolaunch=a48c3c0c38823ed60e3697e2518ebec6 --binary-syntax --close-stderr’: Dochterproces eindigde met code 1

googlen op die foutmelding levert mij niets op waar ik wat mee kan. Ik vermoed dat het ergens te maken heeft met de instellingen van cron, maar wie kan me hierbij verder helpen?
« Laatst bewerkt op: 2013/06/27, 21:20:08 door martijn1985 »


Offline martijn1985

  • Lid
  • Steunpunt: Nee
Re: Wallpaper veranderen met cron
« Reactie #2 Gepost op: 2013/06/25, 19:19:07 »
Ja, het commando van de tweede site die je noemt werkt

in plaats van
gsettings set org.gnome.desktop.background picture-uri $PICmoet het
DISPLAY=:0 GSETTINGS_BACKEND=dconf gsettings set org.gnome.desktop.background picture-uri $PICzijn.

Dankjewel!