Xfce
Encyclopedia
Xfce is a free software
Free software
Free software, software libre or libre software is software that can be used, studied, and modified without restriction, and which can be copied and redistributed in modified or unmodified form either without restriction, or with restrictions that only ensure that further recipients can also do...

 desktop environment
Desktop environment
In graphical computing, a desktop environment commonly refers to a style of graphical user interface derived from the desktop metaphor that is seen on most modern personal computers. These GUIs help the user in easily accessing, configuring, and modifying many important and frequently accessed...

 for Unix
Unix
Unix is a multitasking, multi-user computer operating system originally developed in 1969 by a group of AT&T employees at Bell Labs, including Ken Thompson, Dennis Ritchie, Brian Kernighan, Douglas McIlroy, and Joe Ossanna...

 and other Unix-like
Unix-like
A Unix-like operating system is one that behaves in a manner similar to a Unix system, while not necessarily conforming to or being certified to any version of the Single UNIX Specification....

 platforms, such as Linux
Linux
Linux is a Unix-like computer operating system assembled under the model of free and open source software development and distribution. The defining component of any Linux system is the Linux kernel, an operating system kernel first released October 5, 1991 by Linus Torvalds...

, Solaris, and BSD – though recent compatibility issues have arisen with regard to BSD Unix platforms. It aims to be fast and lightweight, while still being visually appealing and easy to use.

The current version, 4.8, is meant to be modular
Modularity (programming)
Modular programming is a software design technique that increases the extent to which software is composed of separate, interchangeable components called modules by breaking down program functions into modules, each of which accomplishes one function and contains everything necessary to accomplish...

 and reusable
Reusability
In computer science and software engineering, reusability is the likelihood a segment of source code that can be used again to add new functionalities with slight or no modification...

  It consists of separately packaged components that together provide the full functionality of the desktop environment, but which can be selected in subsets to create the user's preferred personal working environment. Xfce is mainly used for its ability to run a modern desktop environment on relatively modest hardware.

It is based on the GTK+
GTK+
GTK+ is a cross-platform widget toolkit for creating graphical user interfaces. It is licensed under the terms of the GNU LGPL, allowing both free and proprietary software to use it. It is one of the most popular toolkits for the X Window System, along with Qt.The name GTK+ originates from GTK;...

 2 toolkit (the same as GNOME
GNOME
GNOME is a desktop environment and graphical user interface that runs on top of a computer operating system. It is composed entirely of free and open source software...

). It uses the Xfwm window manager
Window manager
A window manager is system software that controls the placement and appearance of windows within a windowing system in a graphical user interface. Most window managers are designed to help provide a desktop environment...

, described below. Its configuration is entirely mouse-driven, and the configuration files are hidden from the casual user.

Xfce is included as one of the graphical user interface
Graphical user interface
In computing, a graphical user interface is a type of user interface that allows users to interact with electronic devices with images rather than text commands. GUIs can be used in computers, hand-held devices such as MP3 players, portable media players or gaming devices, household appliances and...

s on the Pandora
Pandora (console)
The Pandora is a handheld game console designed to take advantage of existing open source software and to be a target for homebrew development...

 handheld gaming system.

It is possible to run Xfce with 40MB of memory using Alpine Linux
Alpine Linux
Alpine Linux is a Linux distribution based on uClibc and BusyBox, which has the goal of being lightweight and secure by default while still being useful for general-purpose tasks. Alpine Linux uses PaX and grsecurity patches in the default kernel and compiles all packages with stack-smashing...

. On Ubuntu, tests show that Xfce 4.6 has lower memory usage than GNOME
GNOME
GNOME is a desktop environment and graphical user interface that runs on top of a computer operating system. It is composed entirely of free and open source software...

 2.29 and KDE Plasma Desktop 4.4, but higher than LXDE
LXDE
LXDE is a free and open source desktop environment for Unix and other POSIX compliant platforms, such as Linux or BSD. The goal of the project is to provide a desktop environment that is fast and energy efficient...

 0.5.

History

