[gelöst]Hintergrundbild ändern mit gsettings und crontab

Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
Antworten
Benutzeravatar
fragenfrager
Beiträge: 658
Registriert: 31.12.2003 08:47:15

[gelöst]Hintergrundbild ändern mit gsettings und crontab

Beitrag von fragenfrager » 28.08.2013 21:00:16

Ähnlich wie in diesem Thread möchte ich mein Hintergrundbild stündlich ändern. Allerdings diesmal mit gsettings statt mit gconftool-2.
Das bereits funktionierende Bildänderscript:
#!/bin/bash
TIME=`date +%H`
#gnome3:
gsettings set org.gnome.desktop.background picture-uri file:///home/user1/Earth/"$TIME".png
Jetzt komme ich nicht mit dem cronjob weiter. Hab wie im ersten Thread dieses Xdbus script und den gleichen cronjob laufen aber nichts passiert. Irgendwelche Ideen?
Zuletzt geändert von fragenfrager am 01.09.2013 16:47:35, insgesamt 2-mal geändert.

Radfahrer

Re: Hintergrundbild stündlich ändern mit gsettings und cron

Beitrag von Radfahrer » 28.08.2013 21:18:27

Welcher Desktop?
Für Gnome 3 gibt es eine Extension, die genau das macht:

https://extensions.gnome.org/extension/543/backslide/

Benutzeravatar
fragenfrager
Beiträge: 658
Registriert: 31.12.2003 08:47:15

Re: Hintergrundbild stündlich ändern mit gsettings und cron

Beitrag von fragenfrager » 28.08.2013 21:24:28

ja ja, gnome 3.
Danke für den Hinweis aber ich möchte das mit cron und gsettings machen, muss doch wohl möglich sein?
Diese extension ist hier vermutlich schon drauf, ich meine mich an sowas erinnern zu können...

Radfahren macht glücklich :D

inne
Beiträge: 3289
Registriert: 29.06.2013 17:32:10
Lizenz eigener Beiträge: GNU General Public License
Kontaktdaten:

Re: Hintergrundbild stündlich ändern mit gsettings und cron

Beitrag von inne » 28.08.2013 22:26:36

Radfahrer hat geschrieben:Welcher Desktop?
Für Gnome 3 gibt es eine Extension, die genau das macht:

https://extensions.gnome.org/extension/543/backslide/
Nope, tut die nicht. ;-)
fragenfrager hat geschrieben:#!/bin/bash
TIME=`date +%H`
#gnome3:
gsettings set org.gnome.desktop.background picture-uri file:///home/user1/Earth/"$TIME".png
Was ist das Problem? Soweit ich weiss, muss im cronjob das %-Zeichen escaped werden.

Als cronjob:

Code: Alles auswählen

@hourly gsettings set org.gnome.desktop.background picture-uri "file://$HOME/Earth/$(date +\%H).png"

Benutzeravatar
fragenfrager
Beiträge: 658
Registriert: 31.12.2003 08:47:15

Re: Hintergrundbild stündlich ändern mit gsettings und cron

Beitrag von fragenfrager » 28.08.2013 23:07:14

ja, warum eigentlich nicht...
warum soll cron erst ein script aufrufen wenns gleich in cron geht? das ist ein interessanter Ansatz ;)

allerdings bekomme ich jetzt folgende Mailmeldung:
/bin/sh: 3: /usr/bin/gsettings: Syntax error: Unterminated quoted string
Das Problem bisher war, dass ich mit cron ein "xorg/gui/Programm" (gsettings) aufrufen wollte und dann xdbus-irgendwas dazwischenfunkt. Habs noch nicht behirnt :oops:

inne
Beiträge: 3289
Registriert: 29.06.2013 17:32:10
Lizenz eigener Beiträge: GNU General Public License
Kontaktdaten:

Re: Hintergrundbild stündlich ändern mit gsettings und cron

Beitrag von inne » 29.08.2013 09:08:04

fragenfrager hat geschrieben: allerdings bekomme ich jetzt folgende Mailmeldung:
/bin/sh: 3: /usr/bin/gsettings: Syntax error: Unterminated quoted string
Also ich habe in meiner crontab das folgende, ähnliche und funktionierende Kommando:

Code: Alles auswählen

 
@hourly env DISPLAY=":0.0" notify-send "Uhrzeit" "$(date +'Es ist \%R Uhr.')"

Benutzeravatar
fragenfrager
Beiträge: 658
Registriert: 31.12.2003 08:47:15

Re: Hintergrundbild stündlich ändern mit gsettings und cron

Beitrag von fragenfrager » 29.08.2013 17:57:21

sehr gut! es funktioniert :)
In der crontab steht jetzt folgendes:

Code: Alles auswählen

* 0 * * * env DISPLAY=":0.0" /usr/bin/gsettings set org.gnome.desktop.background picture-uri file:///home/user1/Earth/"$(date +\%H)".png
vielen Dank für die Hilfe :THX:

edit:
habe mich vertan, richtiger crontab Eintrag ist:

Code: Alles auswählen

0 * * * * env DISPLAY=":0.0" /usr/bin/gsettings set org.gnome.desktop.background picture-uri file:///home/user1/Earth/"$(date +\%H)".png

Antworten