Enlightenment.org
-
-

EFL User Guide

-

This is the user guide for non-E17 EFL programs.

2.2 - Distro specific section

This section contains various distribution related notes and has links to known unofficial package repositories.

Debian:

There's an unofficial E17/EFL package repository maintained by Blake Barnett (shadoi) for Debian Sid (unstable). See http://shadoi.soulmachine.net for more details. Shadoi is a member of the Enlightenment team, his focus is Debian packaging. If you have any questions regarding the packages, please contact him directly.

If you wish to compile E17/EFL (and a few other EFL based applications) manually under Debian Sid, depending on what you wish to install, you'll most likely need to apt-get some or all of these in order to have an environment where the programs/libraries can be correctly built:

libtag1c2 libtagc0 libxml2-dev libxml2 cvs autoconf automake1.7 gettext libtool libfreetype6-dev libjpeg62-dev libpng3-dev libtiff4-dev
libungif4-dev libbz2-dev libltdl3-dev pkg-config libxine-dev build-essential flex bison sqlite3 libgtk2.0-dev libsqlite3-dev libXxf86vm-dev

We are not 100% sure about this list though, but at one staff member has managed to build all EFL/E17/EFL based applications that are covered in this guide after installing those packages on Ubuntu (which is based on Debian Sid) - some of these dependencies may not be really needed though. If you notice something that should be fixed in that list or perhaps notice that it's missing something, please contact us.

If you wish to compile under Debian Sarge, use the above list of dependencies, and add:

libxcursor-dev libxrender-dev 

Fedora Core:

There is an unofficial E17/EFL RPM repository maintained by Didier F.B. Casse (Prodigy) at http://sps.nus.edu.sg/~didierbe. Prodigy is a member of the Enlightenment team where he's responsible for Fedora Core packaging. Please contact him directly if you have any questions regarding these packages. If you have any questions about these packages, please email Didier F.B. Casse directly.

Foresight Linux:

The Foresight Linux community has set up some wiki pages with some distro-specific Enlightenment related information. Check http://wiki.foresightlinux.com/index.php/Enlightenment for English information. There's also a German page at http://wiki.foresightlinux.com/index.php/Enlightenment_Deutsch. Note that these sites are not related to us, nor do we have any control over their content, so if you have any comments about them, contact the Foresight Linux team directly.

Gentoo:

There are ebuilds in Portage for all EFL and most programs that use them. In addition to snapshots that are updated every few weeks, there are also live CVS ebuilds available. This can sometimes change though, sometimes there are only CVS ebuilds available for certain libraries/programs. Check the Gentoo package database to see the current situation. All CVS ebuilds have sudo as a dependency, so it will also be installed if you use the CVS ebuilds. It can be considered to be a security risk. The default sudo config file should not allow much though, so unless you edit it to allow insecure stuff it shouldn't be a problem on normal non mission-critical desktop systems. This is of course a question of opinion so you'll have to decide for yourself if you consider it a risk. Another thing you should know is that the CVS ebuilds obviously don't check md5sums. The CVS ebuilds will also use root for all steps of the installation and may not always work, depending on the current CVS situation. The snapshot ebuilds are only updated if nothing is seriously broken.

The CVS ebuilds are marked with the -* keyword while the snapshots are marked ~arch. Obviously neither the snapshots or the CVS ebuilds are marked stable. These ebuilds are maintained by Mike Frysinger (vapier@gentoo.org). If your whole system is set to ACCEPT_KEYWORDS="~arch", you of course won't have to make a /etc/portage/package.keywords file if you wish to use the snapshots, but if you want to use the CVS ebuilds you will have to use one.

Please read the official Gentoo Portage documentation for more precise information on Gentoo's package manager and especially the keyword system. Here is an example /etc/portage/package.keywords configuration file, which includes CVS keywords for the EFL and most applications based on them:

x11-wm/e -*
x11-misc/engage -*
x11-libs/ewl -*
x11-libs/evas -*
media-libs/imlib2 -*
dev-libs/eet -*
dev-db/edb -*
x11-libs/ecore -*
media-libs/etox -*
media-libs/edje -*
dev-libs/embryo -*
x11-libs/esmart -*
media-libs/epsilon -*
media-libs/epeg -*
app-misc/examine -*
net-news/erss -*
x11-misc/entrance -*
app-misc/evidence -*
media-libs/emotion -*
media-gfx/elicit -*
media-gfx/entice -*
dev-libs/engrave -*
media-video/eclair -*
If you wish to use the snapshots instead, and are running a stable (arch) system, replace the -* with ~arch. For most people (those using Intel compatible 32 bit x86 processors) this means ~x86. Note that you should not mix -* and ~x86 ebuilds. Another important thing to remember is that you need to manually specify the ebuilds in the correct order when you emerge them. This is because if you already have E17 installed, running "emerge e" will only update the E17 window manager itself, and not the EFL - in which case it'll most likely fail to compile. The other reason is because even if you don't have E17 installed, Portage will not emerge the libraries in the correct order if you simply "emerge e" and let Portage take care of the dependencies. The correct build order can be found in the "Building order and CVS notes" (2.1) section of this guide.

If you just want to get all the EFL, you can use this command line and then add the applications you wish to install:

emerge eet dev-db/edb imlib2 evas ecore epeg embryo edje epsilon esmart emotion ewl engrave

Note that sometimes there may not always be ~arch (snapshot) versions of these ebuilds available. The CVS ebuilds (-*) are always available. For those who aren't using the ebuilds, you need to specify a certain version of AUTOMAKE and AUTOCONF. You can add it to the autogen.sh for example:

#!/bin/sh
export WANT_AUTOCONF=2.5
export WANT_AUTOMAKE=1.7

Ubuntu GNU/Linux:

There's an unofficial E17/EFL package repository maintained by Blake 'shadoi' Barnett for Ubuntu Breezy. See http://shadoi.soulmachine.net for more details. Blake 'shadoi' Barnett is a member of the Enlightenment team, where he handles Debian packaging. If you have any questions regarding the packages, please contact him directly.

If you wish to compile the packages yourself (and you're using the current stable release, Ubuntu Breezy Badger 5.10), you'll need to install some (or all if you want to compile everything covered in this guide) of these packages in order to be able to compile everything correctly:

libtag1c2 libtagc0 libtagc0-dev libxml2-dev libxml2 cvs autoconf automake1.7 gettext libtool libfreetype6-dev libjpeg62-dev libpng3-dev libtiff4-dev
libungif4-dev libbz2-dev libltdl3-dev pkg-config libxine-dev build-essential flex bison sqlite3 libgtk2.0-dev libsqlite3-dev libXxf86vm-dev

We are not 100% sure about this list, so some of those packages may not actually be needed, or the list may be missing some packages. We can confirm however that at least under a Breezy default install everything should compile fine if you have those packages installed (but some of those packages may not actually be needed). If you notice that a certain package is missing in this list, or perhaps notice that one of the packages isn't actually required, please contact us.

 

FreeBSD:

Install the following from ports,

 

  • Configgen - ( /usr/ports/devel/configgen )
  • Jpeg - ( /usr/ports/graphics/jpeg )
  • PNG - ( /usr/ports/graphics/png )
*NOTE*
 
The following needs to be done using bash , for some reason not yet known to me the build scripts dont seem to pull in environment vars using csh :\
 
export the following
 
CFLAGS="-lintl -liconv -L/usr/local/lib -I/usr/local/include -L/usr/X11R6/lib -I/usr/X11R6/include"
 
Build libraries and E as described in the guide using the following method,
 
  • configgen.sh
  • ./configure (default prefix is /usr/local/)
  • make
  • make install  


PreviousUpNext

-