Po téměř dvou letech vývoje byl uvolněn uživatelský prostor Enlightenment 0.28, který je založen na sadě knihoven EFL (Enlightenment Foundation Library) a widgete Elementary. Kód je napsán v jazyce C a distribuuje se pod licencí BSD.
Pracovní plocha v Enlightenment je tvořena komponentami, jako jsou správce souborů, sada widgů, panel pro spouštění aplikací a grafické konfigurační nástroje. Grafické konfigurační nástroje poskytují jak vysoce úrovňové nastavení (změna vzhledu, nastavení virtuálních pracovních ploch, správa písem, rozlišení obrazovky, rozložení klávesnice, lokalizace atd.), tak i možnosti nízkoúrovňového ladění (například je možné nastavit parametry cachování, grafického zrychlení, spotřeby energie, změnit logiku práce správce oken).
Pro rozšíření funkčnosti se doporučuje používat moduly (gadgets), a pro přepracování vzhledu - témata. K dispozici jsou moduly pro zobrazení na desktopu kalendáře-rozvrhu, předpovědi počasí, dat monitorování, regulátoru hlasitosti, widžetu pro sledování stavu baterie. Složky Enlightenment nejsou pevně propojeny a mohou být používány v jiných projektech nebo pro vytváření specializovaných prostředí, jako jsou shell pro mobilní zařízení.
Mezi povinné závislosti patří EFL, libexif a libpam (pouze v Linuxu). Mezi doporučené závislosti nezbytné pro dosažení plné funkčnosti patří: connman pro nastavení sítě; bluez5 pro práci s Bluetooth; bc pro vestavěný kalkulátor; pulseaudio pro správu zvukových zařízení; acpid pro zpracování různých hardwarových událostí; packagekit pro sledování systémových aktualizací; udisks2 pro připojení externích disků; ddcutil pro správu podsvícení obrazovky; gdb pro trasování havarijních ukončení.

