WARNING: There is a wiki article on this topic right
here. If you follow the instructions on the wiki,
BE WARNED that others have reported that the apt-get route described on the wiki is dangerous and can cause serious problems with your system. To the best of my knowledge, this hasn't been confirmed on a R5F27 build -- and I'm not going to be the first to try! Use the second method instead which I have successfully ran on my R5F27 boxes.
DISCLAIMER: This is the procedure I used to install
xscreensaver on my R5F27 machines. I'm not sure if this is the most elegant way to do it, it's just what I did. I take no responsibility for damages etc. It worked for me on several different machines
I have based my instructions below HEAVILY on the wiki 2nd wiki post. Like most LINUX stuff, if you see a command run from
$ it's run by the mythtv user. If you see one run from the
# it's run from the root user. The sections displayed in the "code" boxes below can literally be copy/pasted into your ssh window assuming you're accessing your mythbox from another machine as you're reading this.
Installation of xscreensaver/xscreensavel-gl on your R5F27 box
You'll need 4 packages to get the xscreensaver/xscreensaver-gl working on your R5F27 system:
xscreensaver
xscreensaver-gl
libxxf86misc1
libgle3
Download them with a single command like this:
Code:
$ wget http://http.us.debian.org/debian/pool/main/x/xscreensaver/xscreensaver_4.24-5_i386.deb ; wget http://http.us.debian.org/debian/pool/main/x/xscreensaver/xscreensaver-gl_4.24-5_i386.deb ; wget http://http.us.debian.org/debian/pool/main/libx/libxxf86misc/libxxf86misc1_1.0.1-2_i386.deb ; wget http://http.us.debian.org/debian/pool/main/g/gle/libgle3_3.1.0-5.3_i386.deb
Note: copy/pasting the above will get you the i386 architecture debs. If you need something else (for example amd64, ia64, powerpc, etc.), please browse to
packages.debian.org and manually download them to your machine in a like fashion.
Now you'll install the debs via dpkg as follows:
Code:
# dpkg -i libxxf86misc1_1.0.1-2_i386.deb
# dpkg -i libgle3_3.1.0-5.3_i386.deb
# dpkg -i xscreensaver_4.24-5_i386.deb
# dpkg -i xscreensaver-gl_4.24-5_i386.deb
To setup xscreensaver to start-up automatically, simply add a line to your ~/.fluxbox/apps like this:
Code:
$ nano ~/.fluxbox/apps
Add the following line:
[startup] {xscreensaver}
As an example, here is what mine looks like:
Code:
[startup] {xset -dpms s off}
[startup] {xscreensaver}
[startup] {gnome-volume-manager}
[startup] {/usr/bin/x11vnc -nap -wait 50 -passwd mythtv -display :0 -forever -o$
[startup] {xvattr -a XV_COLORKEY -v 0}
[startup] {mythfrontend}
[app] (SDL_App)
[Layer] {2}
[Deco] {NONE}
[end]
Using xscreensaverTo configure your screensaver simply issue this command from a shell on the local machine:
Code:
$ xscreensaver-demo
From here can you configure it to your liking.
Setup xscreensaver from Your Windows MachineIf you're lazy like me and want to manage your mythtv box from your windows machine, you can actually configure xscreensaver for the mythbox on your windows machine fully seeing most of these screensavers using an xsession from your windows machine (the screensavers will be displayed on your windows machine's monitor, but the configuration you leave behind will be for your mythtv machine). Follow these instructions to start an xsession in my howto
here.
Now, assuming you have xming setup and running on your windows box as per that howto, simply connect to the mythtv box via ssh and issue the following:
Code:
$ xscreensaver-demo
You should get the following on your windows machine:
Just click OK to let it actually run on your windows machine through xming. Then you should get the "screensaver preferences" window:
Again, you should be able to preview all of these full screen on your windows box. There is a slight bug I found: if you highlight a gl screensaver, the little black preview window may move around and get drawn onto of other buttons. You just need to move the screensaver preferences a little or not preview those screensavers.
How xscreensaver Works with MythtvMythtv has been built with
native support for xscreensaver for some time now. Mythtv is smart enough to know when and when not to allow xscreensaver to come on; as far as I can tell this only happens when the GUI is idle. It's smart enough to know that if you're watching a show or a movie file (mplayer or xine), it shouldn't come on. It will come on if you pause the show.
TroubleshootingProblem with mplayer/xineIf you're finding that the xscreensaver starts when you're viewing playback from mplayer, do the following:
Code:
$ nano ~/.mplayer/config
Add the following line and save the file:
stop-xscreensaver = 1
If you're using xine, you can do the following:
Code:
$ nano ~/.xine/config
Adjust the gui.screensaver_timeout to a value below the current time it takes for your screensaver to come on. I.e. if your screensaver comes on in 3 minutes, set this to 2. Make sure this line is uncommented too!
Problem with lirc not stopping xscreensaverIt is important that xscreensaver
has time to initialize prior to mythfrontend coming up. If you have a slower machine like I do, you might have to add a short delay before your myfrontend starts-up. Otherwise xscreensaver might ignore inputs from lirc (although it responds to the local keyboard just fine).
To do this, simply make a script that pauses for 5-10 sec before launching mythfronent and point to that script in your ~/.fluxbox/apps to clear up the problem. Here's how I did it; credit for the script goes to Kirk (you can read the original post I made on this issue
here if you want it):
Code:
# cd /usr/bin
# touch delay_mythfrontend.sh ; nano delay_mythfrontend.sh
That should bring you into nano editing a blank text file, paste the following into it, then save and exit nano:
Code:
#!/bin/sh
sleep 5s
mythfrontend
Note: you can use more or less sleep time (the delay) if you need to.
Now just assign the permissions and add it to your ~/.fluxbox/apps:
Code:
# chmod 755 delay_mythfrontend.sh ; chmod +x delay_mythfrontend.sh
$ nano ~/.fluxbox/apps
Remove or comment out the old line to startup mythfrontend and add one that calls your script. Here is my current one:
Code:
[startup] {xset -dpms s off}
[startup] {xscreensaver}
[startup] {gnome-volume-manager}
[startup] {/usr/bin/x11vnc -nap -wait 50 -passwd mythtv -display :0 -forever -o$
[startup] {xvattr -a XV_COLORKEY -v 0}
#[startup] {mythfrontend}
[startup] {/usr/bin/delay_mythfrontend.sh}
[app] (SDL_App)
[Layer] {2}
[Deco] {NONE}
[end]