Нужно в скрипте bash использовать полный путь файла рисунка рабочего стола. Какой командой можно его получить?
В kde3 была команда: dcop kdesktop KBackgroundIface currentWallpaper 1
А в kde4 что-то не соображу как сделать.
Не совсем то что нужно, но направление правильное, спасибо за наводку. Как раз в этом файле есть параметр "wallpaper" - содержит то что нужно. Но такой параметр присутствут в двух секциях. т.е. если изменить команду так: cat ~/.kde/share/config/plasma-appletsrc | grep -oP '(?<=wallpaper=).*'
то выводит две строки. Нужная мне строка в секции "[Containments][1][Wallpapers][image]".
Рано или поздно подобная функция будет добавлена в DBus-интерфейс плазмы, а грепать конфиг - некошерный способ, т.к. в следующих версиях и имя конфига и имя опции могут измениться.
cat ~/.kde/share/config/plasma-appletsrc | grep -oP '(?<=userswallpapers=).*(?=,)'
Так пойдет?
Не совсем то что нужно, но направление правильное, спасибо за наводку. Как раз в этом файле есть параметр "wallpaper" - содержит то что нужно. Но такой параметр присутствут в двух секциях. т.е. если изменить команду так:
cat ~/.kde/share/config/plasma-appletsrc | grep -oP '(?<=wallpaper=).*'
то выводит две строки. Нужная мне строка в секции "[Containments][1][Wallpapers][image]".
Вот такая конструкция работает:
grep 'wallpaper=' ~/.kde/share/config/plasma-appletsrc | tail --lines=1 | sed 's/wallpaper=//'
Еще раз спасибо за помощь.
Видимо, я не докурил этот файлик )
Рано или поздно подобная функция будет добавлена в DBus-интерфейс плазмы, а грепать конфиг - некошерный способ, т.к. в следующих версиях и имя конфига и имя опции могут измениться.
Отправить комментарий