Здійснення пошуку в Google розкриває команду
xfconf-query -c xfce4-desktop -p /backdrop/screen0/monitor0/image-path -s <image-path>
Перший раз, коли я запускаю цю команду, я отримав повідомлення про те, що властивість / backdrop / screen0 / monitor0 / image-path не існує на каналі xfce4-desktop.
Отже, я створив цю властивість:
xfconf-query -c xfce4-desktop -p /backdrop/screen0/monitor0/image-path -n -t string -s <image-path>
Але все-таки фон не змінився.
Потім я звичайно змінив фон з space-03.jpg на space-04.jpg, як правило, із програми XUbuntu Desktop Settings. Потім я бігаю:
$ xfconf-query -c xfce4-desktop -p /backdrop -lv
/backdrop/screen0/image-path /usr/share/backgrounds/space-03.jpg
/backdrop/screen0/monitor0/image-path /usr/share/backgrounds/space-03.jpg
/backdrop/screen0/monitor0/image-show true
/backdrop/screen0/monitor1/image-path /usr/share/backgrounds/space-03.jpg
/backdrop/screen0/monitor1/image-show true
/backdrop/screen0/monitorLVDS1/workspace0/color-style 0
/backdrop/screen0/monitorLVDS1/workspace0/image-style 5
/backdrop/screen0/monitorLVDS1/workspace0/last-image /usr/share/backgrounds/space-04.jpg
Як бачите, властивість /backdrop/screen0/monitorLVDS1/workspace0/last-image
змінилося (!).
Якщо я зміню цю властивість, то вона працює просто чудово, але річ у тому, що мені потрібно знайти загальний спосіб, щоб реалізувати її у своїй програмі (Wallch).
Навіть Variety
(що, до речі, дуже приємна програма) не працює належним чином на моїй машині і вирішує змінити властивість, /backdrop/screen0/monitor0/image-path
яка нічого не робить.
Одним із способів було б створити всі можливі властивості та змінити їх усі за потребою одночасно. Мені це рішення не подобається через 2 причини:
- Кілька системних дзвінків, які знадобляться
- В один момент мені потрібно буде пройти шлях поточного зображення (для того, щоб відкрити папку до нього, скопіювати шлях до нього, видалити його та деякі інші функції, які надає програма). Я б не знав, яке властивість утримує шлях справді заданого зображення для того, щоб зробити його доступним для програми.
Я також не розумію, чому XFCE зробив це так складно. Чому одного властивості не вистачить, як у геттінгах?