FAQ

If you don't see your question below, try searching the archives of the Mailing Lists, or searching (using the box at the right of the page). If you see that a lot of people have asked the question before, consider adding the answer to this FAQ.

The FAQ is divided into sections:

General information

Helping out with ROX

As a user

The easiest way to help out with ROX is to add useful comments to the pages on this site. If you see something that's confusing, wrong, or out-of-date, leave a comment and we'll fit it! If you know a better answer to a question in the FAQ or you've got some links for the Theme Gallery, put them in.

You can also help by trying out each new version and sending bug reports and suggestions for new features. Graphics for file icons and toolbar buttons may also be accepted.

You might like to join in discussions on the Mailing Lists.

As a programmer

You can add features and fix bugs in the ROX programs yourself - send us patch files when you do and we may
include your changes in future releases. You can also help out by writing your own, ROX-compliant, programs or by helping other people who are doing this. The tutorials will help you get started.

Donations

Click on the $ sign beside a developer's username in the list of developers to send them money. Not all developers have $ signs, as they don't all accept donations this way.

Relation to RISC OS

What's RISC OS?

RISC OS is an operating system used in Acorn/Castle machines. It had some good GUI features, but was poor in other areas. ROX seeks to bring these good UI features to Unix-type platforms.

Can I run RISC OS apps within ROX?

No - ROX is not an emulator, it's just another Unix desktop. RISC OS applications need to be ported to run under ROX (at least until riscose gets good enough to run graphical applications). You can, however, run a RISC OS desktop in a window using an emulator such as ArcEm.

Why did you not implement the back icon as part of the window furniture when you designed ROX?

Under X, you can choose to run any window manager with any desktop. Many of the screenshots show the xfwm4 or OroboROX window managers in a more-or-less default configuration. In this, clicking the middle mouse button anywhere on the window frame will send a window to the back. Other window managers may offer an explicit back button, or you can configure them to have one.

How can I make ROX even more like RISC OS?

