Note: I have another guide for adjusting screensaver settings in Dapper without replacing gnome-screensaver. I prefer the method described in that guide to this one, but your mileage may vary. Both have their pros and cons so make sure you check out both before applying the instructions.
Problem: Dapper ships with gnome-screensaver instead of xscreensaver, which gives the user no option to set individual screensaver settings.
Details: In Dapper display power management functions were decoupled from the screensaver with the introduction of Gnome Power Manager. xscreensaver provides both functions, thus became partially redundant. Refer to the gnome-screensaver FAQ, the upstream bugzilla discussion and the Launchpad discussion for more details if interested.
Ubuntu has a tendency to stick with the GNOME suite of applications unless absolutely necessary, and the GNOME developers do have reasons for doing what they're doing, so gnome-screensaver does have its longer term use, but in immediate practical terms we need a way of configuring screensaver options; otherwise most of them are either unusable or have crippled functionality. The following isn't a very elegant modification, but one that works nevertheless. Refer to the "Drawbacks" part at the bottom for possible dysfunctions after applying this.
Solution: Get xscreensaver back, disable gnome-screensaver.
1. To configure gnome-screensaver not to function, go to System / Preferences / Screensaver and uncheck both checkboxes.
2. To totally stop gnome-screensaver from running, kill its process
and prevent it from being launched on startup
sudo killall gnome-screensaver
If the latter doesn't seem to be working persistently for some reason, resort to making gnome-screensaver unexecutable:
gconftool-2 --type boolean -s /apps/gnome_settings_daemon/screensaver/start_screensaver false
3. Install xscreensaver.
sudo chmod -x /usr/bin/gnome-screensaver
4. Optional: Install the extra screensavers in the repositories that don't come installed as default.
sudo apt-get install xscreensaver
5. Add the xscreensaver daemon to your list of startup programs. Go to System / Preferences / Sessions / Startup Programs, click "Add" and type "xscreensaver -no-splash".
sudo apt-get install xscreensaver-data-extra xscreensaver-gl-extra
6. Modify the System / Preferences / Screensaver menu entry to launch the xscreensaver configuration window instead of the gnome-screensaver one:
Locate the following line:
gksudo gedit /usr/share/applications/gnome-screensaver-preferences.desktop
and change it to
and comment out the last four lines to make them look like this:
7. Click System / Preferences / Screensaver to launch the xscreensaver configuration window, go to the "Advanced" tab and uncheck the "Power Management Enabled" checkbox. This should stop xscreensaver's power saving features from conflicting with Gnome Power Manager.
8. Optional: Create a launcher to lock the screen manually. Right click your desktop, choose "Create Launcher", and enter the following as the command: "xscreensaver-command -lock".
- System / Quit / Lock Screen doesn't function after applying this, since it locks the screen via gnome-screensaver. I'm looking for a fix to this; in the meantime you can use the launcher you created in step 8 as a workaround. (Update: See this post for a suggested fix. I haven't tried it yet)
- In my experience the screen won't get locked when closing the laptop lid but this may be due to my (mis)configuration; I'll report back on this after experimenting a bit.
- You get the standard xscreensaver unlock dialog when unlocking the screen instead of the Dapper one, which detracts from the overall polish a bit, if you mind such things.