Olivier Fourdan started the project in 1996. The name "Xfce" originally stood for "XForms
XForms (toolkit)
XForms is a GUI toolkit based on Xlib for the X Window System. It features a rich set of objects, such as buttons, scrollbars, and menus etc. In addition, the library is extensible and new objects can easily be created and added to the library....

 Common Environment", but since that time Xfce has been rewritten twice and no longer uses the XForms toolkit. The name survived, but it is no longer capitalized as "XFCE", but rather as "Xfce". The developers' current stance is that the initialism no longer stands for anything specific. It has been nicknamed "Cholesterol Free Desktop Environment", even in some of its man pages, and this rendering is quite popular as the unofficial name in the community (about 17,400 Google hits as of November 2011 http://www.google.com/search?q=xfce+%22cholesterol+free+desktop+environment%22).

First versions

Xfce began as a simple project created with XForms, meant to be a free Linux
Linux
Linux is a Unix-like computer operating system assembled under the model of free and open source software development and distribution. The defining component of any Linux system is the Linux kernel, an operating system kernel first released October 5, 1991 by Linus Torvalds...

 clone of CDE
Common Desktop Environment
The Common Desktop Environment is a desktop environment for Unix and OpenVMS, based on the Motif widget toolkit.- Corporate history :...

. Fourdan released the program, a simple toolbar, to ibiblio
Ibiblio
ibiblio is a "collection of collections," and hosts a diverse range of publicly available information and open source software, including software, music, literature, art, history, science, politics, and cultural studies. As an "Internet librarianship," ibiblio is a digital library and archive...

 (then "SunSITE").

Version 2

Fourdan continued developing the project, and in 1998, Xfce 2 was released with the first version of Xfce's window manager, Xfwm. He requested to have the project included in Red Hat Linux
Red Hat Linux
Red Hat Linux, assembled by the company Red Hat, was a popular Linux based operating system until its discontinuation in 2004.Red Hat Linux 1.0 was released on November 3, 1994...

, but was refused because the project was based on XForms. Red Hat only accepted software that was open source and released under either a GPL compatible or BSD compatible license, but, at the time, XForms was closed source and free only for personal use. For the same reason, Xfce was not in Debian before version 3. Xfce 2 was only distributed in Debian's contrib component.

Version 3

In March 1999 Fourdan began a complete rewrite of the project based on GTK+
GTK+
GTK+ is a cross-platform widget toolkit for creating graphical user interfaces. It is licensed under the terms of the GNU LGPL, allowing both free and proprietary software to use it. It is one of the most popular toolkits for the X Window System, along with Qt.The name GTK+ originates from GTK;...

, a non-proprietary toolkit whose popularity was increasing. The result was Xfce 3.0, which was licensed under the GNU GPL
GNU General Public License
The GNU General Public License is the most widely used free software license, originally written by Richard Stallman for the GNU Project....

. Along with being based completely on free software
Free software
Free software, software libre or libre software is software that can be used, studied, and modified without restriction, and which can be copied and redistributed in modified or unmodified form either without restriction, or with restrictions that only ensure that further recipients can also do...

, the project gained GTK+'s drag-and-drop
Drag-and-drop
In computer graphical user interfaces, drag-and-drop is the action of selecting a virtual object by "grabbing" it and dragging it to a different location or onto another virtual object...

 support, native language support, and improved configurability. Xfce was uploaded to SourceForge.net
SourceForge.net
SourceForge is a web-based source code repository. It acts as a centralized location for software developers to control and manage open source software development. The website runs a version of SourceForge Enterprise Edition, forked from the last open-source version available...

 in February 2001, starting with version 3.8.1.

Version 4

In version 4.0.0, Xfce was upgraded to use the GTK+
GTK+
GTK+ is a cross-platform widget toolkit for creating graphical user interfaces. It is licensed under the terms of the GNU LGPL, allowing both free and proprietary software to use it. It is one of the most popular toolkits for the X Window System, along with Qt.The name GTK+ originates from GTK;...

 2 libraries. Changes in 4.2.0 included a compositing manager
Compositing window manager
A compositing window manager is a type of window manager. A window manager is software that draws a graphical user interface on a computer display – it positions windows, draws additional elements on windows , and controls how windows interact with each other, and with the rest of the desktop...

 for Xfwm which added built-in support for transparency and drop shadows, as well as a new default SVG
Scalable Vector Graphics
Scalable Vector Graphics is a family of specifications of an XML-based file format for describing two-dimensional vector graphics, both static and dynamic . The SVG specification is an open standard that has been under development by the World Wide Web Consortium since 1999.SVG images and their...

 icon set. In January 2007, Xfce 4.4.0 was released. This included the Thunar