There are several things you can do:

  • Open ROX-Filer's Options box (by choosing `Options...' from the menu)
    and turn on all the `(RISC OS Style)' options.
  • You can use xfwm4 as your window manager to get the RISC OS behaviour of using the right mouse button to move or resize windows without bringing them to the front. Set the 'raise_on_click' option to 'false' too.
  • You can get Adjust-reverse-scrolling by applying this patch (might need a little tweaking now).
  • There are various RISC OS themes around, including Andrew Flegg's RISC OS theme (for IceWM and Gtk) and Peter Howkins's sawfish theme.

Take a look at this screenshot:

RISC OS style

Isn't pre-emptive multitasking slow?

On RISC OS (eg, using a task window or wimp2), yes. On systems designed for it, like Linux, it actually makes the system faster and more responsive.

  • Multitasking is used when you have more runnable processes than CPUs. Most systems only have 1 CPU.
  • A runnable process is one which wants to use the CPU (not just a program which is loaded but doing nothing).
  • Most of the time, nothing is runnable (the computer is waiting for you to do something). In that case, it doesn't matter which system is used.
  • Most of the rest of the time, exactly one process is runnable (eg, when you press a key your word processor needs to run to insert the character). When only one process is runnable, it doesn't matter which system is used. The one runnable process is always chosen.
  • The only time the type of multi-tasking makes any difference at all is when you have several programs all trying to do things at once (eg, printing, rendering an image and checking your email).

In the rare case when you have several runnable processes, the type of multi-tasking matters. Cooperative systems (like RISC OS) run one process, and won't let any other process run until that one says it's OK. Preemptive systems (like Linux) can switch between runnable processes whenever they please. RISC OS users will note that the case of, say, formatting a floppy, printing a document and checking your email is a situation where RISC OS performs poorly (the system becomes unresponsive). Linux does not become less responsive in this situation.

Another effect of the RISC OS system is that processes using some resource other than the CPU can still prevent others from running, because a process can't do something and tell the system to run another process at the same time. This doesn't happen on Linux.

Here's an example of what happens on RISC OS:

  • The floppy disk formatting program tries to write to the disk. Floppies are slow, so this takes a while.
  • The user presses a key. The keypress is queued for later.
  • After a second or so, the write operation completes. The floppy program wants to write another block to disk, but to be nice, it gives up control in case anything else needs to be done.
  • The text editor runs, inserts the character and redraws the screen. The floppy disk is idle while this happens.
  • The formatter runs again, and starts writing the next block.

The same thing on Linux:

  • The floppy disk formatting program tries to write to the disk. Floppies are slow, so this takes a while.
  • The user presses a key. Since the formatter doesn't need the CPU, and PMT systems can switch processes whenever they please, Linux switches to the text editor without any delay.
  • The text editor inserts the character and redraws the screen while the block is written to the disk.

Can't RISC OS be made to do preemptive multi-tasking?

Although it can do it in a limited form, fast and reliable support requires the whole system to be designed with this in mind.
Consider something as simple as redrawing a window. On RISC OS:

  • The system asks Edit to redraw window number 5, for example.
  • Edit gets the size and location of the region to be redrawn (100x100 in the centre of the screen).
  • Edit asks the system to draw the contents in the middle of the screen.

On a system which can switch between processes at any point in time, the user might open another window, or move Edit's window, between Edit finding its location and doing the drawing. Then the drawing would appear in the wrong place, or over another window!

On Linux:

  • The system asks Edit to redraw window number 5.
  • Edit gets the size and location of the region to be redrawn (100x100 in the centre of window 5).
  • Edit asks the system to draw the contents in the middle of window 5.

Notice that if Edit's window is moved or covered then the final drawing operation is still correct, because the drawing is done relative to a window, not to the screen. It's little changes like this that are needed throughout the system. As another example, consider the case of loading a file. On RISC OS:

  • Edit gets the size of the file (1Mb).
  • Edit allocates 1Mb of memory at address 0xc000.
  • Edit asks the system to load the file at address 0xc000.

On Linux:

  • Edit gets the size of the file (1Mb).
  • Edit allocates 1Mb of memory at address 0xc000.
  • Edit asks the system to load the first 1Mb of the file at address 0xc000.

Because the file (perhaps a log file) may grow in size between Edit checking the size and Edit loading it, the size must be passed to the load operation to avoid overwriting other memory and crashing. Linux therefore does not provide any system call to 'load a whole file'.

Of course, RISC OS's lack of PMT also means it can't easily support machines with multiple processors, and it may be unreliable when using network filesystems (a remote log file can still grow).

Why not replace X with a new graphics system?

Because there's no point. X has a few problems, but they're not the things people usually blame on it. X is a graphics system that works on a huge range of graphics cards (laptops, desktops, mobile devices), has excellent backwards compatibility (decade-old software still works with modern X servers), 3D acceleration (for some cards) and support from many hardware vendors. X's policy is to have no policy about style (e.g., what a menu should look like, or which side of the window the scroll bar goes on). People therefore like to blame X for the fact that there are several different interface styles used on X (ROX, GNOME, KDE, etc).

When people suggest replacing X, they don't really want to replace X. They want to force people to use their preferred interface style by hard-coding it into the graphics system. In fact, this would just lead to people creating new graphics systems, one for each interface (after which everyone would complain that they couldn't run ROX applications under KDE's new graphics system, or that they couldn't run firefox under ROX, etc). In fact, the reason X is still here (and the older graphics systems aren't) is probably because it didn't enforce policy. Amusingly, after proposing that differing interface styles be made impossible by replacing X, there is then the problem that many useful X applications won't be available on the new system. No problem; the plans for the new graphics system gain an X-emulation layer. And we're back where we started...

What licenses do you use?

The content of the web-site is made available under the terms of the Creative Commons Attribution-ShareAlike 2.5 license. The software uses various licenses, but mainly GPL.

GPL

GNU General Public License

  • ROX-Filerthe file manager at the core of the ROX desktop
  • VixnA vi-like GUI text editor for programmers
  • SysBarsshow CPU load etc in bars on the panel
  • ScreensaverControl screensaver settings with ROX-Session
  • XDGStartEdits XDG autostart entries
  • AlgoScoreInteractive graphical score for algorithmic composition
  • RAWThumbnailGenerates thumbnails for the Digital RAW files
  • Reinteract-ROXa system for interactive experimentation with python
  • ROX-Sambabrowse Samba networks via FUSE
  • DevTrayshows devices in the panel
  • XDGSupportcreates SendTo items for .desktop files
  • ROX-TrasherTrashcan application for the ROX Filer and Desktop
  • Zero2Bundlecreate self-contained bundles from a Zero Install feed
  • mplayer-roxWraper around mplayer
  • Fontfont selection and smoothing configuration
  • AppearanceGTK and Icon theme configuration
  • Pickyan Image Viewer
  • Thumbssimple thumbnail manager
  • WiFia Wireless quality monitor applet
  • XAttrview or edit extended file attributes
  • IndigoMagicIndigoMagic icon theme for ROX
  • Weathershows the weather
  • TaskTrayshows open windows as icons in a growing widget
  • RETickernewsticker for the rox-panel
  • ExecuteGUI to run programs by command / run programs as different user
  • Trashcana trashcan that complies with the freedesktop-trash-spec
  • ROXTermLike gnome-terminal without Gnome baggage
  • DependA utility for checking dependencies of other ROX utilities.
  • XDG-Menua menu applet
  • HddTempa front end to "hddtemp" daemon showing temperature of hard drives
  • PanelClocka simple clock for the panel
  • Rubbisha very simple rubbish bin.
  • Trasha unified trashcan application for ROX.
  • ComicThumbGenerates thumbnails for comix archives (cbr,cbz,cbt)
  • ROX-thumbnailersIt generates thumbnails for ROX-Filer using various thumbnailers
  • ToggleDesktopToggle Show/Hide Window
  • Tasklista panel applet that shows a list of currently open applications
  • Systemprocess and disk monitor
  • Resolutionchange screen resolution dynamically
  • Mousemouse configuration applet
  • Memoalarm clock and reminder list
  • Keyboardkeyboard configuration applet
  • Gammaset the gamma correction for your screen
  • MIME-Editorchange the rules for guessing a file's type
  • OroboROXa lightweight Window Manager for ROX
  • Pageran application and panel applet that shows a miniature view of your desktop.
  • Archivecreate and unpack archive files (supported formats include zip, tar, gz and bz).
  • ROX-Sessiona simple session manager for the ROX Desktop.
  • PostalAn Applet to Check IMAP, POP and MBOX accounts for new mail
  • Wallpapercan be used to place an image on your desktop background
  • MenuAn Application Launch Menu
  • RipperA CD Ripper/Encoder
  • Volumea Volume control Panel Applet and Mixer Application
  • MusicBoxA Music Player
  • DownloadManagerdownload manager for Fetch, limiting the number of simultaneous downloads
  • FreeFSMonitor free space on a file system
  • VideoThumbnailProvides thumbnail images for video files.
  • FetchThis program acts as a download handler for ROX-Filer.
  • Edita simple text editor
  • FindA Graphical Find-In-Files Utility
  • ROX-Alla single archive containing launchers for most of the ROX applications
  • AddAppcreate ROX application launchers

LGPL

GNU Lesser General Public License

  • ROX-Libcontains shared code used by other ROX applications

BSD style license

  • AutostartFreedesktop.org autostart manager
  • BelugaWireless network manager
  • JamminMPD playlist randomizer
  • ROX-MAMEMAME frontend
  • RatatoskA Jabber client for the ROX desktop
  • Lindorm-FlatA flatter version of the Lindorm theme
  • LindormOroboROX theme based on the "Oroborus" theme
  • roxunzip.shshell script that unpacks lots of archives
  • Lithiuma Battery Status Monitor Applet

Other license

Where are the changelogs?

Most programs contain a change log in their Help directory. You can open this directory by right-clicking on the application's icon in a ROX-Filer window and choosing Help from the popup-menu.

If you don't want to download the whole program just to see the changelog, you can also view it using the Notes link on the file releases page.

For a full log of changes to each file, you can access our public CVS repository.

Fonts

How do I change the default font?

You can change the pinboard font (used for desktop icons) from the filer's options box.

Why don't my fonts don't look as good as the ones in the screenshots?

Font support got a lot better with GTK+-2.0, so make sure you're running a recent version (2.0.0 or later) of ROX-Filer.

If you're not running a recent version of ROX-Session you can get anti-aliased fonts by setting two environment variables, like this (GTK+-2.2 and later versions do this by default):

GDK_USE_XFT=1; export GDK_USE_XFT
QT_XFT=1; export QT_XFT

You might want to create a ~/.xftconfig file containing something like:

dir "/usr/local/Choices/Fonts"

You'll also want to download some good fonts.

If the monospace font (used to show file details) doesn't look right, check that your /etc/X11/XftConfig file contains something like this:

match any family == "monospace" edit family =+ "Luxi Mono";

(where "Luxi Mono" is your preferred monospace font)

The name and format of this file has changed in the new version of Xft.

See this httpthread for more information.

How do I install new fonts?

Drag the .ttf files into your (hidden) ~/.fonts directory (creating it first if it doesn't exist). On older systems, this may not work. You might also have to log out and log back in before the new fonts are detected.

The fonts change size depending on which desktop I use!

Different screens pack different numbers of pixels (dots) into the same area. So, to make sure a 12pt font appears the same physical size on all screens, it will have to cover a different number of dots (pixels) on different monitors. The size-in-pixels is calculated from the point size using the DPI (dots-per-inch) setting of the screen.

Some monitors set this directly, sometimes it has to be done manually. ROX-Session doesn't touch the value, but some other desktops force it to a particular value. Therefore, you may find the DPI value is set differently depending on which desktop you use.

The xdpyinfo command will show you the current setting (under resolution). Setting the DPI correctly should really be done by the login system, since it shouldn't depend on which desktop you use.

More help

How do I...

Can I get archives to unpack in the current directory instead of my home?

If you bind archives to commands such as:

tar xzf "$@"

you will find that the files in the archive will be unpacked in your home directory. (Actually they get unpacked into ROX-Filer's current directory, which is normally $HOME).

To have the files unpack into the the same directory as the archive either:

  1. Use a script like:
    cd "`dirname $@`"
    tar xzf "$@"

    or
  2. Use Archive to to unpack archives.

Using Archive is prefered because it is far more flexible.

Can I open archives in vfs mode with a simple click, like in mc?

Yes, just open the Set Run Action box and set the command as:

rox "$1#/"

This means that such files are opened using ROX-Filer, with #/ on the end of the name to look inside the archive.

Can I use .mailcap for file associations?

Not easily. But see:

http://sourceforge.net/tracker/index.php?func=detail&aid=663546&group_id=7023&atid=357023

How do I change the application used for `Open As Text'?

