The Enlightenment desktop shell provides an efficient yet breathtaking window manager based on the Enlightenment Foundation Libraries along with other essential desktop components like a file manager, desktop icons and widgets. It boasts a unprecedented level of theme-ability while still being capable of performing on older hardware or embedded devices.

E17 is the development release 17 (DR17) of the EnlightenmentDesktop Environment. It comprises both the Enlightenment window manager and Enlightenment Foundation Libraries (EFL), which provide additional desktop environment features such as a toolkit, object canvas, and abstracted objects. E17 has been under development since 2005, but in February 2011 the core EFLs saw their first stable 1.0 release. Enlightenment the window manager is still in the beta stages, but is already quite usable. Many people currently use E17 as a day-to-day desktop environment without problems.

Run it as user, so it downloads to ~/e17_src and builds as user, to install E17 (the script will immediately ask for your password so it can install in the end):

# easy_e17.sh -i

Warning: This will install the latest svn version. For a stable result add the --srcrev= parameter with the latest stable revision. For beta 3 use 55246 as argument. For the revision with the 1.0 release of the core libraries, use 56361, and for the 1.1 release use 65800 (2 Dec. 2011).

Put /opt/e17/bin in your PATH by editing /etc/profile. For example, you can add this line at the end of the file:

PATH="$PATH:/opt/e17/bin"

If, after completing the install, xinitrc complains that it cannot find enlightenment upon starting, you may need to add these lines to the end of /etc/profile as well:

PYTHONPATH=":$PYTHONPATH"

LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/opt/e17/lib"

If you encounter any errors while trying to install E17, first check to make sure it is not a dependency problem. If it is, install the dependency and continue installing e17.

To update E17 without using the program mentioned below, run this command as root:

# easy_e17.sh -u

Update_e17.sh

update_e17.sh is a zenity script which is made to accompany easy_e17.sh. It makes several aspects of updating e17 easier as it can backup and restore your E17 svn tree (in case there is breakage), as well as roll it back to a specific revision (again, in case of breakage) or even let you know when a new revision has come around on E17's svn tree. See this page for more information on this optional component. You can get it from the AUR: oz-e17-toolsAUR.

Starting E17

startx

Entrance

Nowadays E17 has a new display manager called Entrance, you can download it from AUR entrance-svnAUR.
Elsa is quite sophisticated and its configuration is controlled by /etc/entrance.conf.
To start Elsa add the following line to your /etc/inittab

x:5:respawn:/usr/sbin/entrance

and change your default runlevel to 5.

Other

More advanced display managers like GDM and KDM will automatically detect E17 thanks to the /usr/share/xsessions/enlightenment.desktop file provided by the e-svn package.

Configuring the Network

ConnMan

E17's preferred network manager is ConnMan. It is available from the [community] repository as the connman package. To interface with E17's default Network module, you must also install EConmman (available in AUR as econnman-svnAUR) and it's associated dependencies.

Finally, configure systemd to start the ConnMan daemon at startup:

systemctl enable connman.service

ConnMan loads very quickly and appears to handle DHCP quite nicely. If you have installed Wpa_supplicant, ConnMan latches onto that shows all available wireless connections.

You can also change the theme for the etk toolkit (the one which is used by exhibit). You can start the dialog to change the etk toolkit by starting etk_prefs.

Modules and Gadgets

Module

Name used in enlightenment to refer to the "backing" code for a gadget.

Gadget

Front-end or user interface that should help the end users of E17 do something.

Many Modules provide Gadgets that can be added to your desktop or on a shelf. Some Modules (such as CPUFreq) only provide a single Gadget while others (such as Composite) provide additional features without any gadgets. Note that certain gadgets such as Systray can only be added to a shelf while others such as Moon can only be loaded on the desktop.

Compositing

E17 offers two modules for compositing, Composite and Ecomorph, depending on your hardware and preference.

Composite

The Composite module is the standard compositing manager provided in enlightenment. It provides some minimal compositing effects such as transparency, fade and shadow. Composite provides the more stable module and is supported on a lot hardware through either OpenGL or compositing software rendering.

Ecomorph

The Ecomorph module is a full-featured compositing manager which was ported from Compiz for E17. It can be downloaded from AUR ecomorph-gitAUR. Some experience instability with Ecomorph while others use it without a problem. Ecomorph requires 3D acceleration, while Composite does not.

Places

In other words, Places is a gadget that will help you browse files on various devices you might plug into your computer, like phones, cameras, or other various storage devices you might plug into the usb port.

Scale Windows

The Scale Windows module, which requires compositing to be enabled, shrinks all open windows and brings them all into view. It can be added to the desktop as a gadget or set as a key binding.

Some people like to change the standard window selection key binding ALT + Tab to use Scale Windows to select windows. To change this setting, you navigate to Menu > Settings > Settings Panel > Input > Keys. From here, you can set any key binding you would like.

To replace the window selection key binding functionality with Scale Windows, scroll through the left panel until you find the "ALT" section and then find and select ALT + Tab. Then, scroll through the right panel looking for the "Scale Windows" section and choose either Select Next or Select Next (All) depending on whether you would like to see windows from only the current desktop or from all desktops and click "Apply" to save the binding.

Troubleshooting

If you find some unexpected behavior, there are a few things you can do:

Cursors

If X complains about X cursors not being available, install the libxcursor package.

Screen unlocking does not work

If screenlock does not accept your password add the following to /etc/pam.d/enlightenment:

auth required pam_unix_auth.so

Unreadable fonts

If fonts are too small and your screen is unreadable, be sure the right font packages are installed:

pacman -S ttf-dejavu ttf-bitstream-vera

udisks vs. HAL

Modules may need to use underlying libraries or daemons to interact with various devices connected to your computer. Currently there are at least two choices for these underlying libraries or daemons to interact with connected devices. The two that will be considered here are udisks and HAL. At the time of this entry the HAL page says:

HAL (Hardware Abstraction Layer) is a daemon that allows desktop applications to readily access hardware information, to locate and use such hardware regardless of bus or device type. In this way a desktop GUI can present all resources to its user in a seamless and uniform manner. HAL has become deprecated in favor of udev, udisks, upower, etc. and is no longer developed. Currently, a small number of programs still rely on and use HAL, though development is heading toward utilizing udev as a replacement.

So, apparently E17 now tries to use udisks instead of HAL. But some of the modules and gadgets, such as Places, have not been updated to use udisks yet.

Places does not work

If the Places gadget look something like a blank grey area with no Gadget in it and not detecting new device, it may because the Places is still trying to use HAL. Here is the procedure to get the HAL daemon running: