XFCE 4.20 aims to bring preliminary Wayland support
ostechnix.com
ostechnix.com
4.20 will let you run some of our components on another compositor. We mostly test with Wayfire and Labwc, as our compositor will also be using wlroots.
But yes, some people are excited, some don't care, some are worried.
But there won't be a switch. If users want to keep running it on X11, they can do that. I can't promise that will be the case forever, but it's not (won't be) that hard to support both with how things are currently.
Great software. Great mix of flexibility, modularity, ease of use, and good taste.
I also thank the devs.
Btw I love xfce. Find it to be the perfect balance between features, stability and performance!!!
A Wayland compositor is a completely different beast, and that's what we have to build.
A lot of xfwm4's behavior is windowing-independent, or fairly easy to put the windowing-specific calls behind interfaces. There's some of it that turns out to be pretty hard to untangle, which is where the real work is, but I think it's worthwhile work to take on.
I love xfce, I don't use it anymore though because I wanted Wayland support. As a (past and potentially future) user, I want to see a healthy xfce, not one that is burning out its devs with the giant task of maintaining a Wayland compositor. :)
But it's worth doing here. And wlroots does so much heavy lifting that it becomes a lot more manageable. Most of the code in xfwm4 will still be window management code, as it should be.
I've worked on Xfce on and off for 20 years (mostly off, I suppose; probably a total of ~7 years in that time), so I get what these big things are like, and what maintainership means. We're also a very small team of volunteers who have other jobs and other things going on in our lives. But that's fine; Xfce does just fine with that level of work, and will continue to do just fine.
And even if it isn't, and it's statically linked, so what? RAM is cheap and plentiful in most places these days, and if you're really upset about it you can build it yourself with --disable-wayland or whatever.
Anyway, the negativity is quite unnecessary and tiresome.
If I am upset about something, it is wlroots does not manage properly its symbol namespaces with the C preprocessor, that to reduce to near 0 the possibility to have symbol collision while static linking.
The great thing is finally xfce is going to have its wayland compositor. And there, there is not negativity, only positivity, because the real core of wayland is orders of magnitude simpler than x11 core, and wayland is getting its way on mobile, which means with vulkan3d, dude, the future looks bright, not grim, cheer up.
[1]: https://addons.mozilla.org/en-US/firefox/addon/auto-tab-disc...
LXQt if you want something with less features, Plasma if you want more features. They're both performant.
As for Wayland, I use it on a Raspberry Pi 4 (Raspbian xwayland). It works well enough, but there is some kind of bug that causes xwayland to fill the swap space at almost 100%. When this happens, I find it necessary to close applications to reduce the swap usage.
Not sure what you mean. We have CSDs available for people who like it, but they can be turned on and off.
If you're talking about random GTK apps that run on Xfce, there's not much we can do about that; we don't set app policy.
That's one of the nicer things about Wayland, though: there's a way for the compositor to tell applications "I'll draw the decorations". On X11 there's no protocol for that, only a way for an app to tell the window manager it wants to draw its own, without a way for the WM to say "no, don't do it".
Yes, guess you're correct. Qt apps in Plasma was a better mix for me. I have consistency and no funky titlebars.
But I don't get the HiDPI point? Certainly 4.16 had issues with HiDPI, but in 4.18 you can set the UI scaling factor, and I believe shortly before and/or after initial release, we fixed up all the issues of blurry image rendering. I have a HiDPI screen and it's worked very well for me, and looks nice.
And so I discovered that Cinnamon is also a very good option when it comes to « a better Windows 2000 ui ».
It’s also not incredible on HiDPI but at least Cinnamon is pretty good at not breaking everything when you increase font size by 150 or 200%. On XFCE if you do this everything becomes ugly.
Go to Settings, Appearance, Advanced, set the font DPI to something like 144 or what works for your screen.
The only thing that does not obey this is Firefox; the way to adjust it is to set layout.css.devPixelsPerPx to something like 1.5 in about:config.
First because usually it is only text that I want to be larger so I can read it. Increases the size of "everything" just decreases UI density with no benefit (while things that conform to the text like button still increase in size to contain the text).
Second because scaling "everything" often leads to ugly results. E.g. I use a program to browse local media files that generates thumbnails for those files. The size of the thumbnail generated matches the size of the widget it displays for that file. If the widget is scaled 1.5x due to UI scaling, it will show a blurry upscaled thumbnail.
Been using WSL full time for over a year and have no plans to go back..
How so? We support setting GTK's UI scaling to 2x, and (as of 4.18) I believe all the bugs around blurry icon rendering have been fixed.
What exactly becomes ugly for you?
I've been using it for years and years. I started when it was the only lag free WM I could run on an atom powered netbook (the only "pc" I had at the time)!
Now many years later im still using it, and it still makes me happy. I'm not sure if people know what it's like to be able to click on something and have it work instantly with no lag.
It is a great piece of software, thank you to all the Devs who work on it!
Edit: I've seen a few complaints about hidpi. I'm not sure if this helps, but I have a 4k laptop screen, usb-c to a 4k monitor, and hdmi to a regular 1024 monitor orientated vertical.
By setting x2 in the appearance settings both the 4k monitors look beautiful, and then in the screen manager (where you can move around the screens and set orientation, I just have to set 2x scale on the 1024 monitor and it's fine. Like obviously less good than the 4ks... But it is a worse monitor. I'm surprised it all works so well to be honest!
When compiling code on a remote machine, a terminal on one window would cause YouTube videos to lag on the other! As far as I could ascertain, there was simply no hardware accelerated playback going on. Both Chrome and Firefox had seemingly abandoned X11 for a Vulkan based render backend on Wayland
After leaving KDE 5 to "marinate" overnight (I use Gentoo, so compiling an entire desktop environment like KDE can be time consuming) everything "just worked"
I miss the visual simplicity of XFCE and I'm hopeful to return to it one day, but in the interim, responsiveness is key
What hardware are you using where KDE is considered "resource intensive", yet it also has a GPU that supports Vulkan and hardware video decoding?
I've used KDE for a long time, and can't remember a time when I noticed its resource usage (and I used to daily drive a ThinkPad X200 as late as 2016)
Normally it's a bit tricky to calculate memory blame between X11, the WM, and the shell, since often their allocations are actually on behalf of an application, and killing the application will reclaim it.
edit: typos
Most people nowadays would just get a fanless computer and give up on fighting the bloat. But I appreciate your sacrifice, thank you.
I just started to make the transfer to Linux from windows. I have limited experience after running Ubuntu on a dual boot laptop back in school a long time ago. It wasnt my daily driver at the time but class required it.
I recently downloaded fedora onto a desktop and it has been a horrid experience. It's sooo slow compared to when windows was on the same hardware. It's so bad the kids won't use the computer unless it's the last one available. I regret the switch, but want the results. I cannot seem figure out what's causing it.
A typical way would be using xfce's "enable display compositing" setting with a graphics driver that doesn't support proper acceleration.
If your hardware is supported (e.g. WiFi chips and GPUs are definitely a valid concern), I know of no post-install config that Debian with Cinnamon needs that you'd not also need to do on Windows, and Microsoft will put ads in your start menu for the trouble of buying their license at that
Reality is most people aren't sensitive to whatever it is these people believe they are perceiving and will get on fine with whatever the defaults are.
I still remember seeing a video of Xfce (I think it was version 4.0.4) and being amazed how simple and reliable you could pick your own launchers and widgets on the bar. For me it was much simpler than Gnome at the time.
Modern KDE looks sometimes like Xfce for me (just my feeling, don't bite me), but somehow I always get a lot of strange bugs when I try to change things. Xfce had its own problems (I remember when Thunar was quite unstable), but it still is my go to desktop for simplicity and reliability.
same.
why?
they all grew up on Win9x and the visual metaphors used by XFCE just click, they could all care less what's behind the scenes as long as YouTube and Facebook work.
p.s. dwm is great. most suckless stuff is.
https://manpages.opensuse.org/Tumbleweed/waypipe/waypipe.1.e...
...I get it that Wayland is the future and all, that it has features we need as an OS to get to the next level, but I feel there should be no rush to do it, and I feel a strong push for Wayland in distros right now, even with all these little broken things all over the place.
I'm still on X11 myself for the time being as my OS doesn't support wayland properly yet (it runs but not with KDE)
I remember when we got confined and were sent home, I could not screen share in MS teams on chrome out of the box but a few minutes of search gave me the chrome flags to enable and I just created a new local desktop file to start it up with the right flags
Since then the only things that have been missing is HDR support and color calibration. It sucks to not have them ready but they are only really used by a tiny fraction of the users so for 99.9% of the users wayland works fine.
Pretty much every single Wayland compositor follows this except for GNOME, who refuse to do so. It causes problems with windows like Davinci Resolve who don't draw their own decos. This leaves some windows without any controls at all lol. But this is a tangent and purely a GNOME problem.
Don't all WMs have shortcut keys anyway?
I gave up when even normal settings were hidden and I had to use Gnome Tweak Tool, but when I upgraded, I found all my changes had been wiped.
Sure it does. Allowing windows to draw their own decorations, often in different ways and with different styles and themes, and not respecting the settings in xfwm4 as to what window-control buttons should be drawn (and where)... that's a huge UX issue.
The process drawing it's own decorations? Technical decision that both Windows (tad complicated) and macOS already do, nothing to do with UX. There's nothing stopping this model from having the uniformity of SSD (as like on macOS), but it does on Linux due to multiple toolkits which don't all agree with eachother.
Combined headerbars? UX decision.
> I heard that GNOME is currently trying to lobby for all applications implementing CSD. One of the arguments seems to be that CSD is a must on Wayland. That’s of course not the case. Nothing in Wayland enforces CSD. Wayland itself is as ignorant about this as X11. [...] In fact we created a protocol (supported by GTK) that allows to negotiate with the Wayland compositor whether to use CSD or SSD.
From https://blog.martin-graesslin.com/blog/2018/01/server-side-d...
Wayland is agnostic, and it's up to the compositor and application to decide what to do while operating under wayland.
Not really. The GNOME/GTK folks were already on the CSD bandwagon well before Wayland. Wayland compositors are free to draw their own decorations (and xfwm4 will indeed continue doing that once it's a Wayland compositor), and one of the actually neat things about Wayland is that there is a protocol that allows the compositor to tell applications not to draw their own decorations. (Whereas on X11 an app can tell the WM it will draw CSDs and the WM can't do a thing about it.)
Certainly GNOME has gone all the way to CSDs (IIRC if an app on GNOME doesn't draw CSDs, they get no decorations at all), but that has nothing to do with Wayland.
Their security model won't allow this. I don't know how accessibility and automation tools are going to get by trying to support every wayland compositor.
Linux is fine with X11 per my requirements above. The biggest problem is the fragmentation caused by Wayland. I cant develop software that targets any reasonable range of desktop environments much less, the features needed. If Wayland was left and X11 was right the community needs something in the middle paradigm.
I highly recommend Qt for this purpose.
Gtk has been a hot mess for the past few years with Gtk4 and libadwaita shenanigans. However, Qt has continued to evolve incrementally without dropping any backwards functionality.
It's incredibly full-featured and has amazing tooling. In addition to Qt Creator you also have the CLI tools for packaging and whatnot and KDE has Kirigami for components.
The nice thing is that Qt applications look pretty good in native environments like plasma, but they also look pretty good in Gtk environments, including older Gtk-3 desktops and newer Gtk-4 desktops. So you cover all your bases. You also get Mobile and Windows/Mac, if anybody cares.
The two real downsides are:
- GPL
- C++ only (ish). There's other bindings but they will not have the same level and quality of tooling. Gtk has less tooling overall, but MUCH more high-quality bindings.
I really appreciate your comment. QT is a great framework doing a lot of heavy lifting. However, the accessibility software I help maintain needs the ability to know what windows are in the foreground, all applications running and emulating key/text/mouse input in any of those running applications. Wayland is antithetical to those features by design.
I can see your point with QT for standalone applications. However, with interacting with other applications I'm not sure QT can solve the issue.
But, for example, I think kwin can definitely do this.
Unfortunately, GTK has it's own set of drawbacks.
But, this Wayland thing is pushing me over to the BSDs. So far I have no abandoned Linux and I doubt Wayland will become mandatory until Firefox stops supporting X.
I'm quite disillusioned with desktop computing in general. Microsoft and Google are leading the way with "enshittification" (https://en.wikipedia.org/wiki/Enshittification), and the Mac experience in 2024 isn't like what it was in 2009 when the Mac was at its peak, in my opinion. The Linux desktop ecosystem suffers from a lack of funding relative to its commercial peers, combined with the "organization from chaos" that comes with bazaar-style development. The X11 to Wayland transition would be easier to pull off if the Linux desktop has Microsoft- or Apple-levels of funding and cooperation, but such funding doesn't exist, and part of the characteristic of the bazaar is that developers and teams of developers get to work on projects of their own interest and its the community that "votes" on projects by using them. The bazaar definitely exhibits freedom, but the major downside is that major changes in infrastructure (such as the X11 to Wayland transition) could take a lot of time and have major pain points (for example, the development of incompatible Wayland compositors and the fact that the X11 concept of a window manager doesn't exactly translate to Wayland's concepts).
I love free, open source software, but I'm drawn more to cathedral-style projects such as the BSDs and HaikuOS where there is a coherent vision for the system. Unfortunately the BSDs are dependent on the broader FOSS ecosystem for desktops, which is dominated by the GNOME/KDE/Wayland ecosystem (which also priorities Linux and treats other Unix-like operating systems as an afterthought, but that's another discussion). I'll need to re-investigate HaikuOS to see whether it can be used as a daily driver today; I've seen that a lot of attention has been given to HaikuOS in recent years.
I'm slowly working on a side project where I'm implementing my dream OS, which is influenced by various alternate paths of workstation and desktop computing explored in the 1980s and 1990s but were overtaken by Windows and Unix, namely Lisp machines, the Smalltalk environment, and 1990s Apple initiatives such as OpenDoc and the original plans for the Newton, which involved a Lisp OS (https://mikelevins.github.io/posts/2021-07-12-reimagining-ba...). But I have a busy day job and so this will take years of effort on the side.
I, much as other users, just want my computer to solve the problems I ask of it, not turn into an activity in its own right or a maze of hosting problems and pain to get a simple task done. The job of the computer is to free us from slavery and everyone seems to have bloody well forgotten that.
macOS is my dream OS as it stands.
I can add a cucumber to my shopping list on my mac and when I get to the supermarket, it's on my phone.
I can share a calendar with my family and it just works.
I can listen to music on it and the same music is on my phone.
I can open and move pages around in a PDF without having to futz with anything or open a terminal.
I can literally write on my iPad with a pen and a PDF pops out full of my writing which I can send to people for review and feedback.
I can use Lightroom, Photoshop and Excel, which are far superior to any open source products and I do not mind paying for that privilege.
etc etc.
The hardware cost and upgrade inflexibility, neither of which I have found a problem either way, is insignificant anyway to the pain I would incur without it.
And that's what the community does't get: the last 20% is the hard bit and the above is the last 20% and it has never even once in the history of OSS got anywhere even remotely near that. No one cares about the political purity and ideology behind it.
No one cares, until they do. Everything you mentioned depends on a single company, which follows the commands from just a few people, who can one day decide to lead the operating system in a direction which makes it no longer your "dream OS", and intellectual property law makes it so that no other company can undo their changes.
> The job of the computer is to free us from slavery and everyone seems to have bloody well forgotten that.
We haven't, and that's why we prefer operating systems we fully control, instead of being bound by the whims of some foreign megacorporation, enforced by intellectual property law.
While you might have the illusion of control, the exit plan to take control is to take on tens of millions of lines of source code and manage it yourself. That is not control.
Your data is the important bit. If you keep that portable and/or recreatable then it doesn't matter what tools you use.
Well now you're just contradicting yourself. I'm not going to say RedHat and fd.o have been perfect all the time or have always made the best decisions or haven't pursued agendas that may have been at odds with others.
But c'mon. On one side you're saying that open source can never be good because no one maintains the cohesiveness and attention span to do "the last 20%", but then you rail on organizations that have tried to set and maintain standards, and reduce fragmentation on the desktop?
You can't have it both ways.
I think a lot of people in OSS do get that, but in many ways it's significantly harder to do that last 20% in an open source project than it is for a proprietary software company to do it.
But ultimately I don't care that much, honestly. If you don't get what you need out of open source, that's fine. You not using it isn't a problem for me or for my own open source work. As long as there are enough users to keep communities going and developers interested, that's all that matters.
> and the above is the last 20% and it has never even once in the history of OSS got anywhere even remotely near that.
That's provably false, and it's pretty annoying when people make uninformed absolutist statements like that.
> No one cares about the political purity and ideology behind it.
A lot of people do. No, not a majority, and maybe not even a largely sizeable minority, but it's very very far from "no one". If you don't, I guess that's fine. I hope your proprietary software continues to do what you need and want, and that your needs and interests continue to be aligned with what those software companies want to give you. That hasn't been true for me for a very long time now, but certainly people have different needs and different thresholds for it to matter. But if that changes, feel fortunate that all the work we've done will still be available for you to take advantage of.
> The job of the computer is to free us from slavery and everyone seems to have bloody well forgotten that.
Your use of the word "slavery" is a bit bizarre and overwrought, but it's funny you say something like this. Open source software is the only kind of software that's going to respect your freedom. Proprietary software never will. You're at the whims of its makers, and can never take control of your own computing destiny.
Like the sibling said, I guess that doesn't matter to you now. But maybe it will, someday, when the game changes yet again.
> And at least in my case that is 100% portable
For now. Time and time again I see stories where people think they have redundant copies of everything important, and can reconstruct things when a company pulls out the rug out from under them, only to find they're missing something important.
Maybe you aren't. Great, good for you. You represent a teeny tiny percentage of the sum of proprietary software users. Again, I'm glad you believe you're safe and happy with the arrangement you have, but you're uncommon, and that's the entire point.
And for me, it's not just portability. Most companies are going to mine your data, use it to train AI, sell it to third parties, whatever they think will make them money. Or they just get hacked, like everyone does, eventually. You can protect yourself from that with open source. Not saying you don't still have to be vigilant, of course you do... but with proprietary software? Well, best of luck with that. Even with Apple, one of the few companies I think are reasonably trustworthy stewards of customer data, despite all the other issues I have with that company.
Btw the lenses still are yellowish, and interfere with white balance. Attempt to correct the white balance will destroy the effect of the lenses at 450 nm will be back.
Cool, I'll be following that. To me, one of the most interesting aspects of Genera is the command line interface, where commands know their arguments' names, types, defaults, and help strings. The commands can output nicely formatted data such as tables and, because they're just Lisp functions, they can share structured data directly rather than parsing and serializing ad-hoc text formats as is that's typical in the Unix world.
I wholeheartedly agree with you; a system based on structured data or objects would be much better than what we have today. What I've been dreaming about for years is a system where everything is an object, much like Smalltalk. Instead of typing "ls" in a terminal window, you would send a get_files request to the current directory, which would return a list of file names. It's possible to emulate the traditional Unix "ls" command, but interacting programmatically with the system enables so many other uses that's much easier than parsing text or calling POSIX system calls. Because the user is working with objects instead of text, not only would it be easier to write scripts compared to Unix shell scripts, it would also be easier for developers to implement GUI tools for the system. For example, imagine if word processing documents were represented by a class that handled all sorts of manipulations of the document, hiding the details of the underlying file format from the user and developer in most cases. It would be easier to come up with scripts for generating and modifying word processing documents without having to use the word processor's macros (if they're available in the first place) or without having to dive deep into the underlying file formats of the documents.
[1] http://www.bitsavers.org/pdf/symbolics/software/genera_8/Pro...
Soldered RAM is faster than socketed RAM. What's faster still is Apple's current approach: putting the RAM inside the CPU chip package. This is one of the reasons why Apple Silicon chips are so screamingly fast and handily beat any x86 chip core-for-core.
> to the increasing annoyances of macOS either in the name of security (e.g., notarization, the popups that request permission to read user directories, which is really annoying when using LLVM's debugger in modern macOS)
These help prevent malicious software, such as downloaded apps or even web pages, from exfiltrating or tampering with user data. Relevant xkcd: https://xkcd.com/1200/
IMO, we're heading for "X11 over Wayland" desktops, in which the only X11 implementation is Xwayland. These expensive applications which target X11 will keep working, through that compatibility layer.
Those that are written to use Xlib directly, sure, they'll take some work (though rewritten? doubtful). If their maintainers don't want to do that, they'll still run under Xwayland.
It is not even about the access (people usually use nx or even vnc for that). It is about having a system that can work as a part of a cluster (network filesystem, X11), with all base GUI utilities (terminals, file managers, browsers, pdf viewers) supporting that.
It will 100x not go away, there is no way. Literally all big stakeholder both open source (Gnome, KDE, Fedora and so on) and companies like Valve are all in on Wayland.
The reality is, X11 is a complete train wreck and always was. Its just that for a long time people invest in it and made it usable. The same is true for Wayland, things have been improving rapidly in Wayland and it many ways its already better.
The train wreck is being cleared and the trains are running again, literally nobody will go back to horses.
What is there in Wayland is really quite clean though, so it will... EVENTUALLY... be pretty good.
In my view, Wayland is basically unsupported. GNOME and KDE support it. XFCE, Lxqt, Mate, and Cinnamon don't. It's been over 10 years. You could make a whole DE from scratch in this time.
XFCE, Lxqt, Mate all have at least partial wayland support.
Cinnamon has experimental support.
So for now it happens to work. But none of those DEs are contributing to the X.org implementation of X11, right? So it will slowly break down over time. That's the current status of X11, it's on hospice.
The current status of Wayland is that it doesn't.
It's really that simple. I think this exchange can help you understand my position better: https://github.com/libsdl-org/SDL/pull/9345#issuecomment-201...
>Wayland has a myriad of unresolved problems regarding surface suspension blocking presentation and the FIFO (vsync) implementation being fundamentally broken leading to reduced GPU-bound performance.
To which someone replies:
>If we do this, we are basically accepting these issues are unfixable for the next ten years (SDL4). Having this as the default in SDL3 (which isn't being used yet!) is important for signaling to other stakeholders that we actually do need to get solutions in place for detected issues.
To which the committer says:
>SDL is not your tool for "signaling to stakeholders" about what is important. It's an actual library used by real developers and users!
Likewise. My PC is not a tool for signaling library/DE developers that there are more and more people using Wayland now and that they can finally stop maintaining X11 legacy code. I use my PC for real things. I couldn't care less if things are running on X11 or Wayland so long as they work.
If Wayland isn't working with my use case, I just won't use it. I won't switch to Wayland juts to beta test it, and then spend years begging people who know how to hack Linux to implement the features I need that I had on X11.
If Linux drops X11, and Wayland still doesn't work. I won't use Wayland. I'll use Windows.
They already have, this is what I'm trying to tell you. All the X.org maintainers are on Wayland, and none of the DEs are contributed to X.org. It's on hospice. It happens to work just because, but that won't be the case forever.
It's fine if you currently like X and use X. I myself use X on Debian Stable.
But the reality is that it's dead technology, and eventually it won't work right.
Wayland is constantly being improved by many, many different parties. Valve, KDE, Gnome, freedesktop, Redhat... they're all constantly making new protocols and implementing them to solve problems.
GIMP supports PNG. That doesn't mean GIMP contributes code to libpng, or libpng needs updates. It just needs to have code to make it work with PNG.
X11 will stop being supported when the developers literally remove the code to make their programs run on X11 from their projects. Until then, it's still supported.
Why would I need updates when things already work in the current version?
> Why would I need updates when things already work in the current version?
I guess you don't, but then again, I don't see you running Windows 95. I think this is maybe something you like to believe, but in practice people do want new things and new software.
For most of those years, fundamental parts of the desktop experience were just not possible on Wayland. Even today, there are some current Xfce features that are just not implementable on Wayland.
> You could make a whole DE from scratch in this time.
Depends on your goals and team size. Part of me would love to rewrite Xfce in Rust (yes, I'm one of those people), using a different, lighter, actually-well supported toolkit (unlike GTK3), but with the team we have, that would be another two decades.
Consider that Xfce 4 is a little over 20 years old at this point. It's taken that long to build it to what it is. Starting over wouldn't take any less time to get there with the people and resources we have.
What features are missing from Xfce perspective?
"Unsupported" as in there are no maintainers, there's no roadmap, there's no future. X11 is a dead end. All the people who were working on it would rather work on Wayland instead. It's taking a while for the DEs, etc. to catch up, but even the slow pace of improvement Wayland is exhibiting is much better than "dead in the water" which is where X11 is.
Unsupported in the context of software doesn't really mean what you took it as anyway.
I haven’t figured out the magic dbus (I guess) incantations required to make screen sharing work without systemd though. I guess it needs pipewire at least.
I don't think Wayland should add a print server ;)
> In human–computer interaction, WIMP stands for "windows, icons, menus, pointer" —https://en.m.wikipedia.org/wiki/WIMP_(computing)
Most projects introduced bugs in xorg trying to support wayland, which is not reliable for many use cases, making everything unusable every other month
The long-term solution is to switch to Wayland.
Does anyone a cleaner article?
[editing to add: my assumption that it isn’t is due to this post - xfce is what I used to use because it was lightweight, but if such a lightweight manager requires significant adoption effort it would imply that Wayland isn’t X API+new extension]
I had thought that Wayland was still functionally an implementation of the X server protocol, just reengineered to drop any pretense of network transparency, but given the amount of work involved that’s clearly not the case?
(It has been a long time since I did anything resembling X development, and so I’ve paid literally no attention to the details)
X11 apps can generally run under Wayland, but through XWayland, an X server that runs nested under a Wayland compositor.
But the DE/window manager is what is actually responsible for deciding when/where to provide that interface? For actual rendering+windows etc the DE is communicating entirely through Wayland specific APIs?
I guess the operation mode is similar to how you would run X apps on Mac and windows where you could launch an x server that would act as a layer between the Mac/windows windowing system?
There's really no reason why someone couldn't write a "WX11" or something of that nature, but I'm not sure it would be worth the effort.
It's generally more transparent than running a separate X server on Mac or Windows -- you don't normally need to care about whether an app is X11 or native Wayland.
However, the drawback is that with the exception maybe of Weston, one does not simply start up a Wayland compositor. You need to have support for logind seats and that sort of thing. So unless you want to spend an afternoon assembling the components like a piece of flat-pack furniture from Target, you basically need systemd and a distro that bundled those components for you the right way.
Not really. It's perfectly fine to just advertise a single dummy wl_seat, and use whatever non-logind mechanism there is to tell the OS that you want to be in control of the input and display hardware.
Based on experiences of an acquaintance writing from scratch support for wayland for an UI framework that shares absolutely zero code with any of the major ones, the differences in even basic things like how to implement drop-down menu are staggering.
Funnily enough, said acquaintances needs would have been fully covered by slightly more capable XRender and a way to synchronize to VSync that does not depend on GLX.
Just recently I had to switch back to X11 because Wayland was just awful performance wise, like stuttering and constant fps drop. And this on a what 2023 high quality laptop with standard Ubuntu.
The way Wayland is done is a mistake.
I have switched my machines over to KDE for Wayland support and a bit better overall XP but still love XFCE for what it is.
Xfce is pronounced “ecks-eff-see-ee”. The name Xfce originally stood for “XForms Common Environment”, but since then Xfce has been rewritten twice and doesn't use the XForms toolkit anymore. The name survived, but it is no longer capitalized as “XFCE” and is no longer an abbreviation for anything (although suggestions have been made, such as “X Freakin' Cool Environment”).
The panel is killed on startup.
This could get me looking into sway/Wayland.
The only component that requires major changes is the WM. Otherwise, for the rest of them, it's more about fixing platform specific quirks.
(Ok, we did have to write an embedded compositor library for our panel to use, but... yeah.)