Find a real text file and use Set Run Action on that. Using Open As Text (or Shift clicking on the file) just pretends that the type is text/plain.

How do I get filetyping working?

ROX filetyping is based around MIME-types. The filer guesses the MIME type for a file based on its name and contents.
See the MIME-Editor application page for more information about this.

To set which application gets run when you open a file, choose `Set Run Action' from the `File' menu. Either drag an application onto the dialog box that appears, or enter a shell command to run for files of that type.

How do I set the background image?

Right click on the desktop background. Choose Backdrop... from the bottom of the menu. Drag an image in.

If no background image is set, the colour set in the Options box is used (choose ROX-Filer/Options... from the menu).

You can use Wallpaper to select a random backdrop image at regular intervals, and for other interesting effects.

Note that the pinboard is actually a screen-sized window that covers the real root window completely. Therefore, programs that try to draw on the root window directly won't have any effect.

Why don't the types work on CDs or Windows discs?

This happens when all the files are shown using the http://rox.sourceforge.net/Icons/application_x-executable.png icon (or similar).

These types of file system can force all files to be marked as executable, which overrides the type system. Either re-configure the file system (if you know how!) or use the option Types=>Ignore eXecutable bit for known extensions.

This option was removed in ROX-Filer 2.3, which should be better at getting the type right without messing around.

