Tips, Tricks and Howtos

Share your XFce knowledge with the world. This is the place to put your tips and tricks or explain your cunning customizations.

How to make the panel show up in the Alt-TAB cycle
There is a non-graphical option for xfwm4 to include the panel (and similar windows) in the Alt-TAB window switching list.

Just add the following line to your $HOME/.xfce4/xfwm4rc (or create a new file):

cycle_minimum=false

How to install new themes.
To install window decorations:

Extract the theme to /usr/share/themes for a system-wide install or to $HOME/.themes for a single-user install. The path should read something like /usr/share/themes/THEMENAME/xfwm4/ or $HOME/.themes/THEMENAME/xfwm4/, where THEMENAME is the name of the theme.

To install UI themes: Simply untar the themes to $HOME/.themes or /usr/share/themes. (thanks psynaps3)

Themes should be selectable now in the settings manager.

How do I build themes
See http://wiki.xfce.org/howto/xfwm4_theme

How to use ROX to manage your desktop in order to have desktop icons ?
Copy /etc/X11/xfce4/xinitrc (or /etc/xfce4/xinitrc) in your $HOME/.xfce4/ folder and  be sure it is executable :

# cp /etc/X11/xfce4/xinitrc $HOME/.xfce4/xinitrc # chmod 755 $HOME/.xfce4/xinitrc

Edit $HOME/.xfce4/xinitrc and comment the "xfdesktop &" line. Add "rox -p xfce &" on the next line. Restart XFCE4 : from the command line, you would better use "startxfce4" to bypass stupid distribution X startup scripts that can drive you crazy, really ... Note that if you use ROX to manage your desktop, you won't have the XFCE4 desktop menu anymore and desktop background image will be managed by ROX. See the next question for getting a working desktop menu.

And you can minimize your application to the desktop, just as you do in mwm/twm. Every minimized window has an icon on the desktop. In this way, you can get rid of the M$-like taskbar. To achieve this, just check the option 'Show iconfied windows' in Options|Pinboard|Iconfied windows.

URLs :
 * ROX : http://rox.sourceforge.net

How to get a desktop menu when using ROX to manage the desktop window ?
XFWM4, the XFCE4 window manager, is a modified version of Oroborus. So, tools written for Oroborus can be used with XFWM4, at least this is true for DeskMenu, a desktop menu manager for Oroborus (and XFWM4). Install DeskMenu and be sure the ROX option labeled "pass desktop clic to window manager" is on. The main drawback is that you should now redefine the whole desktop menu, but DeskMenu has a easy-to-understand syntax.

URLs :
 * Oroborus : http://www.oroborus.org
 * DeskMenu download : http://www.oroborus.org/?node=Download

How to get Desktop Icons in XFCE4
Since Xffm 4.3.3 you can use it to get desktop icons. Just use the deskview option. You can read about Xffm at http://xffm.sourceforge.net/xffm.html. Presently XCFE4 don't support desktop icons (though plans for adding it seems to be on the todolist for v4.4). Thus you will need another app that is capable of adding the icons to the desktop. I suggest idesk, which has lots of really nice features like transparency & multiple (10+) configurable actions per icon, but eg ROX will be able to do it too (minus all the nice features though).

Unfortunately xfdesktop v4.0 is sort of a desktop nazi at the moment and doesn't let other apps be visable on the root X window, so this means you have to disable it if you want your icons to actually show up. Disabling xfdesktop means losing XFCE4's desktop menus & ability to change the background. If you want to set a background image or want the menu back you can use other apps for those functions. If you only want to change the default (black) backgroundcolor you can however do that directly on the root X window just by editing your /etc/xfce4/xinitrc or ~/.xinitrc config file

xsetroot -solid black

change -solid black to any hexadecimal color of your liking eg -solid rgb:99/99/99

