Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages


home | help
FVWM-CRYSTAL(1)			 FVWM-Crystal		       FVWM-CRYSTAL(1)

       fvwm-crystal - an easy to use, eye-candy	but also powerful desktop
       environment for GNU/Linux or other Unix-like operating systems.


       FVWM-Crystal aims to be an easy to use, eye-candy but also powerful
       desktop environment based on the	F? Virtual Window Manager (FVWM). It
       uses following programs:	FVWM as	a window manager and "main core",
       icons on	the desktop with support for more than 10 different file
       managers	and custom commands (with optional Nautilus or ROX-Filer
       support), different terminal emulators inclusive	xterm, aterm, mrxvt or
       urxvt, different	music and medias players inclusive MPD,	XMMS2 or
       MPlayer (there's	built-in support for controlling these programs, and
       several other tools for different functions, like setting a wallpaper
       or making screen	shots. Fvwm-Crystal provide some unique	features like
       the ability to bring in full screen virtually any application, and to
       flow through the	full-screened applications and the desktop. In this
       document	you will find a	general	description of FVWM-Crystal, how to
       begin with it and how to	customize it.

   First Start
       FVWM-Crystal checks while your first login if ~/.fvwm-crystal exist and
       if old preferences must be converted to the new Fvwm InfoStore
       variables. In all cases,	it should just start.

       FVWM-Crystal will also check your locale	and create the XDG localized
       user directories	if they	don't exist. Those directories are common to
       most modern OS and are used to store dedicated files. As	example
       $HOME/Music, $HOME/Documents and	$HOME/Pictures.

   Initial Media Player	Setup
       MPlayer is the default media player. A help screen can pop-up and show
       you how to setup	the Media directories preferences, which tell
       FVWM-Crystal where your music and movie files are. You can do it	now or
       later, but it must be done before to use	the play-lists features	found
       in the Music menu (or button).

       For that, edit the file ~/.fvwm-crystal/preferences/MediaDirectories:

	   audio $HOME/Music
	   video $HOME/Video
	   cdrom /dev/cdrom0
	   dvd /dev/cdrom1

       You can put as many lines you need. Each	line have the following

	   type	path

       where type is one of [audio video cdrom dvd] and	path is	the full path
       to a directory or a device. Devices are used only for cd	and dvd. Note
       that all	players	doesn't	support	all the	provided features. Their
       respective menus	will be	adjusted accordingly.

       As example, you can have:

	   audio /home/name/Music
	   video /home/name/Video
	   audio /mnt/work/Music
	   video /mnt/usb/Video
	   dvd /dev/cdrom

       When you	are done, save the file. You can load the control for your
       preferred player	from the preferences menu

	   Crystal -> Music -> Player -> Music player

       or from the menu	on the first music button.

       In the same menu, you will find Recreate	the playlists. This script
       will scan the paths pointed by the MediaDirectories preference file,
       and create the play-lists into $HOME/.fvwm-crystal/Playlists. They will
       be separated into an Audio and a	Video part. We can call	them the
       Crystal play-lists. Don't edit those files, all your changes will be
       lost the	next time you run Recreate the playlists. Instead, 2 other
       directories will	be created: $HOME/Playlists/Audio and
       $HOME/Playlists/Video. They are the User	play-lists.

       In the same Music menu, the play-lists operation	are grouped. You can
       of course load them into	the selected player. Copy playlist will	copy
       the selected play-list from the Crystal play-lists to the User
       play-lists. Remove playlist will	remove the selected play-lists from
       the User	play-lists. Some players provide they own play-lists
       management system, FVWM-Crystal try to support them as well.

       Some supported players must be setup before FVWM-Crystal	can use	them.
       For that, please	refer to their respective documentation. If you	have a
       DVB card, please	refer also to the V4L-DVB Wiki at

   Mixer Setup
       FVWM-Crystal default mixer is AlsaMixer (via amixer). It	must have dB
       support for most, if not	all, sound cards, which	is a must. It is no
       default setup because the ALSA control names vary from card to card. To
       setup the mixer,	just go	into the preferences of	the Music menu or via
       a right click on	the second music button.

       The amixer control was fully rewritten, and it use the native steps of
       the ALSA	driver for the card in use.

       For the other mixers, the dB scale is approximated.

   Desktop Organisation
       19 different desktop layouts, named recipes, are	available.

       Some are	very simple and	provide	very few decorations. Others provide
       many buttons and	decorations. A few of them mimic existing OS, like
       Nebulae which loosely mimic Windows, or Amiga which mimic the Amiga OS.

       You can change them via Fvwm-Crystal system menu:

	   Preferences -> Recipes -> System

       The other preferences apply to all recipes and are independent from
       each others. By example,	you can	choose to have desktop icons showing
       the XDG user directories	and the	mounted	partitions, and	to not show
       applications icons.

       It is 2 menus, the system menu available	with Alt + Win_R (Meta +
       Windows Right) and the application menu available with Alt + Menu (Meta
       + a "menu" key).	A menu can also	be available by	holding	a Left click
       on the root window (the desktop)	if selected in System a	Preferences a
       Desktop menu (On	by default). The content of that menu depend on	the
       recipe in use.

       With FVWM > 2.6.5, a supplementary XDG application menu is available
       with *Alt + A" if selected in the preferences menu.

       Decorations common to all recipes
	   Not all recipes use all followings decorations called buttons, but
	   they	can be used in any recipe, inclusive your own ones.

	   The "Crystal" Button
	       or "FvwmButtons-MainMenu" is the	little button with a diamond.

	       There are some mouse bindings available:

	       o   left	clicking open the system menu

	       o   middle clicking open	the wallpaper menu

	       o   right clicking on some recipes open the applications	menu

	       The Amiga recipe	is different:

	       o   left	clicking shift the top bar to a	menu bar and back

	       o   middle clicking open	the wallpaper menu

	       o   right clicking open the system menu

	       When the	button is located at the top left corner:

	       o   mouse wheeling will change the screen resolution

	   The Media Buttons
	       They are	4 grouped media	buttons	- FvwmButtons-Music -
	       providing controls and menus for	the supported media players
	       and mixers. For a description of	their bindings,	consult	man
	       MouseBindings and man KeyboardBindings, or the html

	       The same	functionalities	are provided by	the Music menu,	which
	       is located in the System	menu.

	       The supported media players are alsaplayer, audacious, cdcd,
	       cmus, mocp, mpd,	mplayer, mplayer2, quodlibet and xmms2.

	       The supported audio mixers are alsamixer	and aumix, plus	the
	       mixers of the players.  QJackCTL	is also	supported.

	       o   left	clicking on the	first media button will	open a menu.

	       In it, Music player is where you	choose the player and can
	       start it.  Recreate the playlists will scan your	music and
	       video files and create the play-lists for you. For that,	it
	       will use	the preferences	file you edited	in the section "First
	       Start". It is also a mixer preferences menu where you can
	       choose the mixer	and the	sound card.

	       Each player have	its own	features set, and the Music menu and
	       functions will change accordingly.

	       As example, with	cdcd you have a	cd player and you will be able
	       to control it, when with	mplayer, you have an universal media
	       player, and FVWM-Crystal	will even recognize if you have	a DVB
	       card and	use it.	Basic stream capture is	enabled	and use	the
	       standard	C MPlayer key binding. See man mplayer.	This will
	       create a	stream dump in $HOME. That file	will be	usable only
	       with MPEG sources, and it can be	edited with applications like

	   The Application Panel
	       It is an	auto generated panel which provide one button for each
	       FreeDesktop menu	main category. The icon	of each	button is the
	       icon of the preferred application of that category. The mouse
	       bindings	available are:

	       o   left	clicking open the application menu of the category

	       o   middle clicking on some recipes launch the second preferred

	       o   right clicking launch the preferred application

	       These menus have	full support for the additional	FreeDesktop
	       categories, which mean much less	modifications will be needed
	       in comparison with many other desktops. And last	but not	least,
	       your modifications will never been lost.	It is why at the first
	       place I begun with Crystal and I	will keep it that way. See man
	       ApplicationDatabase for how to customize	the application	menu
	       (the examples are at the	end).

	       More: the files in the applications database are	scripts. You
	       can put anything	you want into them. You	will find them into
	       $prefix/share/fvwm-crystal/fvwm/Applications and
	       $HOME/.fvwm-crystal/Applications, and can copy them from	this
	       first location to the second one. The files in the second path
	       will take the precedence. The same apply	for the	icons

	       The same	database is used to generate the application menu
	       available with the system menu on some recipes, and with	the
	       Alt+Menu	key binding.

	       The application database	provided by FVWM_Crystal contain a
	       large set of menu entries and application icons.	You can
	       generate	extra database menu entries and	icons from the
	       preferences menu:

	       Diamond -> Preferences -> Generate application menu+

	   This	will populate $HOME/.fvwm-crystal/Applications and

	   + The 2 first time you run this script, it will copy	2 preferences
	   files and show help messages.

	   + Those files are $HOME/.fvwm-crystal/preferences/IconDirs and
	   $HOME/.fvwm-crystal/preferences/DesktopDirs.	They must contain the
	   full	path to	where the icon and desktop files provided by the
	   applications	are stored, typically something	like /usr/share/icons
	   and /usr/share/pixmaps for the icons, and /usr/share/applications
	   and /usr/share/applications/kde4 for	the desktop files. The 2
	   preference files are	self explained.

	   The Clock
	       As its name describe it,	a clock.

	   The Pager
	       It is a miniature illustration of the virtual desktop pages
	       with mini windows. By clicking on each of the segments you can
	       change the page.

	       For a description of the	bindings, see "man MouseBindings". *
	       Some recipes provide only a small button. Clicking on it	will
	       show or hide the	pager.

	       The number of desktop pages can be changed on the fly from the
	       preferences menu, option	Desktop	geometry. If necessary,
	       windows will be moved on	the last available desktop page.

	   Notification	area
	       Both stalonetray	and trayer are supported. For best support
	       will all	recipes, use stalonetray.

	   Icon	Manager
	       A recipe	can provide several icon managers, or only one,	or not
	       at all. They can	show the icons from the	running	applications
	       on the whole desktop or on the current desktop page. They can
	       be grouped by applications type like terminals or other
	       application types. The application name can be shown in the
	       icon manager or as a tool-tip when the mouse is over the	icon.
	       And different actions are bound to these	icons.

	       Some recipes provide an icon manager for	the iconic
	       applications. With these	recipes, no application	icons will be
	       on the desktop, independently of	what choice was	made in	the

	   Desktop Icons
	       It is 2 types of	icons: application icons and desktop icons.

	       Desktop icons are typically used	to launch a file browser at a
	       given path. You can choose in Preferences a Desktop manager how
	       FVWM-Crystal will manage	them:

	       o    None will remove the desktop icons

	       o    FVWM-Crystal will let FVWM-Crystal manage these icons

	       o    ROX_Filer will manage these	icons

	       o    Nautilus will manage these icons.

	       You can change on the fly between None and FVWM-Crystal.	The
	       other changes need to logout and	restart	Xorg and FVWM-Crystal.
	       At that time of writing,	the FVWM-Crystal-3.4.0 desktop icon
	       managing	is mature enough to considerer that ROX-Filer and
	       Nautilus	are provided only as a commodity or for	backward
	       compatibility or	convenience. (See man CrystalRoxHOWTO for

	       When FVWM-Crystal is selected, it will show all its icons by
	       default.	Right clicking on the Home icon	will open the Desktop
	       icons preference	menu. the Home icon is mandatory, both the XDG
	       user directories	icons, the partitions icons are	optionals and
	       the User	managed	directories are	optionals.

	       In the same menu, you can select	the actions for	the left and
	       middle clicks. Several file managers have built-in support:
	       Thunar, Worker (a very good Directory Opus clone), Midnight
	       Commander (mc in	short),	ROX-Filer, Nautilus, Krusader, Xfm,
	       4Pane, Ranger (a	Vim like file manager),	PCMan FM, gentoo
	       (another	dopus clone), Konqueror, emelFM2 (which, like mc,
	       support extfs), Dolphin and SpaceFM.

	       A custom	command	can also be set	where both console commands
	       and X commands can be used. A self documented form will be
	       launched, which let you update and save the configuration.

	       If pmount-gui is	installed, the contextual menu of the Home
	       icon will show 2	options	for mounting and unmounting the
	       removable devices. The contextual menu of the partition's icons
	       will show the mount points of the patitions and an item for
	       umounting the partitions. This options will use pumount if the
	       partition is mounted in /media, umount otherwise. You will also
	       get menu	items to mount the unmounted partitions, if they are
	       present in /etc/fstab with the option user(s).

	   Application Icons
	       They are	the icons of the iconic	applications. This will	work
	       only with the recipe that doesn't provide an icon manager for

       Preferences a Type of icons

	   you can choose between:
	   * +None+
	   * +Thumbnails+
	   * +Amiga+
	   * +Mwm+

	   +Amiga+ and +Mwm+ will show the application icons. Simple clicking on the +Amiga+ style icons will restore the application window. Double clicking on the +Mwm+ style icons will do the same.

	   Full	Screen Navigation

       For what	I know,	FVWM-Crystal is	the only GNU/Linux desktop that
       provide that feature.

       In short, Full Screen Navigation	is the ability to bring	in full	screen
       virtually any application, and to navigate between these	full-screened
       applications, as	well than between them and the desktop.

       It can be many useful use cases for it. As example, if you have several
       browser windows open and	want to	zap quickly. Or	with a file manager
       like mc which is	limited	to 2 panels. It	is one limitation: the full
       screened	windows	must be	on the same desktop page. This limitation is a
       force at	the same time, because you can zap the desktop pages too, and
       you can have full-screened and "normal" windows in any desktop page at
       the same	time.

       Try it. Launch a	few applications on the	current	desktop	pages ans put
       them in full screen with	Alt + KP_*. When this is done, use Alt + Shift
       + KP_* to zap between the full screened windows and the desktop.	With
       Alt + F<n>, you can zap the desktop pages.

       In fact,	this functionality is not new. It was already available	with
       the first Amiga computer	in 1985, when Windows was not born and the Mac
       was boring in black and white. It was called the	window stack. With the
       Amiga recipe, simple clicking on	the button at the top right corner
       provide that function too.

       Most preferences	are applied on the fly.	To change from or to the
       ROX-Filer or Nautilus desktop manager need a restart.

       Select recipe
	   Select a recipe.

       Desktop geometry
	   Select the number of	desktop	pages from 1 to	9.

       Characters fonts
	   Launch FVWM-Crystal font selector dialog.  Panel font is used by
	   the buttons,	Tittle font by the window title	bars, and Menu font by
	   menus. FVWM-Crystal support xft fonts and this dialog let you
	   visualize the fonts,	save and apply the fonts, as well than edit,
	   save	and restore the	example	string.	Restore	will restore the
	   example string to its original value. To restore it to its saved
	   value, you have to quit and launch again the	font selector.

       Handle width
	   Set the handle width	between	1 to 7 pixels. Handles are used	to
	   resize the windows with the mouse. See also *man KeyboardBindings".

	   Start and stop translucency.	Off by default,	this setting will not
	   survive a restart. When On, you can use the mouse wheel on the
	   window title	bars to	set their translucency.

       Bling bling
	   Start and stop the bling bling. It is an effect that	will shift the
	   translucency	with the focus.	This setting is	Off by default and
	   will	not survive a restart. Translucency can	have a negative	impact
	   with	some softwares like MPlayer. In	the worst case,	shift to a
	   primary console with	Ctrl + Alt + F<n>, login, run killall mplayer
	   or killall -9 mplayer, and get back to FVWM-Crystal with Alt	+ F7.

       Default terminal
	   Set the terminal available with Right click on the root window.
	   Possible choices: GNOME-Terminal, Multi-GNOME-Terminal,
	   XFCE4-Terminal, Terminator, MRxvt, URxvt+, ATerm, ETerm and XTerm.

       Fvwm console terminal
	   Set FVWM console terminal, Alt + ; will show/hide it, and it	will
	   be present on all desktop pages. It will only send commands to
	   FVWM. Very useful to	try any	FVWM command.

       QuakeConsole termianl
	   Set terminal	for the	QuakeConsole.  Alt + ' (grave) will show/hide
	   it, and it will be present on all desktop pages. You	can use	it for
	   whatever console you	want, by example htop. Supported by these 2
	   last	terminal are MRxvt, URxvt, ATerm and XTerm.

       Desktop manager
	   Select the manager for the desktop icons. See above.

       Icon type
	   Select the icon type	for iconic applications. See above.

       Desktop menu
	   Set On or Off the menu available with left clicking.	With
	   FVWM>2.6.5, you can also set	On or Off the XDG menu Alt + A

       Notification area manager
	   Select stalonetray or trayer, and let you choose the	size of	the
	   area	between	0 to 20	icons.

       Focus policy
	   Select the focus policy between

	   o	Amiga -	click to focus without raise

	   o	FVWM-Crystal -enter to focus without raise

	   o	FVWM-Crystal with raise	- enter	to focus with raise

	   o	MS Windows - click to focus with raise.

       With the	without	raise policies,	a click	on a title bar will raise the

       Privileged terminals
	   With	URxvt and ETerm, set the FPOverrideGrabFocus style. Such
	   terminals will never	loose the focus.

       Generate	application menu
	   Generate the	databse	entries	and icons for the applications menu.

       Silent operations
	   Add "2>/dev/null" at	the end	of most	commands launched by

       Preferences editor
	   Launch the Preferences editor which let you set several preference
	   files and variables:

	   o	Startup	- launch applications at startup

	   o	ShowDirectories	- custom directories shown by FVWM_Crystal
	       Desktop Manager

	   o	Browser	- The default browser (BROWSER environmental variable)

	   o	Editor - The default editor (EDITOR environmental variable)

	   o	DesktopDirs - The paths	for the	application type desktop files

	   o	IconsDirs - The	paths for the application icons

	   o	MediaDirectories - The paths for your media files

	   o	FullscreenApps - Set the applications you want in full screen
	       by default

       Key binding modifiers editor
	   Let you set which key are used as modifiers with the	key bindings.
	   This	is useful if the key bindings of FVWM-Crystal collide with the
	   key bindings	of your	prefered application (ardour, emas,
	   whatever...). In most cases,	to change Mod1 Meta is sufficient. I
	   use 4 for the left windows key for it.

   Structure of	Fvwm-Crystal
       FVWM-Crystal is split into system-wide files, a system-wide
       configuration, and an user-wide configuration.

       The system part is located in /usr/local/share/fvwm-crystal/fvwm
       (default) or /usr/share/fvwm-crystal/fvwm (distribution related). We
       can call	it <system>

       The system configuration	part is	located	in /etc/X11/fvwm/fvwm-crystal.
       Call it <config>

       The user	part is	located	in ~/.fvwm-crystal. <user>

       You can copy any	file from the system part (without the /fvwm/) to the
       2 other parts. For each file, files in the user part will be used first
       if they exist. If they don't exist, FVWM-Crystal	will use the files in
       the system configuration	part (empty be default), and if	they don't
       exist, it will use the files in the system part.	This is	true for all
       files loaded with the Include command, which is the case	for allmost
       all FVWM-Crystal	files.

   Location of some Files and their Function
       <system>/config will be the first file loaded by	FVWM. It initialize
       some variables and load the whole FVWM-Crystal configuration, inclusive
       the recipe in use.

       <system>/components/Standard is the second file loaded by FVWM. It
       contain the functions used to load the other files with respect to
       their priorities	part order. After, it load other files with functions
       used in many places.

       The other files in <system> are grouped in directories. Each directory
       correspond to a group of	functions. For example,	<system>/preferences
       are for the default preferences,	<system>/apps are functions to control
       some main features of FVWM-Crstal like the Desktop Icons, the Screen
       Saver, or the Fvwm Console.

       As a rule, make small modification at a time. And RTFM. FVWM is not so
       difficult, but it is very complex. This complexity make things harder.
       So, try to keep focused on one thing at a time.

       FVWM documentation is huge, The best place to read it is	on the FVWM
       website where you will find an html version, which ease the navigation.
       Use the stable 2.6 branch, the unstable 2.7 is outdated and will	not
       work well with FVWM-Crystal.

   Autostart of	Applications
       Copy <system>/preferences/Startup to <user>/preferences/Startup and put
       your commands here.

   Custom FVWM Commands
       Create the file <user>/userconfig and put your FVWM commands here. It
       will be the last	loaded file.

       This man	page was written by Dominique Michel
       <> (C) 2013-2015. I	am sorry for
       my bad English, and if you don't	like it	or can improve it, please
       considere to contribute.

       FVWM-Crystal and	all the	scripts	and other files	coming with the
       distribution are	subject	to the GNU General Public License (GPL).
       Please refer to the COPYING file	that came with FVWM-Crystal for

       Bug reports can be sent to the fvwm-crystal-users mailing list at

       KeyboardBindings(1), MouseBindings(1), FVWMCrystalFAQ(1), TIPS(1),
       CrystalRoxHOWTO(1), ApplicationDatabase(1)

fvwm-crystal 3.4.0		  12/31/2015		       FVWM-CRYSTAL(1)


Want to link to this manual page? Use this URL:

home | help