Enlightenment E17 is a lightweight, highly customizable desktop shell/window manager stack. This guide is for engineers and Linux power users who need the legacy SVN/source-based Ubuntu install path documented clearly, including dependency installation, script execution, and session registration.
Originally published on 2010-05-03; fully revised and updated.

Legacy context and prerequisites
The original procedure targets Ubuntu 9.10-era systems and uses an external helper script that pulls and builds E17 from SVN sources. On current Ubuntu releases, some package names and source locations may no longer exist exactly as shown, so treat this as a legacy/compatibility workflow.
- You need sudo access on the target machine.
- You should be comfortable reading terminal output and resolving missing dependencies.
- Do not run third-party scripts as root before inspecting them.
Installation workflow at a glance
flowchart TD
A[Install build dependencies] --> B[Download easy_e17.sh]
B --> C[Review script contents]
C --> D[Run installer with sudo -i]
D --> E{Installer completes}
E -- no --> F[Fix dependency or build errors]
E -- yes --> G[Apply export lines from output]
G --> H[Copy desktop file to xsessions]
H --> I[Log out and select Enlightenment]
Step 1: Install build dependencies
Run the dependency command from the original post:
sudo apt-get install xterm make gcc bison flex subversion cvs automake1.10 autoconf autotools-dev autoconf-archive libtool gettext libpam0g-dev libfreetype6-dev libpng12-dev zlib1g-dev libjpeg62-dev libtiff4-dev libungif4-dev librsvg2-dev libx11-dev libxcursor-dev libxrender-dev libxrandr-dev libxfixes-dev libxdamage-dev libxcomposite-dev libxss-dev libxp-dev libxext-dev libxinerama-dev libxft-dev libxfont-dev libxi-dev libxv-dev libxkbfile-dev libxkbui-dev libxres-dev libxtst-dev libltdl7-dev libglu1-xorg-dev libglut3-dev xserver-xephyr libdbus-1-dev liblua5.1-0-devCode language: CSS (css)
If packages are missing on your release, that is expected for a legacy guide. Resolve substitutes package-by-package for your distro version.
Step 2: Download and run the easy_e17 script
The original method uses the easy_e17.sh script to download, compile, and install E17 from SVN.
cd ~/Downloads && chmod +x easy_e17.sh && sudo ./easy_e17.sh -iCode language: JavaScript (javascript)
Before using sudo, inspect the script:
less ~/Downloads/easy_e17.shCode language: JavaScript (javascript)
Step 3: Apply installer-provided environment variables
When the installer finishes, it prints export lines for environment variables. Run those exact lines in your shell session, then verify they are present.
env | grep -E 'E17|EFL|PATH|LD_LIBRARY_PATH'Code language: JavaScript (javascript)
Step 4: Register Enlightenment in login sessions
Copy the generated desktop entry into the system xsessions directory so it appears in your display manager session list.
ls -1 /opt/e17/share/xsessions
sudo cp /opt/e17/share/xsessions/enlightenment.desktop /usr/share/xsessions/enlightenment.desktop
If your build produced the legacy filename shown in the original article, use:
sudo cp /opt/e17/share/xsessions/elightenment.desktop /usr/share/xsessions/enlightenment.desktop
Then log out and select Enlightenment as your session type at login.
Comparison of installation approaches
| Approach | How it is done | Advantages | Trade-offs |
|---|---|---|---|
| Legacy SVN script (this guide) | Install many build deps, run easy_e17.sh, apply exports, add xsession file | Matches original 2010 workflow closely | High risk of broken dependencies/URLs on modern systems |
| Distro package install (if available) | Use Ubuntu repository packages for your release | Simpler updates and dependency resolution | Version/features may differ from source builds |
| Manual source build | Clone/fetch sources directly and build each component | Maximum control over build flags and paths | Most complex to maintain and troubleshoot |
Source and attribution
Original references preserved from the post:
- http://www.enlightenment.org/
- http://omicron.homeip.net/projects/easy_e17/easy_e17.sh
- http://jeffhoogland.blogspot.com/2010/05/howto-install-e17-from-svnsource-on.html
Common pitfalls and best practices
- Expect package name drift: many dependency names are from older Ubuntu releases.
- Inspect third-party installer scripts before running with sudo.
- Validate the actual desktop filename in
/opt/e17/share/xsessionsbefore copying. - Prefer package-managed installs on production systems; source builds are better suited to test environments.
I’m Rajesh Kumar, a DevOps, SRE, DevSecOps, Cloud, and Platform Engineering expert passionate about sharing practical knowledge, real-world experiences, and industry best practices. I have worked at Cotocus and regularly write about technology, travel, investing, health, product reviews, and digital marketing through my various platforms.
I publish technical articles at DevOps School, travel stories at Holiday Landmark, stock market insights at Stocks Mantra, health and fitness guidance at My Medic Plus, product reviews at TrueReviewNow, and SEO and digital marketing strategies at Wizbrand.
Find Trusted Cardiac Hospitals
Compare heart hospitals by city and services — all in one place.
Explore Hospitals