Как настроить слайд-шоу обоев рабочего стола?
Я провел некоторое время и пробовал разные вещи, но ничего не работает. Вот что я попробовал (сменив слайд-шоу вручную):
- Создайте новую папку / usr / share / background /mywallpapers и добавьте туда свой собственный background-1.xml.
- Копирование нескольких моих собственных обоев в / usr / share / фоны /
- Скопируйте /usr/share/backgrounds/Contest/background-1.xml в / usr / share / Backgrounds /
Я вышел из системы и до сих пор без изменений в приложении Внешний вид.
Я слышал о Wallch, но не хочу, чтобы какое-то приложение работало в фоновом режиме. Я даже не уверен, что Wallch будет работать с Gnome 3. Я также попробовал gnome-3-wp (приложение Gnome 3 Wallpaper Slideshow), но он просто не работает для Ubuntu 11.10 Oneiric.
У кого-нибудь есть решение?
9 ответов
Я думаю, что я опоздал, но...
Я создал фон XML (с полными описаниями путей) и сохранил его в /usr/share/backgrounds/my-background.xml
затем я отредактировал /usr/share/gnome-background-properties/ubuntu-wallpapers.xml добавив
<wallpaper deleted="false">
<name>My background</name>
<filename>/usr/share/backgrounds/my-background.xml</filename>
<options>zoom</options>
</wallpaper>
просто сохраняет файл и новые обои слайд-шоу отображаются в окне появлений
надеюсь, что это работает для вас:D
Кроме того, при редактировании /usr/share/gnome-background-properties/ubuntu-wallpapers.xml полное пропуск тегов параметров позволит вам выбрать плитку, масштабирование, центрирование, масштабирование, заливку или интервал в графическом интерфейсе внешнего вида в настройках.,
Пример с использованием приведенного выше примера Locutus:
<wallpaper deleted="false">
<name>My background</name>
<filename>/usr/share/backgrounds/my-background.xml</filename>
</wallpaper>
Я использую следующий скрипт, который я написал, и запускаю его с помощью средства запуска gnome 'Startup Applications'. Для повышения производительности системы скрипт приостанавливает слайд-шоу во время работы XMBC или VLC или когда загрузка системы превышает указанное пороговое значение.
Сохраните скрипт в файл и выполните команду chmod +x, чтобы он выполнялся самостоятельно.
wallpaper-slideshow.sh
#! / USR / бен / питон импорт ОС импортировать случайный время импорта импорт ре подпроцесс импорта # каталог, где хранятся картинки pictureDirectory = os.getenv ("HOME") + "/.xbmc/userdata/Thumbnails/Video/Fanart" # время в секундах ожидания между переходами Продолжительность = 60 # максимальная загрузка системы до приостановки слайд-шоу maxSysLoad=0,5 def getPictureList (): результат = [] для root, sub, файлов в os.walk(pictureDirectory): для поиска в файлах: если f.endswith(('.jpeg','.jpg','png','.tbn')): result.append(os.path.join(root, f)) вернуть результат def getSystemLoad(): uptimeString = subprocess.check_output(["uptime"]) return float(re.match(r".* средняя загрузка: ([^,] +),. *", uptimeString).group (1)) def isProcRunning (имя): с открытым (os.devnull, "w") как devnull: return subprocess.call (["pidof", name], stdout = devnull) == 0 def setDesktopBackgroundPicture(filename): return subprocess.call (["gsettings", "set", "Org.gnome.desktop.background", "picture-uri", '"file: //' + filename + '"']) def main (): time.sleep (10) # задержка запуска pictureList = getPictureList() пока 1: если getSystemLoad() > maxSysLoad или isProcRunning("vlc") или isProcRunning("xbmc.bin"): напечатать "показ слайдов приостановлен, когда VLC или XMBC работают, или высокая загрузка системы" еще: picture = random.choice(pictureList) распечатать картинку setDesktopBackgroundPicture(фото) time.sleep (длительность) if __name__ == "__main__": главный()
Итак, небольшой обходной путь после дальнейших экспериментов состоит в том, что вы можете отредактировать /usr/share/background-1.xml как root.
Вы меняете строку под
<!-- This animation will start at midnight. -->
и замените источники изображений так, чтобы они соответствовали вашим фотографиям следующим образом.
<static>
<duration>1795.0</duration>
<file>/home/manos/futuristicHD/2907.jpg</file> <!-- first wallpaper -->
</static>
<transition>
<duration>5.0</duration>
<from>/home/manos/futuristicHD/2907.jpg</from> <!-- first wallpaper -->
<to>/home/manos/futuristicHD/62977.jpg</to> <!-- second wallpaper -->
</transition>
Есть две вещи, на которые следует обратить внимание:
- Работают только полные пути.
- Последний
<to>path/lastfoto.jpg</to>
строка во всем XML-файле должна соответствовать первой<file>path/firstfoto.jpg</file>
строка в файле XML.
Вы можете пойти в терминал и набрать
wallch -h
Есть возможность запустить его в фоновом режиме.
Варианты Wallch
-h or --help Show help options.
--earth Starts live earth wallpaper, updating every 30 minutes.
--once Change desktop background once by picking randomly an image from the list.
--constant Starts changing randomly pictures from the list, without opening the Wallch GUI.
Заметки
--once and --constant will only work if you have at least 2 images in the list.
--earth will only work if you have Internet connection.
Не уверен, что это поможет, но да:)
Я обычно делаю
wallch --constant
тогда я Ctrl+Z, чтобы остановить его и вернуться в терминал, затем я набираю bg
отправить процесс в фоновый режим, чтобы он продолжал работать.
Ключевым моментом здесь является указание Gnome на местоположение вашего файла слайд-шоу в формате XML. По какой-то причине этот параметр недоступен в dconf-editor
, но вы можете использовать gsettings
чтобы получить и установить его. (Ссылка: ArchWiki):
Чтобы прочитать текущие настройки:
GSETTINGS_BACKEND=dconf gsettings get org.gnome.desktop.background picture-uri
Чтобы установить новое слайд-шоу:
GSETTINGS_BACKEND=dconf gsettings set org.gnome.desktop.background picture-uri 'file:///home/username/path/to/your/slideshow.xml'
Возможно, вы создали слайд-шоу в формате XML ранее, или вы можете использовать этот скрипт.
Я могу порекомендовать Crebs, который, к сожалению, недоступен для Ubuntu 11.10 через PPA, но вы можете скачать и установить пакет для Natty (что немного рискованно) или использовать пакет с исходным кодом - после распаковки у вас нет чтобы установить что-нибудь, просто запустите скрипт crebs/bin/crebs
скрипт (обратите внимание, что у Crebs могут быть некоторые зависимости, запустите скрипт из терминала, чтобы узнать).
Как только вы создадите и сохраните слайд-шоу Crebs, результирующий XML-файл будет сохранен в ~/.crebs/
каталог - как упоминалось выше, просто запустите:
GSETTINGS_BACKEND=dconf gsettings set org.gnome.desktop.background picture-uri "file://$HOME/.crebs/MySuperCoolSlideshow.xml"
(не забудьте изменить имя файла), и слайд-шоу будет применено немедленно.
Проверьте это сообщение на форуме.
Я думаю, что это именно то, что вы хотите. Ваш пользовательский фон будет добавлен в "изменить фоновый рисунок обоев, если вы будете следовать инструкциям и запускать скрипт.
Это очень помогло мне!
Я очень опаздываю на этот пост, но, увидев, что ответа пока нет, я опубликую свой.
Существует простой способ создать отдельное слайд-шоу обоев, добавив другой файл XML в /usr/share/backgrounds/
,
Загрузите создатель XML-фона и распакуйте его в свой домашний каталог. Тогда беги install.sh
, Это создаст новый скрипт Nautilus, который вы можете использовать для создания слайд-шоу обоев. Вы можете попробовать создать свой собственный XML-файл, но, честно говоря, это намного проще.
Теперь загрузите все нужные вам изображения в папку (желательно /usr/share/ Backgrounds/foler_name_here, поскольку вы не можете перемещать изображения в другое место после создания XML). Перейдите к этой папке в Nautilus, щелкните правой кнопкой мыши, перейдите в "Сценарии" и выберите "Создатель фона XML". Теперь выберите нужные настройки, и должен появиться новый файл XML.
Теперь вам нужно внести некоторые изменения, чтобы диалог "Видимости" распознал ваше новое слайд-шоу.
sudo gedit /usr/share/gnome-background-properties/ubuntu-wallpapers.xml
Теперь добавьте это куда-нибудь:
<wallpaper deleted="false">
<name>name_of_slideshow</name>
<filename>path_to_your_XML.xml</filename>
<options>zoom</options>
</wallpaper>
Обязательно замените "path_to_your_XML.xml" на ваш фактический путь.
Теперь, если вы снова откроете настройки "Внешний вид", вы должны увидеть свое слайд-шоу вместе с другими.
Мой скрипт на Python для смены обоев по времени и слайд-шоу:
Слайдер-шоу
Вам просто нужно поместить все изображения в папку seq и запустить скрипт, пожалуйста, не называйте свои изображения специальными символами, такими как ()/&¨%, изображения не должны иметь одинаковый формат или похожие имена.Пример:
nohup /home/$USER/Imagens/wallpaper_shift_linux/wallpaper_in_seq_py &