Efter nÀstan tvÄ Ärs utveckling har anvÀndarmiljön Enlightenment 0.28 slÀppts, baserad pÄ uppsÀttningen av bibliotek EFL (Enlightenment Foundation Library) och widgetarna Elementary. Koden Àr skriven i C och distribueras under BSD-licensen.
Skrivbordet i Enlightenment bestÄr av komponenter sÄsom filhanterare, en uppsÀttning widgets, en applikationsstartare och grafiska konfigurerare. De grafiska konfigurerarna erbjuder bÄde högre nivÄinstÀllningar (designÀndringar, konfiguration av virtuella skrivbord, hantering av teckensnitt, skÀrmupplösning, tangentbordslayout, lokalisering och sÄ vidare) samt möjligheter för lÄg-nivÄ justering (till exempel kan man konfigurera cacheinstÀllningar, grafisk acceleration, energiförbrukning, Àndra logiken i fönsterhanteraren).
För att utöka funktionaliteten rekommenderas att moduler (gadgets) anvÀnds, och för att förÀndra utseendet finns det teman. Moduler finns tillgÀngliga för att visa en kalender-planerare, vÀderprognoser, övervakningsdata, volymregulator och en widget för att bedöma batteriets laddning. Komponenterna i Enlightenment Àr inte hÄrt kopplade till varandra och kan anvÀndas i andra projekt eller för att skapa specialiserade miljöer, sÄsom skal för mobila enheter.
Obligatoriska beroenden inkluderar EFL, libexif och libpam (endast i Linux). Bland rekommenderade beroenden, nödvÀndiga för fullstÀndig funktionalitet: connman för nÀtverkskonfiguration; bluez5 för Bluetooth; bc för den inbyggda kalkylatorn; pulseaudio för hantering av ljudenheter; acpid för hantering av olika hÄrdvaruhÀndelser; packagekit för att spÄra systemuppdateringar; udisks2 för montering av externa enheter; ddcutil för att hantera skÀrmbelysning; gdb för spÄrning av kraschavslutningar.