If the file has been copied from a CD or Windows disc it will still be executable. Use either the Permissions, Info or Properties menu items to remove the executable permissions.

Installation FAQ

I'm new to Linux... which distribution should I get?

There are many to choose from: Ubuntu, Mandriva (formerly Mandrake), Fedora and SuSE all have good reputations for being user friendly. See below for some more.

What are the minimum versions of the system libraries needed to run ROX?

ROX-Filer itself only requires GTK 2.4. For the whole desktop, see the Base platform page.

How do these version numbers work? Which releases are stable?

When a new release is made, it is a 'testing' version. After a week or so without major problems, it becomes the new stable version. Most releases are pretty stable, so please try the testing versions if you can and report any problems you find.

If you're using AddApp to install programs, there is a check box in the main window to let you decide whether you want the latest 'testing' version or the latest 'stable' version.

Are there any Linux distributions which package everything as application directories?

How can I get back to GNOME or KDE after running ROX-Session?

There will normally be a menu of desktops on the login screen. After entering your username (and before entering your password) select the one you want from the menu.
If that doesn't work, you can rename the .xsession file in your home directory to something like .xsession.backup.
(Do mv -iv .xsession .xsession.backup in your home directory.)
You can also run the KDE or GNOME panel from within ROX. Type 'panel' in the filer's 'Shell Command...' minibuffer to get the GNOME stuff, or 'kde2' to get KDE.

