This is a flash from an almost forgotten past. I'm happy people are still using and even improving Enlightenment.
I used to run Enlightenment in the late nineties and early 2000s, first by itself, then with Gnome bar. At some point Gnome turned hostile on power users and I switched to KDE, leaving also Enlightenment behind, as well as any extensive customization of my desktop. At that time, the ubiquitous themes.org also got in disarray, and I feel it was a bit an end of an era of design and theming experiments on the early Linux (and *BSD) desktop.
I was also a huge fan of WindowMaker. Simple, effective, stylish without getting in the way. Also allowed me to have a vertical taskbar, which I stuck with even on Windows until Win11 has taken that from me - because Mac is the arbiter of taste and everyone must copy it.
Win 11 has some niceties, however many of those could have been provided on Windows 10 as well, for example the security stuff like VBS and secured kernel were already available, even if disabled by default.
Enlightenment always had a pretty weird value proposition. In the very beginning, there was "fvwm-xpm" and early "E" prototypes. They were graphically crazy with a heavy focus on shaped Windows. There's still nothing quite like that weird steampunk/Brazil-ish theme they had. Probably for a reason.
Then they went both visually rather tame and scope-creepy (own graphical libraries etc.). At the beginning I was hoping that we'd get some kind of Amiga-influenced design sensibilities on X (basically a more "artsy" MUI), but that never manifested.
Kind of similar story, eventually I ended up on GNOME, as I favoured Gtkmm over how KDE was at the time, but then GNOME 3.0 happened, and my travel netbook got migrated into Unity, and when it went away, XFCE.
Due to similar realisation, my main working devices became Window 7 with Virtual Box/VMWare Worstation, nowadays WSL.
Whenever I try something else, I always seem to keep going back to E16. Back in the day, it worked well in Gnome 2.x; these days I tend to use it in XFCE, but it feels a bit less integrated.
The amount of abuse I hurled at Carsten Haitzler (Raster) during our time at VA Linux (where he worked on E as well as other stuff) was a complete sitcom unto itself; at one point he debated making a "zeruch insult generator" just to streamline the verbal abuse process.
I loved using the environment but would regularly harangue him for being glib on resource usage. It really was otherwise very ahead of the curve.
I still remember how cool I thought raster was with his vaio and everything. This was the future! Transparent eterms and tasteful backgrounds everywhere.
Certainly not everywhere. I definitely remember plenty of tasteless ones, some deliberately so and others just cases of other people's taste differing from mine!
I love Enlightenment still, even the new ones. The most important component of it to me is Terminology. What a gorgeous and functional Terminal emulator.
No kidding. Last time I used Enlightenment back in the late 90s, both KDE 1.x and GNOME 1.x were orders of magnitude more usable on my lowly Pentium MMX 166 with 16 MB of RAM.
And detractors of Emacs used to claim that it stood for "Eight Megabytes And Constant Swapping" meaning that even on a then-huge machine with eight megabytes of RAM Emacs would use up all the memory. Now it is a tiny program compared to things like Visual Studio Code.
one of the more interesting things to think about is the big push to rendering all window manager stuff through a gpu, because we were sure we needed drop shadows and geometry transforms for windows....
Now, what we actually do in a window manager could easily be done in software in realtime, just farmed out to some cpu core.
> because we were sure we needed drop shadows and geometry transforms for windows
As screens get larger, the amount of pixels you need to push to composite windows gets larger-squared. It makes sense to move the pixel pushing away from the CPU and more importantly away from CPU-RAM and on to a separate RAM bus.
The "single buffer with invalidation" model of Win16 (I cannot remember how it works in X) saves memory at the cost of more redraws. The composition model allows you to do things like drag window A over window B without forcing a repaint of window B every frame.
It also allows for better process isolation. I think in both Win16 and X11 you could just get a handle to the "root window" and draw wherever you wanted?
eh, there is nothing a gpu can do here within the concept of composition that a cpu could not also do.
the gpu simply has buffers that it compsits, the cpu can do that as well. with the benefit of less complexity leading to not needing to worry about driver crashes.
on sane architectures its all the same ram anyway
> eh, there is nothing a gpu can do here within the concept of composition that a cpu could not also do.
True, but which is more efficient?
> on sane architectures its all the same ram anyway
Opinions differ. The main benefit of splitting RAM is not having to share the bus. As I said, this lets you use the CPU for CPU things without having to spend precious DRAM bandwidth shovelling pixels.
E16 was the hook that caught me and landed me, flopping and writhing, on the decks of Linux - I saw a black and white printout of someone’s desktop, and immediately set about figuring out how to get this unbelievable coolness working on my laptop. By the time I was done I was muttering modelines in my sleep, and had already committed my first patches to a kernel module.
I wonder how many other teenagers got catfished into becoming software devs and sysadmins by the siren song of rasterman.
Modelines are one of those skills that I thought would get obsoleted, but in fact taught me the mechanics of video timing that I was able to use in unrelated contexts. Such as years later where I was asked to fix a driver for a point of sale system which had a 1024x200 (or thereabouts, extremely wide nonstandard ratio) secondary screen.
Enlightenment is pretty cool. Some years ago though I realised
that I just want the computer to be a fast and simple workstation
at all times. That's when I kind of stopped using KDE (and GNOME3
but I did not use it to begin with, it always felt like an opinionated
smartphone-UI pushed onto the desktop).
I think only few people use Enlightenment, so the resources to fix
bugs must also be small.
Huh, someone's in it for the thrill of the hunt, I see...
Luckily the hang was deterministic.
I used to run Enlightenment in the late nineties and early 2000s, first by itself, then with Gnome bar. At some point Gnome turned hostile on power users and I switched to KDE, leaving also Enlightenment behind, as well as any extensive customization of my desktop. At that time, the ubiquitous themes.org also got in disarray, and I feel it was a bit an end of an era of design and theming experiments on the early Linux (and *BSD) desktop.
There was some kind of editing snafu though, the loop header in the big (first) code block reads:
But the references to it in the text, and updated versions in the patches, show it as just That was confusing me a bit.The loop is of paticular interest to us. Abridged:
My last time I used it was still in the 1990's, before I settled into Afterstep and soon afterwards Windowmaker.
In what concerns my use of GNU/Linux, it was CDE on others.
Apparently nothing big came out of Enlightenment and Tizen.
Then they went both visually rather tame and scope-creepy (own graphical libraries etc.). At the beginning I was hoping that we'd get some kind of Amiga-influenced design sensibilities on X (basically a more "artsy" MUI), but that never manifested.
After that I changed to KDE 3 which was a major milestone at the time. I think GNOME at the time was technically superior though.
Then shortly after I realized that desktop on Linux wasn't really going anywhere, so I switched to macOS (OS X at the time).
Due to similar realisation, my main working devices became Window 7 with Virtual Box/VMWare Worstation, nowadays WSL.
I loved using the environment but would regularly harangue him for being glib on resource usage. It really was otherwise very ahead of the curve.
Certainly not everywhere. I definitely remember plenty of tasteless ones, some deliberately so and others just cases of other people's taste differing from mine!
(digital blasphemy is still around and still selling art.)
I had the classic setup with the apache helicopter on the background and virtual desktops with preview. On MacOS however.
To this day i am still using a single screen, with virtual desktops ordered the same way.
Certainly wasn't considered lightweight back then :-)
I never saw the appeal of Enlightenment, but a very nice write-up regardless.
Now, what we actually do in a window manager could easily be done in software in realtime, just farmed out to some cpu core.
As screens get larger, the amount of pixels you need to push to composite windows gets larger-squared. It makes sense to move the pixel pushing away from the CPU and more importantly away from CPU-RAM and on to a separate RAM bus.
The "single buffer with invalidation" model of Win16 (I cannot remember how it works in X) saves memory at the cost of more redraws. The composition model allows you to do things like drag window A over window B without forcing a repaint of window B every frame.
It also allows for better process isolation. I think in both Win16 and X11 you could just get a handle to the "root window" and draw wherever you wanted?
True, but which is more efficient?
> on sane architectures its all the same ram anyway
Opinions differ. The main benefit of splitting RAM is not having to share the bus. As I said, this lets you use the CPU for CPU things without having to spend precious DRAM bandwidth shovelling pixels.
I wonder how many other teenagers got catfished into becoming software devs and sysadmins by the siren song of rasterman.
I think only few people use Enlightenment, so the resources to fix bugs must also be small.