Go to file
Carsten Haitzler 01c64f95f0 readme remove typo in compil and install 2022-06-04 16:50:33 +01:00
confs scripts: openbsd helper script. 2021-04-23 11:52:02 +01:00
data readme icon 2022-06-04 15:17:10 +01:00
doc tree-wide: get rid of trailing whitespace 2020-05-19 12:09:13 +02:00
meson meson - use install_mode 2018-12-27 17:16:33 +00:00
old remove old autogne.sh - dont need it anymore 2021-09-17 00:10:00 +01:00
po Updating french and italian translations 2022-06-01 13:54:26 +02:00
src e-remote - added -window-sendtodesktop 2022-06-04 13:29:16 +01:00
.gitignore ignore backup text files with tildas at the end 2019-05-14 12:42:01 +01:00
.mailmap enlightenment/mailmap: Move unused addresses to bottom of list 2020-03-24 16:58:42 -04:00
AUTHORS AUTHORS: Add jf_simon to list. 2020-04-12 14:10:36 +01:00
COPYING tree-wide: get rid of trailing whitespace 2020-05-19 12:09:13 +02:00
NEWS 0.24 - prepare dotting i's and crossing t's for 0.24 alpha 1 2020-05-02 16:15:30 +01:00
README.md readme remove typo in compil and install 2022-06-04 16:50:33 +01:00
TODO update TODO ... 2022-06-03 23:30:02 +01:00
meson.build build - fix cc.links for bsd case to use args not link args 2022-02-02 18:17:58 +00:00
meson_options.txt freebsd: make elput optional. 2021-04-12 12:47:27 +01:00
x-ui.sh remove e17 preload/precache hacks 2012-10-10 07:39:08 +00:00
xdebug.sh tree-wide: get rid of trailing whitespace 2020-05-19 12:09:13 +02:00





Please report bugs/issues at git.enlightenment.org

Enlightenment is a Window Manager, Compositor and basic "Desktop Shell". It replaces your environment that runs your day to day GUI Desktop. It includes a built-in file manager, Launcher, Shelves, Settings dialogs, Menus, Audo Mixer controls and much much more.



  • efl
  • libpam (Required on Linux, not BSD)

Highly suggested:

  • libexif (exif metadata display support)
  • bluez5 (BT support and l2ping tool)
  • connman
  • bc (For everything calculator)
  • pulseaudio
  • acpid (Unless your system doesn't have ACPI at all)
  • packagekit (For packagekit module updates status)
  • udisks2
  • gdb (If you want automatic bactraces in ~/.e-crashdump.txt)

Compiling and Installing

Meson is the build system used for this project. For more information please see mesonbuild.com

You will need normal build tooling installed such as a compiler (gcc or clang for example), pkg-config, ninja, any relevant package-dev or package-devel packages if your distribution splits out development headers (e.g. libc6-dev) etc.

Depending on where dependencies (like efl) are installed, you might have to set your PKG_CONFIG_PATH environment variable like:

export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:/usr/lib/pkgconfig

Also note that some distributions like to add extra arch directories to your library locations so you might have to have more like:

export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:/usr/local/lib64/pkgconfig:/usr/local/lib/x86_64-linux-gnu/pkgconfig:/usr/lib/pkgconfig:/usr/lib64/pkgconfig:/usr/lib/x86_64-linux-gnu/pkgconfig

You will need to enusre that the destination library directory (e.g. /usr/local/lib is in your /etc/ld.so.conf or /etc/ld.so.conf.d/ files and after installing anything that installs libraries you re-run ldconfig. Please see relevant documentation on ldconfig and ld.so.conf for your distribution.

You might also want to add the destination bin dir to your environment variable PATH (see documentation on your shell PATH variable) such as:

export PATH=/usr/local/bin:/usr/bin:/bin

Normal compilation in /usr/local:

meson . build
ninja -C build
sudo ninja -C build install

For meson build generic options:

meson --help

For a list of project specific options supported:

cat meson_options.txt

To set 1 or more project specific options:

meson --prefix=/path/to -Doption=value [-Dother=value2] [...] . build

To display current configuration:

meson configure build

The above will only work after at least the following is done:

meson . build

Quick build help

How clean out the build and config and start fresh:

rm -rf build

How to make a dist tarball and check its build: (must do it from git tree clone and commit all changes to git first)

ninja -C build dist

How to change prefix:

meson --prefix=/path/to/prefix . build

How to install in a specific destination directory for packaging:

DESTDIR=/path/to/destdir ninja -C build install

How to build with verbose output (full commands run):

ninja -C build -v

NOTE: If you do not want security issues make sure sysactions.conf is in /etc/enlightenment (not PREFIX/etc/enlightenment) as this is the first place it looks at. This file is intended to be customized by packagers and system integrators to match your policies and scripts/tools.

NOTE: To enable Wayland support (still considered experimental and not for regular end users) use the meson -Dwl=true option. To run Enlightenment in Eayland mode, just log on on any text VT and run enlightenment_start. If you wish to debug and see all the output try using something like screen then attaching to the remote screen session by sshing in etc.