Linux - the Best!

Your Explorer by Linux links...

Денис Колисниченко

Linux Советы

http://www.dkws.org.ua/

Совет №4. Автоматическая смена обоев в GNOME

Наверное, многие из нас видели программу Webshots Desktop. Жалко, что она работает только под Windows. Хотелось бы, чтобы у нее была Linux-версия. А пока ее нет, мы попробуем средствами самой Linux написать ее аналог. Для тех, что не знает, что это за программа, вкратце расскажу, как она работает. Есть каталог с обоями рабочего стола - /home/den/Wallpapers/. Каждый раз при запуске GNOME менять обои вручную просто лень. Задача простая: нужно автоматизировать эту «рутинную» процедуру. В этом нам поможет следующий сценарий:

#!/bin/bash

export DIR='/home/den/Wallpapers/'

export NUMBER=$RANDOM

export TOTAL=0

for f in `ls $DIR`

do

let "TOTAL += 1"

done

let "NUMBER %= TOTAL"

export CURRENT=0

for f in `ls $DIR`

do

if [ $CURRENT = $NUMBER ]

then

/usr/bin/gconftool-2 -t string -s /desktop/gnome/background/picture_filename $DIR/$f

break

fi

let "CURRENT += 1"

done


Вам особо вникать в сценарий не нужно. Нужно только знать, что он с помощью команды gconftool-2 устанавливает файл обоев, который выбирается случайным образом в первой части сценария из каталога, заданного переменной $DIR. Сохраните этот файл под именем change_wp. Сделаем файл исполнимым (как раз можно проверить работу предыдущего совета):

$ chmod +x change_wp

Для изменения обоев вам достаточно выполнить команду (обои будут изменены мгновенно):

./change_wp

А теперь, собственно, займемся автоматизацией – ведь вы же не будете вводить эту команду каждый раз при запуске GNOME. Тут можно поступить двумя способами: или же поместить вызов этого сценария в таблицу crontab (демон crond должен быть запущен) или добавить команду вызова этого сценария в автозапуск GNOME. Crond предлагает больше возможностей, например, вы можете установить, чтобы обои менялись каждый час. А во втором случае обои будут меняться только при перезагрузке GNOME, то есть всякий раз, когда вы регистрируетесь в GNOME.

Автозапуск GNOME