Thunar
Thunar is a file manager for Linux and other Unix-like systems, written using the GTK+ 2 toolkit, and shipped with Xfce version 4.4 RC1 and later. Thunar is developed by Benedikt Meurer, and was originally intended to replace XFFM, Xfce's previous file manager...

 file manager, a replacement for Xffm. Support for desktop icons was added. Also, various improvements were made to the panel to prevent buggy plugins from crashing the whole panel. In February 2009 Xfce 4.6.0 was released. This version had a new configuration backend, a new settings manager and a new sound mixer, as well as several significant improvements to the session manager and the rest of Xfce's core components.

In January 2011, Xfce 4.8.0 was released. This version included changes such as the replacement of ThunarVFS and HAL
HAL (software)
HAL was a software project providing a hardware abstraction layer for Unix-like computer systems.HAL is now deprecated on GNU/Linux systems, with functionality being merged into udev as of 2008–2010...

 with GIO
GIO (Gnome)
GIO provides a modern, easy-to-use VFS API that sits at the right level in the library stack. The goal is to overcome the shortcomings of GnomeVFS and provide an API that is so good that developers prefer it over raw POSIX calls. It ships with GLib as a separate library called libgio-2.0...

, udev
Udev
udev is the device manager for the Linux kernel. Primarily, it manages device nodes in /dev. It is the successor of devfs and hotplug, which means that it handles the /dev directory and all user space actions when adding/removing devices, including firmware load.-History:udev was new in Linux...

, ConsoleKit and PolicyKit
PolicyKit
PolicyKit is an operating system component for controlling system-wide privileges in Unix-like operating systems. It provides an organized way for non-privileged processes to communicate with privileged ones. In contrast to systems such as sudo, it does not grant root permission to an entire...

, and new utilities for browsing remote network shares using several protocols including SFTP
Simple File Transfer Protocol
Simple File Transfer Protocol, as defined by RFC 913, was proposed as an file transfer protocol with a level of complexity intermediate between TFTP and FTP....

, SMB
Server Message Block
In computer networking, Server Message Block , also known as Common Internet File System operates as an application-layer network protocol mainly used to provide shared access to files, printers, serial ports, and miscellaneous communications between nodes on a network. It also provides an...

, and FTP
File Transfer Protocol
File Transfer Protocol is a standard network protocol used to transfer files from one host to another host over a TCP-based network, such as the Internet. FTP is built on a client-server architecture and utilizes separate control and data connections between the client and server...

. Window clutter was reduced by merging all file progress dialog box
Dialog box
In a graphical user interface of computers, a dialog box is a type of window used to enable reciprocal communication or "dialog" between a computer and its user. It may communicate information to the user, prompt the user for a response, or both...

es into a single dialog. The panel application was also rewritten for better positioning, transparency, item and launcher management. 4.8 also introduced a new menu plugin to view directories. The 4.8 plugin framework remains compatible with 4.6 plugins. The display configuration dialog in 4.8 supports RandR
RandR
The X Resize, Rotate and Reflect Extension is a X Window System extension, which allows clients to dynamically change X screens, so as to resize, rotate and reflect the root window of a screen. The initial X11 design did not anticipate the need for dynamic resizing and it was necessary to restart...

 1.2, detecting screens automatically and allowing users to pick their preferred display resolution
Display resolution
The display resolution of a digital television or display device is the number of distinct pixels in each dimension that can be displayed. It can be an ambiguous term especially as the displayed resolution is controlled by all different factors in cathode ray tube , flat panel or projection...

, refresh rate
Refresh rate
The refresh rate is the number of times in a second that a display hardware draws the data...

 and display rotation. Screens can be configured to either work in clone mode or being placed next to each other. Keyboard selection has become easier and more user-friendly. Also, the manual settings editor has been updated to be more functional.

The 4.8 development cycle was the first to use the new release strategy formed after the "Xfce Release and Development Model" developed at the Ubuntu
Ubuntu (operating system)
Ubuntu is a computer operating system based on the Debian Linux distribution and distributed as free and open source software. It is named after the Southern African philosophy of Ubuntu...

 Desktop Summit in May 2009. A new web application was employed to make release management easier, and a dedicated Transifex