When running ROX-Session how do I change the panel and pinboard options?

In the Desktop section of ROX-Filer's options box you can choose whether to have ROX-Filer manage a panel, the desktop background, or both. You can use the panel's configuration dialog box to choose which side of the screen it goes on.

ROX-Session contains a file called RunROX which it executes to start ROX-Filer. Read the start of this file, it contains instructions on customizing the file which you can follow if you need more flexibility.

#!/bin/sh
 
# This gets run after ROX-Session is loaded and running as your 
# session manager, before Login is run.
#
# It is used to run ROX-Filer. If this process terminates, 
# ROX-Session will offer to rerun it.
#
# $1 is the ROX-Session application directory.
#
# If you want to modify this file, you should first copy it as
# <Choices>/ROX-Session/RunROX so that upgrading ROX-Session 
# will not overwrite your changes. This also allows per-user 
# modifications.

What other distributions are there?

Besides the main ones listed above (which are best for beginners), some of the other more notable ones are:

Internationalisation

Why does ROX-Filer complain that my filenames aren't UTF-8?

In the past, filenames have been stored using the local character set. This means that you can't send a file to someone in a different locale or have two files from different character sets on your system at once.

Therefore, there is a general move over to the UTF-8 encoding (which can represent all characters in a single encoding). Many applications (not just ROX ones) now assume that your filenames are UTF-8 and will complain if not. ROX-Filer displays names not in UTF-8 in red.

You can specify a fall-back encoding by setting the CHARSET environment variable. Use something like this to test it (-n forces a new copy of the filer to start):

CHARSET=iso-8859-2 rox -n

A better solution for the future is to convert your filenames to UTF-8 (use the filer's Rename box to convert individual files, or the iconv utility for mass conversion). You can use UTF-8 names from the shell by setting LANG, for example:

LANG=en_GB.UTF-8 xterm

For more information, see the httpUTF-8 and Unicode FAQ for Unix/Linux.

Why doesn't ROX-Filer provide the option to use my local encoding?

ROX-Filer only supports non-UTF-8 encodings enough to let you rename your files to UTF-8. Although we often get requests to add more support, this is not a useful direction. There are a huge number of places where support must be added, and even if you got the whole filer converted, you'd need to convert all your other applications too.

And, at the end of all this work converting everything to support your legacy encoding, you're just back to the bad old pre-UTF-8 days, where you can't exchange files with users in a different locale, can't have files with different alphabets on the same system, and you have to keep track of the encodings whereever you go, or the names become unreadable. So, just convert to UTF-8. It's easier in the long run!

How do I translate a program into another language?

If the program already supports translations, you can just copy an existing translation (eg, copy Messages/fr.po as Messages/de.po). Edit the file in your favourite text editor, then run ./dist to generate the output .gmo file and restart the application.

If the application doesn't yet support translations then do the following (for ROX-Lib python applications):

  1. In the AppRun file, add this just after 'import rox':

    import os
    __builtins__._ = rox.i18n.translation(os.path.join(rox.app_dir, 'Messages'))

    Note: you don't need to do this in every file, just the first one that gets run.

  2. Mark any strings that should be translated with _():
    rox.info("Hello World")

    becomes
    rox.info(_("Hello World"))
    Be sure not to mark anything else, or the program may not work correctly.

  3. Run 'pygettext *.py' to create 'messages.pot'.
  4. Create a 'Messages' subdirectory. Copy messages.pot as Messages/<lang>.po.
  5. Edit the new .po file so that each English string is followed by its translation.
    Note: be sure to set the charset to utf-8.
  6. Copy dist and update-po from Edit/Messages to there.
  7. Run './dist' to generate the .gmo files.

See also the ROX-Lib i18n documentation.

UTF-8 is also sometimes called utf8 (for searching).

See GIT for translators for instructions on how to send us your changes.

Troubleshooting

Compiling from source

See the Help Installing document for general instructions. Some common problems are listed below.

I have library 'X' installed, but it says it can't find it!

Libraries come in two parts: the binaries, which are needed when running a
program that uses the library; and the header files, which are needed to
compile a program.
If you're compiling from source, you probably need to get some of the -devel packages (eg,
gtk-devel).

