If you have attempted to tamper with your screensaver in Ubuntu, you will know that other than selecting the screensaver, there is nothing you can do about it. The default Gnome-Screensaver in your system does not allow you to change any of the screensaver’s setting. If you are looking to make the ball rotate slower, or to get it to display a different line of text, you’ll have no luck there.
On the other hand, the popular XScreenSaver gives you more choices of screensavers and also allows you to change the setting and configure it to your liking.
While we can easily replace gnome-screensaver with XScreensaver (with some simple hack), it might not be a great idea after all since Gnome-Screensaver is tightly integrated with the Gnome desktop and allows you to lock the computer screen and recover the computer from sleep. Replacing it with xscreensaver might break these stuffs and cause them not to work properly.
In Ubuntu Intrepid, you can actually integrate XScreenSaver and Gnome-Screensaver together without breaking the system.
Install XScreenSaver and all the extra screensavers
sudo apt-get install xscreensaver xscreensaver-data-extra xscreensaver-gl-extra
Now, on your System -> Preferences, you should see two entries of Screensaver. The first one is referring to xscreensaver set up while the second refers to the gnome-screensaver.
To avoid confusion, we are going to change the name of the entry.
Right-click on the menu bar and select ‘Edit-Menus‘. On the left pane, navigate to the System -> Preferences section. On the right pane, scroll down untill you locate the two Screensaver entries. Select the first Screensaver entry and click the Properties button.
Under the name, change it to XScreensaver.
Close all the windows.
Next, go to System->Preferences->XScreensaver.
When XScreensaver loads up, it will detect that Gnome-screensaver is running and prompts you to switch it off. Click Cancel. We don’t want to make XScreensaver the default screensaver program as it will cause some of the system functions (like lock-screen) to break.
On the main window of XScreensaver, pick the screensaver you want to edit and change the setting via the Settings button.
When you are done editing the screensaver. Close the XScreensaver window.
Load Gnome-screensaver (System->Preferences->Screensaver). Select the screensaver that you have just edited and make it the default screensaver.
That’s it. Your screen should now show the updated Screensaver everytime it runs.
Several points to note
- Whenever you want to change the setting of the screensaver, use XScreensaver.
- Whenever you want to change the system screensaver, use Gnome-Screensaver.
- If you accidentally clicked the OK button and allow XScreensaver to stop the Gnome-screensaver daemon and set XScreensaver to run, you can simply log out and log in again to restore it to the default setting.