После полутора лет разработки состоялся релиз пользовательского окружения Enlightenment 0.26, которое базируется на наборе библиотек EFL (Enlightenment Foundation Library) и виджетах Elementary. Выпуск доступен в исходных текстах, пакеты для дистрибутивов пока не сформированы.
Рабочий стол в Enlightenment формируют такие компоненты, как файловый менеджер, набор виджетов, панель запуска приложений и набор графических конфигураторов. Enlightenment очень гибок в переработке на свой вкус: графические конфигураторы не ограничивают пользователя в настройках и позволяют настроить все аспекты работы, предоставляя как высокоуровневые средства (изменение оформления, настройка виртуальных рабочих cтолов, управление шрифтами, разрешением экрана, раскладкой клавиатуры, локализацией и т.п.), так и возможности по низкоуровневому тюнингу (например, можно настроить параметры кэширования, графической акселерации, потребления энергии, логику работы оконного менеджера).
Для расширения функциональности предлагается использовать модули (гаджеты), а для переработки внешнего вида – темы оформления. В частности, доступны модули для отображения на десктопе календаря-планировщика, прогноза погоды, мониторинга, управления громкостью, оценки заряда аккумулятора и т.д. Составляющие Enlightenment компоненты жестко не привязаны друг к другу и могут быть использованы в других проектах или для создания специализированных окружений, таких как оболочки для мобильных устройств.
Из обязательных зависимостей заявлены EFL, libexif и libpam (только в Linux). Среди рекомендованных зависимостей, необходимых для достижения полноценной функциональности: connman для настройки сети; bluez5 для работы с Bluetooth; bc для встроенного калькулятора; pulseaudio для управления звуковыми устройствами; acpid для обработки различных аппаратных событий; packagekit для отслеживания системных обновлений; udisks2 для монтирования внешних дисков; ddcutil для управления подсветкой экрана; gdb для трассировки аварийных завершений.
Наиболее заметные новшества Enlightenment 0.26:
- Добавлена настройка для использования протокола DDC (Display Data Channel) для управления подсветкой экрана.
- Увеличен размер эскизов окон при предпросмотре.
- Внесены исправления, связанные с реализацией поддержки протокола Wayland. В режиме работы с использованием Wayland обеспечен вывод экранной метки об экспериментальном характере поддержки Wayland.
- Для гарантирования сохранения изменений конфигурации задействован новый API синхронизации изменений на диске, предоставляемый библиотекой Eet.
- В файловом менеджере EFM реализована возможность добавления действий с файлами через desktop-файлы.
- Добавлена поддержка отключения активации хранителя экрана через API org.freedesktop.ScreenSaver.
- Добавлена поддержка DBus API, предоставляемого systemd-сервисом logind, для блокировки и разброкировки сеанса.
- Добавлен watchdog-процесс для определения зависаний в основном цикле обработки событий.
- Добавлен и задействован в системе уведомлений API для воспроизведения образцов звука.
- Добавлена опция для использования X11-расширения Randr через вызов утилиты xrandr, вместо обращения через API.
- Добавлены дополнительные параметры микширования звука.
- Добавлена опция для прокрутки с ускорением.
- Добавлена опция для управления установкой скрытого состояния окна через API NetWM (свойство _NET_WM_STATE_HIDDEN).
Одновременно проект Enlightenment опубликовал набор библиотек EFL 1.27 (Enlightenment Foundation Library), позволяющих создавать визуально привлекательные графические интерфейсы, отличающиеся компактностью, низким потреблением ресурсов и высокой производительностью. Несмотря на изначальное развитие в качестве базиса для окружения Enlightenment, компоненты EFL часто используются для построения интерфейсов потребительской электроники и мобильных устройств. Например, EFL является составной частью мобильной платформы Tizen, используются в бытовой технике Electrolux, продуктах Samsung, ProFUSION, Free.fr и Calaos.
В новой версии EFL:
- В библиотеку Eina добавлены API для работы с относительными путями и хэшами sha1. Библиотека Eina предоставляет функции для работы с различными типами данных (массив, хэш, список, дерево) и полезные инструменты (работа с логами, оценка производительности, преобразование форматов и т.д.).
- В Ecore добавлена возможность принудительного завершения выполнения exe-файла вместе с родительским процессом на платформе Windows. Ecore – библиотека для организации цикла обработки событий, имеющая в своём арсенале набор модулей для упрощения связанных с обработкой событий задач, таких как работа с X, Evas, потоками, сетевыми соединениями и т.п.
- В elm_cnp, реализацию механизма копирования и вставки через буфер обмена, добавлена поддержка списков URL.
- В библиотеку Evas, используемую для отрисовки текста, изображений и объектовна экране, добавлена поддержка загрузки и сохранения изображений в форматах JXL (JPEG XL) и QOI (Quite OK Image).
- В Eet, библиотеку сериализации и десериализации данных, добавлен вызов для синхронизации изменений на диск.
- Добавлена поддержка библиотеки LibreSSL 3.5.x и удалена поддержка GnuTLS.
- В наборе виджетов Elementary предписано задействование стандартных пиктограмм из темы оформления.
- В виджетах разрешена вставка из буфера обмена в поля для ввода паролей.