• We’re currently investigating an issue related to the forum theme and styling that is impacting page layout and visual formatting. The problem has been identified, and we are actively working on a resolution. There is no impact to user data or functionality, this is strictly a front-end display issue. We’ll post an update once the fix has been deployed. Thanks for your patience while we get this sorted.

Enlightenment 0.17 is aviable via CVS now.

drag

Elite Member
All if it looks very interesting to me. I would be great to have a 3rd desktop alternative. Gnome and KDE are nice, but there is always something that could be nicer!!

Maybe it will provide a means to get away from programming GUI applications in straight C... All the libraries they are providing seem to have a high degree of abstraction.

From their website
(snippets only, go to the page to see the entire description I don't realy understand all of it anyways, but it looks cool)

Various libraries form the core of the "EFL", which I suppose in Windows terms is a API. There is also a couple peices of code snippets. For instance with using the Emotion library they made a DVD player with 56 lines of C code.

Evas:
Evas is a display canvas. This is different to the usual "immediate mode" display system that most programmers are used to and exists at the Xlib, GDI and even OpenGL levels when doing graphics programming. The difference is that the programmer has to call routines to DRAW the screen or updated display by drawing one operation at a time, such as draw line, paste image, draw box, paste text. When the screen needs an update these operations are done again by the code, normally from the bottom-most element in the draw to the top (painters algorithm). This is "immediate mode" drawing. Evas is different. It is structural by nature, so instead of drawing, you describe the canvas contents (or scene) in terms of primitives (images, lines, boxes, polygons, text strings etc.) and properties (color, stacking, size, etc.). The drawing itself is handled by the canvas, which acts as a state machine, not actually doing any "hard work" until the canvas's render call is executed, at which time it evaluates the previous and the current state and appropriately updates the screen without the programmer having to know how this is done.

Encore:
Ecore is a modular group of very closely linked libraries that provide core event loop functionality and related tasks. As the core event loop it provides conversion of system signals into events, to avoid having to have re-entrant code, handle basic file descriptor watching and passing off control to appropriate callback routines where needed, handling timers, idle calls, and other general program infrastructure and loop code.


Edje:
Edje is one of the more unique parts of EFL, combining many things that Shockwave / FLASH can do with some things it can't, but instead of being designed as a player, it is designed as a slave library to be used by an application to enhance the applications content and display via external compressed data files. It is being expanded continuously, and thanks to its clean design is easy to improve. This is the theme engine behind Enlightenment 0.17 and beyond and at last formalizes Enlightenment themes in a simple and consistent manner.

Embryo:
Embryo is a virtual machine and compiler based on the Small programming language. It has had many bugs fixed and a lot of portability work done to the engine and the compiler. It has been made smaller and simpler making it ideal for inclusion into any program wanting to use small pieces of "script logic" within a more complex system, but don't want to bring in the massive resources required by other languages such as Perl, Python, Java, Ruby, etc.

Eet:
Eet is a small and very useful library that does 2 things. It acts as a miniature "ZIP FILE" library. It doesn't handle ZIP format files as the ZIP format is more complex than is needed, but it does a similar thing where it can store multiple "files" within 1 compressed archive file AND randomly access every "file" within the archive very quickly, and decompress for you. This library can create such files and access them very efficiently. It can ALSO encode data within such files. It can save image pixel data in various formats as well as encode and decode C structs in memory so it is easy to store data and retrieve it as all that is needed is to feed in the pointer to a C struct in memory to save, and the reverse to load. It makes storage and retrieval of data structures in memory an easy process for anyone. It can also simply serialize this data for transmission across a network too. This means that linked lists, pointers to other data structures, strings etc. all get turned into a portable package of data that can be decoded into the same heirachy on the other end by Eet, giving the destination the same logical in-memory representation as the source. Eet is a big time-saver and is the workhorse underneath Edje for doing the data storage it needs.

(Now I don't understand the purpose behind that Eet thing so much....)

Emotion:
Emotion is the one of the newest libraries, but it shows the strength of what it is built on by its rapid development. Emotion is a video & media object library designed to interface with Evas and Ecore to provide autonomous "video" and "audio" objects that can be moved, resized and positioned like any normal object, but instead they can play video and audio and can be controlled from a high-level control API allowing the programmer to quickly piece together a multi-media system with minimal work. Emotion provides a modular decoder layer system where a decoder module can be plugged in separately to provide decoding resources for Emotion. Emotion currently has 1 decoder module that uses XINE as the decoder, allowing it to play DVD's, MPEG's, AVI's, MOV's, WMV's and much more. Its test program is already a useful DVD player (without a lot of the fancy control interface) and can play multiple video streams with semi-translucency and more.


edit:

Another summary from here
A quick breakdown:
Library Description
Imlib2 Image Rendering and Manipulation Library
EDB DB Wrapper
EET Distribution Container Lib and Tools
Evas Canvas Library
Ecore Event Abstraction and Modular Convience Library
Epeg JPEG Thumbnailing Library
Epsilon Freedesktop.org Thumbnailing Library
Etox Text Layout and Manipulation Lib
Edje Interface Abstraction Library and Toolset
Embryo Embedable Scripting Language
EWL Enlightenment Widget Libary
Emotion Video Smart-Object Library for Evas
 
I haven't tried Enlightenment for years, but there are definitely other alternatives out there. I use WindowMaker myself regularly and use fvwm2 on older machines (which I admit isn't a full desktop environment, but it's incredibly fast and provides all that I really need.) XFCE and Fluxbox are some modern alternatives, and I've good things about the latest revision of AfterStep.
 
Originally posted by: cquark
I haven't tried Enlightenment for years, but there are definitely other alternatives out there. I use WindowMaker myself regularly and use fvwm2 on older machines (which I admit isn't a full desktop environment, but it's incredibly fast and provides all that I really need.) XFCE and Fluxbox are some modern alternatives, and I've good things about the latest revision of AfterStep.
They are all nice but none compete with the visual experience of E.
 
Originally posted by: EmperorRob
All the examples on that page were C weren't they or are you just wishful thinking?

Sure, but they are building libraries and such. all system libraries will always be in something fast like C.


It's a small thing to take C libraries and to incorporate them into stuff like Python as modules. That way you use Python on things were speed isn't important, like telling your computer were to place a button, but you use C for something that is fast like rendering a moving DVD image with the ability to do transparencies.

All of the older DR16 stuff was extended to be used thru perl and python and other things. So I expect that once these system mature you will end up with C#, Python, Perl, and other language bindings.

I haven't tried Enlightenment for years, but there are definitely other alternatives out there. I use WindowMaker myself regularly and use fvwm2 on older machines (which I admit isn't a full desktop environment, but it's incredibly fast and provides all that I really need.) XFCE and Fluxbox are some modern alternatives, and I've good things about the latest revision of AfterStep.

This isn't a just a Window manager anymore. Like Gnome isn't a Windowmangaer, KDE isn't a Window manager, and GNUStep isn't a Window manager.
 
Originally posted by: drag
I haven't tried Enlightenment for years, but there are definitely other alternatives out there. I use WindowMaker myself regularly and use fvwm2 on older machines (which I admit isn't a full desktop environment, but it's incredibly fast and provides all that I really need.) XFCE and Fluxbox are some modern alternatives, and I've good things about the latest revision of AfterStep.

This isn't a just a Window manager anymore. Like Gnome isn't a Windowmangaer, KDE isn't a Window manager, and GNUStep isn't a Window manager.

I know, but XFCE is a desktop environment too. Anyway, the boundary between desktop environment and just a window manager with a few connect applications is fuzzy, with some frameworks like WindowMaker and AfterStep in that fuzzy boundary region.
 
XFCE doesn't offer it's own set of application libraries though. It's based on the same stuff that Gnome is based on. GTK+ or whatever.

AfterStep is a Window manager that uses the GNUStep stuff. Which is based off of the OpenStep specification that was created by Jobs and freinds when they created NextStep.

GnuStep actually is very close to Cocoa that is used in OS X. It's close enough that you can build applications that can use GnuStep in Linux and use Cocoa in OS X...

This Englightenment looks like AfterStep and GNUstep put together.

It has some very cool things going for it. For example if you build applications using the Evas canvas-thing you don't need X to run them.

For instance you can then run your applications on Trolltech's Qtopia, which is the GUI method used on Linux embedded platforms. (Like on Linux-based Cell phones, which are getting more popular). Or you can run it using a direct framebuffer straight from your system's console. And it will use OpenGL acceleration if it's aviable...

So if you build your applications to use it then users can choose a wide veriaty of rendering methods.
 
Originally posted by: pac1085
Originally posted by: cquark
I haven't tried Enlightenment for years, but there are definitely other alternatives out there. I use WindowMaker myself regularly and use fvwm2 on older machines (which I admit isn't a full desktop environment, but it's incredibly fast and provides all that I really need.) XFCE and Fluxbox are some modern alternatives, and I've good things about the latest revision of AfterStep.
They are all nice but none compete with the visual experience of E.
:laugh: Are you talking about Enlightenment or Ecstacy? hee hee
 
I've never quite liked Enlightenment, maybe it's just me, but it doesn't seem quite...right 😕

Oh well, when it shows up in Unstable I'll still try it out 🙂
 
Back
Top