then later in the file find the line xfdesktop&, comment it (#xfdesktop&) and add idesk& instead on the next line and you are all done.

Of cource, remember to install and configure idesk too :D

PS If you are like me you might want to comment the line xftaskbar4& too (right above xfdesktop&) when you are editing your xinitrc and instead install the panel taskbar-plugin. With desktop icons you will probaby have a pretty empty XFCE4 panel otherwise and having 2 bars will use up unnessecarily much screenspace.

URLs :


 * Idesk: http://idesk.sourceforge.net

How to get Xinerama/multihead in XFCE4.2
XFce 4.0 is reputedly one of the best environments for multihead. Both xfwm and xfdesktop support it intelligently.

But on 4.2 I cannot get it to work!

I first tried the .debs from os-cillation, and no go. Then I compiled my own xfwm - and I got composite, which was not a priority for me, but still no multihead.

* xfwm happilly maximizes my windows covering both screens :-(   * many windows are placed, by default, in the center of the virtual space, so I get half on each monitor.    * same for splash. Yuck. (I actually created an image that looks good on it :-P but the "subtitles" are still split in half)    * I have one single image spread across both monitors as backdrop. Again, a simple gimpwork produced one that looks good, but that's not an acceptable long-term solution.

Answer: I imagine this was broken on the pre-releases. The upgrade to 4.2 final fixed it. HOWEVER, 4.2 final would still present the same symptoms, until I rebooted the machine; I have no idea why. And I mean reboot - of course I logged off and back in after the upgrade, and that didn't help. After the reboot, it now works correctly.

How do I configure Xkb
Add the XkbLayout Option to your xorg.conf-file. Here is an example if you want to use german and russian keyboard-settings:

Section "InputDevice" Identifier "Keyboard0" Driver     "kbd" Option     "XkbModel" "pc105" Option     "XkbLayout" "de,ru" EndSection

How to get Xgl and Compiz in XFCE4.2 in Ubuntu Dapper (ati fglrx or Nvidia)
French_version

First off you need to have Xgl and compiz and compiz-gnome installed

sudo apt-get install compiz xserver-xgl libgl1-mesa xserver-xorg libglitz-glx1 compiz-gnome


 * Pay attention to this list of packages. Even if you think you already have it all, do check that you have the latest libgl1-mesa and libglitz-glx1, or you will get the famous GLX_EXT_texture_from_pixmap is missing. LaloMartins 11:24, 12 March 2006 (UTC)

I'm assuming you're running GDM.

To add a session choice for Xgl XFCE4:

do: sudo gedit /usr/share/xsessions/xgl-xfce.desktop

[Desktop Entry] Encoding=UTF-8 Name=XGl XFCE desktop Exec=/usr/bin/startxgl-xfce4 1 Icon= Type=Application

Then create startxgl-xfce4

do: sudo gedit /usr/bin/startxgl-xfce4 #!/bin/bash echo ">Starting XGL at Display: $1" echo "========= XGL ============" Xgl -fullscreen :$1 -ac -accel xv:pbuffer -accel glx:pbuffer & ## ati fglrx command to start Xgl #Xgl :$0 -fullscreen -ac -accel glx:pbuffer -accel xv:fbo ## nvidia style (not sure if this works) sleep 6 echo "======= COMPIZ ===========" DISPLAY=:$1 LD_LIBRARY_PATH=/usr/lib/opengl/xorg-x11/lib/ compiz --replace gconf decoration wobbly fade switcher minimize cube  rotate zoom scale move resize place & sleep 4 echo "====== DECORATIONS =======" DISPLAY=:$1 gnome-window-decorator & sleep 4 echo "======= XFCE4 ============" #DISPLAY=:$1 setxkbmap -model pc105 -layout us -variant basic ## if you're keyboard isn't playing nice DISPLAY=:$1 xfce4-session #echo "======= LOGOUT ============" #killall Xgl # Adding the line above,if you can't logout XFCE correctly. # Changing DISPLAY=:$1 TO DISPLAY=:$0


 * if you're on nvidia, your LD_LIBRARY_PATH should be instead: LD_PRELOAD=/usr/lib/nvidia/libGL.so.1.2.xlibmesa LaloMartins 11:24, 12 March 2006 (UTC)

then to make it executable:

do: sudo chmod a+x /usr/bin/startxgl-xfce4

Now you have a new session in GDM called XGl XFCE desktop if you run this, it will start XFCE4 (dapper) with Xgl and Compiz

there could be some trouble with /tmp/.X1-lock, remove this if it doesn't work.

screenshot: Tranparant: http://www.ubuntuforums.org/gallery/showimage.php?i=2070&c=4

cube: http://www.ubuntuforums.org/gallery/showimage.php?i=2071&c=4