Nejvýznamnější novinky:
- Byla přidána podpora míchání zvuku pomocí zvukového serveru PipeWire (možnost práce s PulseAudio byla zachována).
- Byla přidána počáteční podpora platformy NetBSD.
- Byl přidán modul NetworkManager pro konfiguraci síťových připojení přes Wi-Fi, Ethernet, Bluetooth a VPN. Bylo implementováno automatické rozpoznávání síťových konfiguračních nástrojů NetworkManager a ConnMan. Byly přepracovány dialogy pro zobrazení seznamu připojení a nastavení Wi-Fi.
- Byly implementovány indikátory provozu, režimů ochrany Wi-Fi a úrovně signálu, stejně jako možnost zobrazení podrobností o síťovém připojení.
- Byla přidána podpora importu nastavení VPN a výstupu žádostí o přihlašovací údaje pro autentifikaci. Byla vylepšena podpora připojení pomocí captive-portálů.
- Byl připraven modul pro správu schránky, který má možnosti pro ukládání historie operací a odstraňování jednotlivých prvků z historie. Bylo vylepšeno sledování změn obsahu schránky a operací výběru textu.
- Byla přidána možnost omezení maximálního nabíjení baterie pro prodloužení její životnosti.
- Byla přidána podpora profilů spotřeby energie CPU poskytovaných prostřednictvím ACPI.
- Byla snížena intenzita dotazování stavu při vypnuté obrazovce.
- V prostředích založených na X11 byla přidána možnost nastavení zpoždění a frekvence opakování při stisknutí klávesy.
- Byl přidán vizuální efekt 'Roll Up' pro plynulé minimalizování oken.
- Byla odstraněna podpora pro vytváření samostatných profilů pro různé pracovní plochy a obrazovky.
- Byla zvýšena výkonnost rozhraní pro přepínání oken.
- Byly rozšířeny možnosti ovládání Bluetooth adaptéru.
Současně projekt Enlightenment publikoval sadu knihoven EFL 1.29 (Enlightenment Foundation Library), které umožňují vytvářet vizuálně atraktivní grafická rozhraní, charakterizující se kompaktností, nízkou spotřebou zdrojů a vysokým výkonem. I když byly původně vyvinuty jako základ pro prostředí Enlightenment, komponenty EFL se často používají pro vytváření rozhraní spotřební elektroniky a mobilních zařízení. Například EFL je součástí mobilní platformy Tizen, používané v domácích spotřebičích Electrolux, produktech Samsung, ProFUSION, Free.fr a Calaos.
Složení EFL:
- Eina — knihovna implementující datové typy (pole, hash, seznam, strom) a pomocné nástroje (práce s logy, hodnocení výkonu, převod formátů atd.).
- Eet — knihovna pro zapisování libovolného množství bloků dat do souboru pro následné rychlé čtení v libovolném pořadí.
- Evas — systém pro vykreslování pro organizaci výstupu na obrazovku. Evas operuje s obsahem obrazovky jako se scénou s objekty, jejichž stav lze sledovat. Na scéně lze provádět operace jako změna měřítka, rotace a 3D transformace. Tento přístup, abstrahovaný od umístění obrazových prvků, umožňuje vyvíjet uživatelské rozhraní z pohledu designéra, nikoli programátora (v kódu stačí definovat pouze logiku a nemusíte přemýšlet o vykreslování a výstupu na obrazovku). Evas také abstrahuje metodu výstupu, což umožňuje použití stejných kódů ve spojení s programově i hardwarově akcelerovaným vykreslováním.
- Ecore — knihovna pro organizaci cyklu zpracování událostí, která nabízí sadu modulů pro zjednodušení úkolů spojených se zpracováním událostí, jako je práce s Evas, vlákny, síťovými připojeními atd.
- Embryo — embedovaný interpret jazyka Pawn (dříve známého jako Small).
- Edje — grafická knihovna oddělující vzhled od kódu (design je definován jako načtený z souboru šablony). Edje zaujímá mezistupeň mezi HTML+CSS a SVG. Pomocí této knihovny lze vytvořit uživatelské rozhraní s animovanými vizuálními efekty a podporující dynamický design (vzhled lze kompletně změnit pouze výměnou EDJ šablony, aniž by se dotýkal kódu, přičemž na rozdíl od vizuálních témat může být pořadí prvků libovolně změněno).
- Efreet — knihovna, která umožňuje aplikacím používat specifikace Freedesktop.org pro práci s ikonami, Desktop soubory a nabídkami.
- Eeze — knihovna pro organizaci interakce s externími zařízeními prostřednictvím udev, HAL a dalších mechanismů.
- Expedite — nástroj pro měření výkonu, který může testovat různéEngines Evas, jako jsou X11, XRender, OpenGL, SDL a DirectFB.
- Evil — implementace vrstvy kompatibility pro práci na platformě Windows.
- Eio — abstraktní rozhraní pro přístup k souborovému systému a implementaci asynchronního vstupu/výstupu.
- Emotion — knihovna pro integraci přehrávačů zvuku a videa do aplikací. Přehrávání videa může probíhat s využitím Gstreamer, Xine nebo jiných externích pluginů (například VLC), přičemž video se zobrazuje jako standardní objekt v Evas.
- Ethumb — knihovna pro generování náhledů obrázků, které odpovídají standardům freedesktop.org. Ethumb je realizován jako služba dbus a klientská knihovna, která s touto službou komunikuje.
- Elementary — soubor widgetů s hotovou implementací různých grafických prvků (od tlačítek a ovládacích prvků po kalendář a modul pro úpravu textu).
- Eldbus — nadstavba nad DBus.
- Ephysics — poskytuje prostředky pro použití simulačního enginu fyzikálních procesů Bullet v aplikacích založených na EFL. Ephysics zajišťuje propojení Bullet s knihovnami Ecore a Evas.
- Ecore Audio — API pro práci se zvukem.
V nové verzi EFL pro sestavení byl použit nástroj Meson 0.60, byla vylepšena podpora systémů BSD a Windows, byl vyřazen engine založený na API DirectDraw, byla zvýšena účinnost cache, byly rozšířeny možnosti pro zobrazení textu a práci s fonty, byly přidány optimalizace na základě instrukcí AVX2, byla optimalizována kresba vektorové grafiky, byl přidán backend pro PipeWire, byla přidána podpora použití standardních nabídek v macOS, byla implementována možnost třídění prvků nabídek aplikací s ohledem na lokalitu, byla vylepšena podpora Waylandu, byl realizován nový API pro výstup zvuku, byl přidán nový renderer založený na OpenGL s podporou přechodů a kompozice.
Zdroj: opennet.ru