Transifex
Transifex is an open source platform for localization. It is a service offering users with an easy-to-use interface to submit translations to various projects hosted on a number of hosting platform types. The name literally means "translation-builder" .-Features:Transifex supports translating...

 server was set up for Xfce translators. The project's server and mirroring infrastructure was also upgraded, partly to cope with anticipated demand following the release announcement for 4.8.

Applications

Xfce provides a development framework for applications. Other than Xfce itself, there are third-party programs which use the Xfce libraries
Library (computer science)
In computer science, a library is a collection of resources used to develop software. These may include pre-written code and subroutines, classes, values or type specifications....

, most notably the Mousepad text editor, Orage calendar and Terminal
Terminal (Xfce)
Terminal is Xfce's terminal emulator, replacing xterm as default. It takes advantage of Xfwm's built-in compositing to support true transparency....

. One of the services provided to applications by the framework is a red banner across the top of the window when the application is running with root privileges
Principle of least privilege
In information security, computer science, and other fields, the principle of least privilege, also known as the principle of minimal privilege or just least privilege, requires that in a particular abstraction layer of a computing environment, every module must be able to access only the...

 warning the user that they could damage system files.

Other Xfce components include:
  • Xfmedia, a xine
    Xine
    xine is a multimedia playback engine for Unix-like operating systems released under the GNU General Public License. xine is built around a shared library that supports different frontend player applications. Another important feature of xine is the ability to manually correct the synchronization...

    -based media player for Xfce; unmaintained since November 2006 (version 0.9.2)
  • Xfprint, a print manager
  • Xfburn, a CD/DVD burner

Mousepad

Mousepad is based on the Leafpad text editor, is the Xfce default text editor and is developed by Erik Harrison and Nick Schermer. It was originally developed to provide printing support, which Leafpad lacked at that time. There have been no new releases of Mousepad for some time.

Orage

Starting with version 4.4, Xfcalendar was renamed to Orage and several features were added. Orage has alarms and uses the iCalendar
ICalendar
iCalendar is a computer file format which allows Internet users to send meeting requests and tasks to other Internet users, via email, or sharing files with an extension of .ics...

 format, making it compatible with many other calendar applications. It also includes a panel clock plugin and an international clock application capable of simultaneously showing clocks from several different time zones.

Parole

Parole is a media player that is based on the GStreamer
GStreamer
GStreamer is a pipeline-based multimedia framework written in the C programming language with the type system based on GObject.GStreamer allows a programmer to create a variety of media-handling components, including simple audio playback, audio and video playback, recording, streaming and editing...

 framework. It is developed by Ali Abdallah and is part of the Xfce Goodies. It originally was only playlist based, but now includes an option to replace the entire playlist when opening a file for playing.

Thunar

Thunar is the default file manager for Xfce, replacing Xffm. It resembles GNOME's Nautilus
Nautilus (file manager)
Nautilus is the official file manager for the GNOME desktop. The name is a play on words, evoking the shell of a nautilus to represent an operating system shell. Nautilus replaced Midnight Commander in GNOME 1.4 and was the default from version 2.0 onwards....

 and is designed for speed and a low memory footprint as well as being highly customizable through plugins. Xfce also has a lightweight archive manager called Xarchiver, but this is not part of the core Xfce 4.4.0.
More recently, Squeeze has been started as an archive manager designed to integrate better into the Xfce desktop, though no further updates have been released since 24 February 2008.

Xfwm

Starting with version 4.2, Xfwm integrates its own compositing manager
Compositing window manager
A compositing window manager is a type of window manager. A window manager is software that draws a graphical user interface on a computer display – it positions windows, draws additional elements on windows , and controls how windows interact with each other, and with the rest of the desktop...

.

See also

  • LXDE
    LXDE
    LXDE is a free and open source desktop environment for Unix and other POSIX compliant platforms, such as Linux or BSD. The goal of the project is to provide a desktop environment that is fast and energy efficient...

  • GNOME
    GNOME
    GNOME is a desktop environment and graphical user interface that runs on top of a computer operating system. It is composed entirely of free and open source software...

  • KDE
    KDE
    KDE is an international free software community producing an integrated set of cross-platform applications designed to run on Linux, FreeBSD, Microsoft Windows, Solaris and Mac OS X systems...

  • Comparison of X Window System desktop environments
  • Comparison of X window managers
    Comparison of X window managers
    This article compares variety of different X window managers. For an introduction to the topic, see X Window System.- See also :* Comparison of X Window System desktop environments* Window manager...


External links

The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK