The older Enlightenment DR 0.12-era online documentation graciously Copylefted 1997 by Mandrake is still available if needed, and might still render up some information on theme development and E12/13 setups.
It works with any X Window System Release 6 or higher. The particular server does not matter, except for specific
performance reasons that might make you prefer one over another. Release 5 or under will not be able to provide
the X extensions that Enlightenment makes use of in their entirety, regardless of updates. For those of you who
have a lower version than this available on your local system, consider consulting your system administrator about
upgrading their X Window System, or allowing an alternative directory for running an R6 system from in order to
use Enlightenment in an /opt or /usr/contrib directory tree. In most of these cases, upgrading
is only an inconvenience of time and investment of effort, not money; and need not require anything other than an
additional directory tree structure set up by your system administrator.
It goes without saying, then, that if your system cannot run X (the X Window System Release R6) that you in turn also cannot run Enlightenment as your Window Managing tool. However, it is also true that if you also have a system that can, you can in turn cheat too.
AIX users can upgrade from a resource site.
This list is not inclusive to all existing successes, but rather a listing of what is generally known to work:
The library packages that are required for Enlightenment for the most part do not require GCC. However, Imlib, Enlightenment itself, and the included programmes (Dox, ConfigEdit), and Libungif do. This is not so much because there is a problem with your own compiler, but a problem with communication and expectation between your compiler and the compilation tools that are expected by the Makefiles that are generated for these packages, as GNU tools are used.
This means that if you receive an error concerning "ar", "nm", "libtool", or other compiler utilities that the Makefile cannot find, then you must either circumvent it or use it. Unfortunately, most of these will not work with different (non-GNU) compilers. It is recommended that you following the development platform as closely as possible and install GCC v. 2.7.2.3, v. 2.8.1, or EGCS v. 1.03a if you do not already have a GCC-family compiler; and that you also install the libtool package for a Development Release, plus autoconf and automake for CVS daily "take outs," if following current development closely is your fancy as well.
Please make sure that your installation of GCC libraries and includes match those of your system libraries and includes. If you have upgraded your system since initially installing GCC, it would be good to re-install GCC as well, as it depends on its own copies of these system libraries to match those of your system. If these are out of date from upgrading or are are otherwise made incompatible, then this misconvergence will cause you endless headaches with system library conflicts until you reinstall GCC.
You absolutely have to download and install the Enlightenment, Imlib and Fnlib packages, which are found at an Enlightenment mirror site. Chances are high that you do not have any of these or that they are seriously out of date. If possible, you should get the latest from this list, or from your Linux distribution site if you use Linux-based distribution and it is not listed in the Grab Map below, as these will likely the most stable, feature-rich of versions that work with your system setup.
For those who do not partake of a Linux platform, it should be stated that if you do not have an Intel based chip, that you should be using source code (TAR) in order to assemble Enlightenment where possible unless you are using a Linux distribution. However, alternative architectures can have some too.
|
| |||||||||
| Priority | Package | MinVer | TAR | RPM | DEB | Home | Needs | Blurb | |
| INCLUDED | Dox | v.0.14.0 | [tar] | [rpm] | [deb] | [home] | Enlightenment | GUI Help System | |
| INCLUDED | ConfigEdit | v.0.14.0 | [tar] | [rpm] | [deb] | [home] | Enlightenment | GUI Theme Creation | |
| NEED | Enlightenment | v.0.14.0 | [tar] | [rpm] | [deb1][deb2] | [home] | Below | the Window Manager | |
| OPTION | ESD | v.2.4.0 | [tar] | [rpm] | [deb] | [home] | None | Mixing sound server | |
| NEED | Imlib | v.1.7.0 | [tar] | [rpm] | [deb] | [home] | See Below | Graphics server | |
| NEED | Fnlib | v.0.3.0 | [tar] | [rpm] | [deb] | [home] | Imlib | Pixmap font rasterizer | |
| ADD-ON | Eterm | v.0.8.5 | [tar] | [rpm] | [deb] | [home] | Imlib | Terminal with pixmaps | |
| ADD-ON | Eplus | v.0.6.1 | [tar] | [rpm] | [deb] | [home] | Imlib | Clock/CD/etc panel | |
| ADD-ON | Emusic | v.0.6.1 | [tar] | [rpm] | [deb] | [home] | ESD | MP3/MOD/WAV/CD/AU player | |
| OPTION | Gtk-Perl | v.2/3.x | [tar] | [rpm] | [deb] | [home] | Perl | for ConfigEdit | |
| OPTION | Perl | v.5.004 | [tar] | [rpm] | [deb] | ]home] | None | for Gtk-Perl |
You may already have most of these packages depending on how up-to-date your system configuration (or distribution) is. Check the minimum version number to determine whether you can get away with keeping your old packages. And if you can't re-use, recycle. The packages that are available from the ftp.enlightenment.org site and its mirrors are verified to work with this configuration by the authors of Enlightenment.
The only thing you should not do is downgrade, as this will possibly break your applications.
Applications marked PROBLY means that it's probably a good idea, as these are used in fallback modes, so even if compilation of dependencies does not go well (ie, it's broken), then Enlightenment will still function, albeit not optimally. In other words, if you are not sure whether the PROBLY is referring to you, install them.
|
| ||||||||
| Priority | Package | MinVer | TAR | RPM | DEB | Needs | Blurb | |
| EITHER | Libgif | v.3.0 | [tar] | [rpm] | [deb] | None | the older, patented library | |
| EITHER | Libungif | v.3.0 | [tar] | [rpm] | [deb] | None | the newer, patent-free one | |
| NEED | Libz | v.1.1.2 | [tar] | [rpm] | [deb] | None | Compression | |
| OPTION | Libgr | v.2.0.13 | [tar] | [rpm] | [deb] | None | Older package combo | |
| NEED | Libpng | v.1.0.1 | [tar] | [rpm] | [deb] | Libz | For *.PNG/PNM files (net) | |
| NEED | Libtiff | v.3.4 | [tar] | [rpm] | [deb] | None | For *.TIF files (scanners) | |
| NEED | Libjpeg | v.6b | [tar] | [rpm] | [deb] | Libz? | For *.JPG files (any) | |
| NEED | Gtk | v.1.0.4 | [tar] | [rpm] | [deb] | Glib | the Gimp Toolkit | |
| NEED | Glib | v.1.0.4 | [tar] | [rpm] | [deb] | None | Gtk base | |
| PROBLY | ImageMagick | v.4.0.x | [tar] | [rpm] | [deb] | None | Image conversion fallback |
One does not build a house on a faulty foundation or on stony, unrelenting earth. Enlightenment tries to be as versatile, forgiving, and capable as possible. One of the ways it does this is to accept just about any kind of graphics format you throw at it. The idea is to be able to pick up a graphic from any source, with no knowledge, and plug it into a/your/someone else's theme. Enlightenment itself is a pure window manager; that is, it deals with your windows' fight between space and efficiency. It has a special graphics library, Imlib, to handle absolutely all graphics requests, and that means handling all graphic formats that are likely to show up as well. To do this efficiently and with the most precision, with as little overhead as possible, it doles it out to the programming routines that are already efficient, use as little overhead, and are tested and true: the specific graphic libraries who support these propietary graphic formats and can understand them best.
If you are sure of yourself, can get by without any help, and know Makefiles, library manipulation and dependencies, you can maybe get by without ImageMagick. Imlib'd GDK library subset can technically be taken out with some work in order to avoid Gtk, but why would you want to? It is better to live with what what is offered as a working package than trying to parse down the pieces you don't think you need, and for support reasons we will avoid suggesting or offering direct instructions to minimize these down. There will be an assumption of these packages being part of a standard Enlightenment installation and so, therefore, will the themes, the Enlightened applications, and the authors of both. Any parsing of installation requirements will rid you of nontrivial capability that you will most likely need.
That's more of a personal choice, I would think, than an objective choice. But you can try any one of them, as long as you do not mix them. There are some ways of mixing them, but most of them are messy and defeat the ease of the next tier up in the installation process, with the exception of using RPM/DEB for Tier 1 and 2 portion of the installation, and then using TAR for the higher level remainder. But be aware that if you use either of them that you will probably want a system that is completely consistent for future maintenance. On the other hand, TAR as an archive format has blind faith that you know what you're doing, and does not need accounting, which are unfortunately either incompatible or nonexistent between the methods.
RPMs or DEBs can be of great use in the lower libraries for the possibly extra compatibility and bugfixes they've placed in their flavour of the archive if you have a Redhat- or Debian-based system but for ease in installation and reinstallation might be useful for the higher level libraries and Enlightenment in case you run into trouble or want quick upgrades.
And of course it should be said that for those who do not use Linux (or *BSD) on the box E is to be installed on, this is probably not even a consideration you should be making.
I have the greatest assurances from both Tynian (the Debian uber-E maintainer) and Raster (head honcho of the Redhat hordes) that the Redhat and Debian distribution packages will be kept up to date with each official release. This still means that if you wade into the CVS tree that you will probably have to clean up any messes you make manually. Additionally, Debian packages are made for Esound (ESD) and Emusic regularly by their authors. Additionally, Debianized CVS snapshots are now available, and a similar service will hopefully be provided for RPMsed snapshots for those who don't want to wait or get their hands dirty.
Yes, you do. Most newer libraries available from your own distributions will be using Glibc-2 (or more commonly referred to in the Linux camps as Libc-6), and this is the eventual upgrade path of all Linux users. If you have an older distribution, either buy a new CD or download the things you'll need to perform the changeover to Glibc-2. This might be a lengthy download as all of your libraries thereafter will probably be best off being Glibc-2 based, although a minimum conformance can be kept by just upgrading the base Glibc-2 library itself and the graphic libraries needed to run Enlightenment. Use this method if you can. It might be seemingly slower, but it is far, far safer for the inexperienced. You will save yourself oodles of hair, time, and effort by not playing around with which you are unfamiliar.
Your other alternatives are to use the source code and either install it, never to worry about your package manager's version control again; or to thereafter transform it into an RPM yourself and install it in that "refined" form so that your version control (and "system sanity") is intact.
If you want to remain a Glibc-1 or Libc-5 system and have never compiled the source, then you might find it rough going. The documentation is all here for you to form an opinion about how easy this process might or might not be. Choose wisely--there might be no easy way to turn back once you start. The developers of Enlightenment would rather you not destroy your system trying to make Enlightenment run on it. Please, if you have never compiled from source code before, do a dry run on something else first, preferably something trivial that nothing else on your system is dependent upon.
Yes. As discussed in the previous question, you might want to upgrade only the necessary Libc-6 library package for your distribution. If you are uncertain as to whether you have a Libc-5 or Libc-6 system, type this:
locate libc.so
You will either end up with something that says libc.so.5, or libc.so.6, or both. If you only have Libc-5, follow the advice of previous question. If you have upgraded incrementally and want to know which library is from what version of Libc, type:
ldd /usr/lib/libraryname|grep libc.so -
The result will tell you which library it is linked against and thus dependent upon. Taking a dependency out from a library (or programme) will break it until its dependencies are fulfilled again. Depending on your package manager, you will not have to worry about these finer details, but they are here just in case you have damaged your system or have a mishmashed set of packages installed and need to resolve these difficulties yourself.
Use the
Grab Map, and rpm -Ui *.rpm the lot of them. It should sort
them out correctly and get back to you when it is done. If there are any dependencies still not resolved, type it again.
There is also a GNOME GUI front end to this process now called GRPM, as well as some native X11 and web-based ones. If you need to compile other programmes thereafter, it might be a good idea to get the *-devel versions of everything
as well.
You could either use the
Grab Map, or just use dselect and choose
Enlightenment, and that should in turn handle all of the Grab Map details and dependencies for you.
This means, however, that you need to choose Eterm, Emusic, Esound
and other packages separately as they are not dependencies of Enlightenment.
There is also a newer package management system called Apt that is gaining quick acceptance, and which the current E maintainer is utilising. The only thing you need to do is edit your /etc/apt/sources.list to say:
deb http://www.debian.org/%7Ebma/e-cvs/debs ./ (for CVS E15 snapshots)
deb http://www.debian.org/%7Ebma/emusic ./ (for Emusic snapshots)
In order to compile Eterm and similar programmes you will need the -devel versions of the packages as well as
the normal ones.
All of the files that we are referring to in this document that you have or want to use for Enlightenment already have their own stored directory structure in it. You do not need to make any directories, or any other nonsense. What you must do, however, is go to where you will store your source code, as this is what each package is comprised of. You can typically get there and unarchive the packages by typing:
cd /usr/local/src
tar zxf package (where package is /usr/path/package.tar.gz)
Then go to the directory that is created, and follow the further instructions from the