De mest anmÀrkningsvÀrda nyheterna:
- Stöd för ljudmixning har lagts till med anvÀndning av servern PipeWire (möjligheten att arbeta med PulseAudio har bevarats).
- Inledande stöd för plattformen NetBSD har lagts till.
- En module NetworkManager har lagts till för att konfigurera nÀtverksanslutningar via Wi-Fi, Ethernet, Bluetooth och VPN. Automatisk upptÀckning av nÀtverkskonfiguratorer NetworkManager och ConnMan har implementerats. Dialoger för att visa listor över anslutningar och konfigurera Wi-Fi har omarbetats.
- Trafikindikatorer, skyddslÀgen för Wi-Fi och signalstyrka har genomförts, liksom möjligheten att se detaljer om nÀtverksanslutningen.
- Stöd för import av VPN-instÀllningar och begÀran om autentisering har lagts till. Stödet för anslutning med hjÀlp av captive-portaler har förbÀttrats.
- En modul för att hantera urklipp har förberetts, med alternativ för att spara historik och ta bort enskilda element frÄn historiken. SpÄrningen av förÀndringar i urklippets innehÄll och textmarkeringens operationer har förbÀttrats.
- Möjlighet att begrÀnsa den övre laddningsgrÀnsen för batteriet har lagts till för att förlÀnga dess livslÀngd.
- Stöd för CPU-strömsparprofiler som tillhandahÄlls via ACPI har lagts till.
- Intensiteten av statusfrÄgor har minskats nÀr skÀrmen Àr avstÀngd.
- I X11-baserade miljöer har möjlighet att stÀlla in fördröjningar och frekvenser för repetitiva tangenttryckningar lagts till.
- Visuella effekten 'Roll Up' för smidig fÀllning av fönster har lagts till.
- Stödet för att skapa separata profiler för olika skrivbord och skÀrmar har tagits bort.
- Prestandan hos fönsterbytargrÀnssnittet har förbÀttrats.
- Möjligheterna att hantera Bluetooth-adaptern har utvidgats.
Samtidigt har projektet Enlightenment publicerat ett bibliotek med EFL 1.29 (Enlightenment Foundation Library) som möjliggör skapandet av visuellt tilltalande grafiska grÀnssnitt med kompakt form, lÄg resursförbrukning och hög prestanda. Trots att det ursprungligen utvecklades som en grund för Enlightenment-miljön, anvÀnds EFL-komponenterna ofta för att bygga grÀnssnitt för konsumentelektronik och mobila enheter. Till exempel Àr EFL en del av Tizen-mobilplattformen och anvÀnds i hushÄllsapparater frÄn Electrolux, produkter frÄn Samsung, ProFUSION, Free.fr och Calaos.
EFL:s komponenter:
- Eina â ett bibliotek som implementerar datatyper (array, hash, lista, trĂ€) och hjĂ€lpprogram (loggning, prestandautvĂ€rdering, formatkonvertering osv.).
- Eet â ett bibliotek för att skriva en godtycklig uppsĂ€ttning datablokker till en fil för senare snabb lĂ€sning i valfritt ordning.
- Evas â ett renderingssystem för att organisera utdata till skĂ€rmen. Evas behandlar skĂ€rminnehĂ„llet som en scen med objekt vars tillstĂ„nd kan övervakas. PĂ„ scenen kan operationer som skalning, rotation och 3D-transformationer utföras. Denna metod, avskild frĂ„n placeringen av skĂ€rnelement, möjliggör utveckling av anvĂ€ndargrĂ€nssnitt utifrĂ„n designerens perspektiv snarare Ă€n programmörens (i koden behöver man endast definiera logik och inte tĂ€nka pĂ„ rendering och utdata). Evas abstraherar ocksĂ„ utmatningsmetoden, vilket gör det möjligt att anvĂ€nda samma kod i kombination med bĂ„de programvaru- och hĂ„rdvaruaccelererad rendering.
- Ecore â ett bibliotek för att organisera hĂ€ndelsebearbetningscykler som erbjuder en uppsĂ€ttning moduler för att förenkla uppgifter relaterade till hĂ€ndelsebearbetning, sĂ„som arbete med Evas, trĂ„dar, nĂ€tverksanslutningar osv.
- Embryo - en inbyggd tolk för sprÄket Pawn (tidigare kÀnt som Small).
- Edje - ett grafiskt bibliotek som separerar utseendet frÄn koden (designen anges i form av en mall som laddas frÄn fil). Edje befinner sig mellan HTML+CSS och SVG. Med detta bibliotek kan du skapa anvÀndargrÀnssnitt med animerade visuella effekter och stöd för dynamisk design (utseendet kan förÀndras helt genom att byta EDJ-mall utan att röra koden, men till skillnad frÄn visuella teman kan ordningen pÄ elementen Àndras fritt).
- Efreet â ett bibliotek som gör det möjligt att anvĂ€nda Freedesktop.org-specifikationer i applikationer för att arbeta med ikoner, Desktop-filer och menyer.
- Eeze â ett bibliotek för att organisera interaktionen med externa enheter via udev, HAL och andra mekanismer.
- Expedite â ett verktyg för att mĂ€ta prestanda som kan testa olika Evas-motorer, sĂ„som X11, XRender, OpenGL, SDL och DirectFB.
- Evil â en implementering av ett kompatibilitetslager för att fungera pĂ„ Windows-plattformen.
- Eio â ett abstrakt grĂ€nssnitt för Ă„tkomst till filsystemet och för att implementera asynkron in-/utdata.
- Emotion â ett bibliotek för att integrera ljud- och videouppspelningsfunktioner i applikationer. Videouppspelning kan ske med hjĂ€lp av Gstreamer, Xine eller andra externa plugins (som VLC), dĂ€r videon visas som ett standardobjekt i Evas.
- Ethumb â ett bibliotek för att skapa bildminiatuarer som uppfyller standarderna för freedesktop.org. Ethumb Ă€r implementerat som en dbus-tjĂ€nst och en klientbibliotek som interagerar med denna tjĂ€nst.
- Elementary â ett set av widgets med fĂ€rdiga implementeringar av olika grafiska element (frĂ„n knappar och kontroller till kalender och textredigeringsmodul).
- Eldbus â ett lager ovanpĂ„ DBus.
- Ephysics â tillhandahĂ„ller verktyg för att anvĂ€nda simuleringsmotorn Bullet i applikationer baserade pĂ„ EFL. Ephysics kopplar ihop Bullet med biblioteken Ecore och Evas.
- Ecore Audio â API för ljudhantering.
I den nya versionen av EFL anvÀnds verktyget Meson 0.60 för byggnation, stödet för BSD-system och Windows har förbÀttrats, motorn baserad pÄ API DirectDraw har avförts, effektiviteten i caching har ökat, möjligheterna för textrendering och typhantering har utvidgats, optimeringar baserade pÄ AVX2-instruktioner har lagts till, rendering av vektorgrafik har optimerats, en backend för PipeWire har lagts till, stöd för anvÀndning av inbyggda menyer i macOS har implementerats, möjligheten att sortera menyelement i applikationer med hÀnsyn till lokalisation har genomförts, stödet för Wayland har förbÀttrats, ett nytt API för ljudutmatning har implementerats, och en ny rendering baserad pÄ OpenGL med stöd för gradienter och komposition har lagts till.
KĂ€lla: opennet.ru
