FVWM-Crystal

FVWM-Crystal is an easy to use, eye-candy but also powerful desktop environment for Linux or other Unix-like operating systems. It tries to exercise FVWM quite a bit and has some interesting features unique to Linux/UNIX desktops.

Installation
For installing FVWM-Crystal and the needed dependencies, just issue the following command:

The notification area will use or. I get mitigated results with trayer. A possibility is to install both programs and to choose the one you want to use in the preferences. And when you get a personal preference, to remove the one you don't use.

For the wallpaper, FVWM-Crystal can use both or. With feh, you get a fast and powerful picture viewer for the same price. With hsetroot, the installation will be faster.

It is a lot of optional programs you can install to improve your FVWM-Crystal experience:
 * A file manager: FVWM-Crystal include support for any file manager with its desktop icon manager (more than 10 have built-in support, the other can be selected via custom commands). 2 file managers are supported simultaneously.
 * A terminal emulator: at least one of gnome-terminal, konsole, xfce4-terminal, xterm, aterm, Eterm, mrxvt, urxvt (rxvt-unicode) or terminator.
 * Quake console: at least one of mrxvt, urxwt, aterm or xterm.
 * ROX-Filer (rox) or nautilus: for alternative ways to get icons on the desktop and wallpaper.
 * xscreensaver - a screen saver and/or screen locking.
 * sudo and optionally gksudo configured for running text/graphical applications as superuser and reboot/shutdown computer options in the menu.
 * A media player: at least one of Music Player Daemon (mpc), X MultiMedia System 2 (xmms2), alsaplayer, cmus, mocp, mplayer, mplayer2, quodlibet or cdcd.
 * A mixer application: at least one of aumix or alsamixer. With alsamixer, you will get true dB control.
 * transset and xcompmgr for full transparency support and the Bling bling clone.
 * xrandr for video mode switching
 * pmount or pmount-gui for auto-mounting of removable USB and Firewire medias. You may want to install uam too. autofs is a good alternative for auto-mounting of CDROM/DVD drives.
 * Xephyr (xorg-server with USE="xnest") for nested sessions.

All that imply you can have a full featured FVWM-Crystal with auto-mounting support without udisks and its dependencies.

As a minimum, I will recommend you to install the following:

At that time, FVWM-Crystal ebuilds are missing a dependency on xdg-user-dirs. That should be fixed shortly. In the mean time, if the icons on the desktop doesn't work well, that imply you must install that software:

Usage
FVWM_Crystal is very easy to use. It is a few man pages that can be acceded from the main menu or the website. I recommend you to read at least the Keyboard bindings because it is a lot of them.

Preferences
All the preferences are available from the main Crystal menu -> Preferences. They will be applied on the fly, at the exception of the Desktop manager which need to restart X, that when shifting between, or back and from, Nautilus and the Rox-Filer.

A few things are not in the preferences but in X resources files. You will find them in /usr/share/fvwm-crystal/addons. From that directory copy the following files:

You may edit them to suit your need. They are used to determine the fonts, colors and geometries for the terminals. You may also define here you cursor theme. A X restart is necessary for changes in these files to apply.

FVWM-Crystal comes with several themes, called recipes. The exact memory usage of FVWM will depend mostly on the recipe in use, as well than its start time and a new recipe load. After the start, it must be no speed difference between a thin recipe like Thin or Silent hacker, and an overloaded recipe like Amiga.

All the other preferences like the desktop geometry, the focus model, the windows decorations, the color theme, and so on, are fully independent of the recipe in use and applies to all of them.

The focus models are as follow:
 * Amiga: click to focus without raise
 * FVWM-Crystal: focus follow mouse without raise
 * FVWM-Crystal with raise: focus follow mouse with raise
 * MS Windows: click to focus with raise

Be also aware that when Privileged terminal is On, a terminal will never loose its focus. You can select which terminal emulator to use from the preferences, and launch it with a right click on the desktop.

When On, Silent operation will add 2>/dev/null to most command launched by FVWM-Crystal. It is very useful if you want to debug Crystal and not be polluted by external applications into its log file.

Start-Up
To launch FVWM-Crystal, you can use a graphical login manager like gdm, but the preferred way is to use startx:

When using console-kit, you may need to have something like:

If you want to debug FVWM-Crystal or log its messages:

Note that all messages here will not necessarily comes from FVWM-Crystal. You may find things like libpng warnings and messages from other programs.

You may want to use sudo to stop the computer or use the mount command from FVWM-Crystal. For an user called dom:

Applications menu
FVWM-Crystal have its own applications menu with full support for the xdg additional categories. It work in 2 steps.

First, it comes with a extensive database of menu entries and icons. The Application database help explain in details how it work and how you can customize it. Take also a look to the existing entries, they will show you the way.

Second, you can generate the missing entries by running from the main menu FVWM-Crystal -> Preferences -> Generate the application menu. For that, a script will scan the desktop files provided by the applications and generate the missing entries. It will use the categories found in these desktop file. The new entries will be in ~/.fvwm-crystal/Applications and the new icons in ~/.fvwm-crystal/icons.

Full screen mode
You can put not only firefox but also almost any application into full screen. For that use Alt+Numpad_Multiply (Alt + * on the Numpad). This will toggle the focused window.

Alt+Shift+F will toggle all the windows on the current desktop page. With Alt+Shift+Numpad_Multiply, you can scroll between the full screened windows and the current desktop page. Numpad_. and Numpad_0 is another way to scroll between windows, try it. It is also Alt+Tab which emulate the windows task list, and Alt+Shift+Tab which do the same for the iconic windows.

It is also other key bindings relative to window placement, as example Alt+Shift+[1 to 0]. As example, if you have a few firefox windows on the same screen, you can do the following sequence and see what append:

Ctrl+Shift+2; Ctrl+Shift+F; Ctrl+Shift+Numpad_Multiply a few times; Ctrl+Shift+F

And again, read the Keyboard bindings documentation because some functions are only available via key bindings, as example the Expose clone via Alt+E.

External resources

 * FVWM-Crystal web site
 * Project page on sourceforge
 * Gentoo forum thread
 * Forum thread in French