I want ROX to be compiled in an automated process with other Packages, is there something like "make install"?

$ ROX-Filer/AppRun --compile

See also: 0compile

It still doesn't compile

You can report a bug. Please include the exact errors displayed when compiling ("It doesn't compile" is not helpful). You can select the errors displayed in the terminal window that appears, and paste them into your email by clicking the middle mouse button.

Errors while running

"Failed to create symlink" and no icons

I get an error message "Failed to create symlink" and my file icons are all question marks

ROX-Filer is having trouble with the icon theme. Try choosing another one.

If you have not set a theme then it cannot locate the default theme. Try removing the link ~/.icons/ROX, e.g.

$ mv ~/.icons/ROX ~/.icons/ROX.broken
$ rox -n

Errors when copying to Windows partitions

What are these errors I get when copying to Windows partitions?

The filer tries to preserve file permissions when copying files, but some filesystems don't support them and you may get an error from the 'cp' command (although not all systems are affected). The 'quiet' mount option can be used in /etc/fstab to stop the message being displayed.

Green error messages keep appearing!

See Stop the green error messages from appearing.

Panels appear with window decorations or don't stay visible

The panel appears with window decorations or doesn't stay visible

Some older window managers don't support features needed by the panel. However, you can turn on the 'Override window manager' option in the Compatibility section of the Options box.

ROX-Filer shows red Xs for the toolbar icons

When I log out and log back in again, the filer shows red Xs for the toolbar icons and other things don't work well

The filer needs to be run using the 'rox' shell script, not by running the ROX-Filer binary directly. Some systems try to implement a primitive form of session management (without using XSMP, which the filer supports) and fail to restart it correctly.

gnome-terminal starts in the wrong directory

I use gnome-terminal, but ROX-Filer won't start it in the right directory

This is a gnome-terminal bug. You need to run gnome-terminal with the --disable-factory option, otherwise it starts in the same directory which the existing gnome-terminal process started in.

Pinboard and panels

How do I reorder items on the panel?

Use the middle mouse button to drag the icon to a new location within the panel. If you do not have a middle mouse button, try and enable "Emulate3Buttons" in your XF86Config; doing so, you can press the left and right buttons on your mouse simultaneously to emulate the middle mouse button.

How do I set the background image?

Right click on the desktop background. Choose Backdrop... from the bottom of the menu. Drag an image in.
If no background image is set, the colour set in the Options box is used (choose ROX-Filer/Options... from the menu).
You can use Wallpaper to select a random backdrop image at regular intervals, and for other interesting effects.

The pinboard only appears on one of my workspaces, or jumps in front of other windows!

Some older window managers don't fully support the
httpExtended Window Manager Hints specification. In this case, you'll need to turn on the Override option in the Compatibility section of the Options box.

I use blackbox/fluxbox and the root menus don't work properly anymore

These window managers don't support the
httpExtended Window Manager Hints specification yet, although they hope to in future releases. In the meantime, turn on the 'Pass all backdrop mouse clicks to window manager' and 'Blackbox root menus hack' options in the Options box (Compatibility section).

The httpXFce root menu doesnt work with the pinboard, and 'Pass all backdrop mouse clicks to window manager' doesn't fix it

XFce's root menu is part of the xfdesktop module, which creates a single large root window to set background image and create the root menu. ROX's pinboard also creates a large root window for desktop icons. These two compete.
However you can kill the xfdesktop and enable the Rox pinboard. When you do so the Xfce root menu will no longer work, but you will have desktop icons and the Rox-Filer menu by right clicking.
The httpOroborus project has a Gtk+ 1.x application (on which xfdesktop is based) which doesn't create a large root window. It's called deskmenu, and provides a nice root menu without conflicting with the ROX pinboard.

See also:

Can I make the pinboard transparent, like in the 1.2.x series?

No. Please don't ask about this. The old method doesn't work properly with Gtk+-2.0, is slow, ugly, and doesn't follow the WM standard. KDE, GNOME, XFCE and ROX all use a single screen-sized window for the backdrop now.

ROX provides plenty of support for setting the backdrop itself and allows external programs to choose a backdrop. See the Wallpaper application for an example; this program chooses a random backdrop
each time you log in, and can also be used to put the output of other programs, such as XEarth, on the backdrop at regular intervals.

Root-portal can be used to show log messages on the backdrop, replacing the old roottail. Deskmenu can be used to provide a custom root menu.

See this discussion for more details.