Después de un año de desarrollo, se lanzó el entorno de usuario Enlightenment 0.27, que se basa en un conjunto de bibliotecas EFL (Enlightenment Foundation Library) y widgets de Elementary. El lanzamiento está disponible en código fuente sin publicar ensamblajes terminados. La lista de cambios para la versión 0.27 no se ha compilado; sólo está disponible una lista de confirmaciones, que enumera principalmente correcciones de errores y mejoras menores en los widgets.
El escritorio de Enlightenment está formado por componentes como un administrador de archivos, un conjunto de widgets, un iniciador de aplicaciones y configuradores gráficos. Los configuradores gráficos proporcionan herramientas de personalización de alto nivel (cambiar el diseño, configurar escritorios virtuales, administrar fuentes, resolución de pantalla, distribución del teclado, localización, etc.) y capacidades de ajuste de bajo nivel (por ejemplo, puede configurar parámetros de almacenamiento en caché, gráficos aceleración, consumo de energía, cambiar la lógica del administrador de ventanas).
Se propone utilizar módulos (gadgets) para ampliar la funcionalidad y diseñar temas para rediseñar la apariencia. Hay módulos disponibles para mostrar un planificador de calendario, pronóstico del tiempo, datos de monitoreo, control de volumen y un widget para estimar la carga de la batería en el escritorio. Los componentes que componen Enlightenment no están estrictamente vinculados entre sí y pueden usarse en otros proyectos o para crear entornos especializados, como carcasas para dispositivos móviles.
Las dependencias obligatorias incluyen EFL, libexif y libpam (solo Linux). Las dependencias recomendadas necesarias para lograr una funcionalidad completa incluyen: connman para la configuración de red; bluez5 para trabajar con Bluetooth; bc para calculadora incorporada; pulseaudio para controlar dispositivos de audio; acpid para manejar varios eventos de hardware; paquete para seguimiento de actualizaciones del sistema; udisks2 para montar unidades externas; ddcutil para controlar la retroiluminación de la pantalla; gdb para rastrear fallas.

Al mismo tiempo, el proyecto Enlightenment publicó un conjunto de bibliotecas EFL 1.28 (Enlightenment Foundation Library), que le permite crear interfaces gráficas visualmente atractivas, compactas, de bajo consumo de recursos y de alto rendimiento. Aunque originalmente se desarrollaron como base para el entorno de la Ilustración, los componentes de EFL se utilizan a menudo para construir interfaces para dispositivos móviles y electrónicos de consumo. Por ejemplo, EFL es una parte integral de la plataforma móvil Tizen, utilizada en los electrodomésticos Electrolux, productos Samsung, ProFUSION, Free.fr y Calaos.
Equipo de EFL:
- Eina es una biblioteca con implementación de tipos de datos (matriz, hash, lista, árbol) y herramientas auxiliares (trabajo con registros, evaluación de rendimiento, conversión de formato, etc.).
- Eet es una biblioteca para escribir un conjunto arbitrario de bloques de datos en un archivo para su posterior lectura rápida en orden aleatorio.
- Evas es un sistema de renderizado para organizar la salida de la pantalla. Evas trata el contenido de la pantalla como una escena con objetos cuyo estado se puede monitorear. Puede realizar operaciones como escalado, rotación y transformaciones 3D en la escena. Este enfoque, abstraído de la ubicación de los elementos de la pantalla, le permite desarrollar la interfaz de usuario desde el punto de vista del diseñador, no del programador (en el código basta con definir solo la lógica y no pensar en dibujar y mostrar aparece en la pantalla). Evas también abstrae el método de salida, lo que permite utilizar el mismo código en combinación con renderizado acelerado por software y hardware.
- Ecore es una biblioteca de bucles de eventos que ofrece un conjunto de módulos para simplificar tareas relacionadas con eventos, como trabajar con Evas, subprocesos, conexiones de red, etc.
- Embryo es una biblioteca para escribir pequeñas aplicaciones compiladas para dispositivos integrados.
- Edje es una biblioteca de gráficos que separa la apariencia del código (el diseño se establece en forma de plantilla cargada desde un archivo). Edje ocupa un nicho entre HTML+CSS y SVG. Con esta biblioteca, puede crear una interfaz de usuario equipada con efectos visuales animados y que admita un diseño dinámico (la apariencia se puede cambiar completamente simplemente cambiando la plantilla EDJ y sin tocar el código, mientras que, a diferencia de los temas visuales, el orden de los elementos puede cambiarse arbitrariamente).
- Efreet es una biblioteca que permite que las aplicaciones utilicen las especificaciones de Freedesktop.org para trabajar con iconos, archivos de escritorio y menús.
- Eeze es una biblioteca para organizar la interacción con dispositivos externos a través de udev, HAL y otros mecanismos.
- Expedite es una herramienta de medición del rendimiento que puede probar varios motores Evas como X11, XRender, OpenGL, SDL y DirectFB.
- Evil es una implementación de capa de compatibilidad para ejecutarse en la plataforma Windows.
- Eio es una interfaz abstracta para acceder al sistema de archivos e implementar E/S asincrónicas.
- Emotion es una biblioteca para integrar procesadores de reproducción de audio y vídeo en aplicaciones. La reproducción de vídeo se puede realizar utilizando Gstreamer, Xine u otros complementos externos (como VLC), y el vídeo aparece como un objeto estándar en Evas.
- Ethumb es una biblioteca para generar imágenes en miniatura que cumplen con los estándares de freedesktop.org. Ethumb se implementa como un servicio dbus y una biblioteca cliente que interactúa con este servicio.
- Elementary es un conjunto de widgets con implementación lista para usar de varios elementos gráficos (desde botones y controles hasta un calendario y un módulo de edición de texto).
- Eldbus es un complemento de DBus.
- Ephysics: proporciona herramientas para utilizar el motor de simulación de física Bullet en aplicaciones basadas en EFL. Ephysics proporciona un vínculo entre Bullet y las bibliotecas Ecore y Evas.
- Ecore Audio: API para trabajar con audio.
Fuente: opennet.ru
