?

Log in

No account? Create an account
tech

GLSlideshow

Только захотел восславить полюбившийся скринсейвер, как он стал иногда зависать после последних апдейтов убунты. Не знаю, что на него повлияло, новый gdm, compiz или сочетание этого с экспериментальными драйверами интеловской карточки. Но вот беда виснет причем не сразу и не всегда. Если переключиться в консоль и сделать sudo service gdm restart, то все оживает, кроме не сохраненных данных в редакторах, однако я имею привычку жать ctrl-s на подсознательном уровне, поэтому данных не терял.

Скринсейвер интересный. Я искал себе слайдшоу с ken burns effect. И нашел только кде-шный smoothslideshow  у которого неразрешимые зависимости от старого КДЕ и он не компилируется.

И тут я нашел GLSlideshow в стандартном наборе гнома. Однако он крутил одну единственную картинку  случайно выбранную из системной папки. И нигде не было настроек, чтобы это поменять. Однако можно его настроить, как конфетку:

Поправить настройки скринсейвера, чтобы брал разные картинки и зумил.

Чтобы точно узнать, где искать настройки запустите
$ dpkg -S glslideshow.desktop
xscreensaver-gl: /usr/share/applications/screensavers/glslideshow.desktop

# nano -w /usr/share/applications/screensavers/glslideshow.desktop

Exec=glslideshow -root -zoom 70 -duration 15 -pan 15 -fade 2 -clip

Будет показано 70% картинки и за 15 секунд она плавно увеличится до 100, после чего потухнет также плавно за 2 секунды. "-clip" можно заменить на "-letterbox" (я так и сделал), если не хотите подгонки картинки под ширину экрана.

Полный список команд можно прочитать запустив "man glslideshow".

Чтобы поменять папку с картинками нужно добавить imageDirectory в ~/.xscreensaver (создайте его, если такого файла нет).

$ cat .xscreensaver
imageDirectory: /home/james/Media/Photos/

В общем до вчерашнего дня этот скринсейвер создавал мне отличное настроение. Сейчас немного огорчает. Но может оно пройдет со следующим обновлением, или будет время поковыряюсь поглубже.

Стоит отметить, что в КДЕ тоже есть подобный скринсейвер
SmoothSlideSaver 0.4.2

однако он староват и, судя по комментам, не компилируется.


Чтобы запустить GLSlideshow в KDE, нужно заменить целиком механизм скринсейверов. Вот так:
1: Turn off KDE's screen saver.
     Open the ``Control Center'' and select the ``Appearance & Themes / Screensaver'' page. Un-check ``Start Automatically''.

2: Find your Autostart directory.
     Open the ``System Administration -> Paths'' page, and see what your ``Autostart path'' is set to: it will probably be ~/.kde/Autostart/ or something similar.

3: Make xscreensaver be an Autostart program.
     Create a .desktop file in your autostart directory called xscreensaver.desktop that contains the following five lines:

[Desktop Entry]
Exec=xscreensaver
Name=XScreenSaver
Type=Application
X-KDE-StartupNotify=false


4: Make the various "lock session" buttons call xscreensaver.
     Replace the file kdesktop_lock or krunner_lock or kscreenlocker in /usr/bin/ (or possibly in /usr/kde/3.5/bin/ or possibly in /usr/lib/kde4/libexec/ or /usr/libexec/kde4/, depending on the distro and phase of the moon) with these two lines:

#!/bin/sh
xscreensaver-command -lock

Make sure the file is executable (chmod a+x).

Now use xscreensaver normally, controlling it via the usual xscreensaver-demo (1) and xscreensaver-command (1) mechanisms.
Tags: ,

Comments