[HN Gopher] Dwl: Dwm for Wayland
       ___________________________________________________________________
        
       Dwl: Dwm for Wayland
        
       Author : theycallhermax
       Score  : 91 points
       Date   : 2025-07-25 13:40 UTC (9 hours ago)
        
 (HTM) web link (codeberg.org)
 (TXT) w3m dump (codeberg.org)
        
       | cnity wrote:
       | I wonder if it was considered to submit this as a dwm patch
       | instead.
        
         | mort96 wrote:
         | An X window manager and a Wayland compositor are so radically
         | different beasts that it would probably require a _monumental_
         | refactor of DWM to make it capable of having an X back-end and
         | a wlroots back-end. Probably easier to just re-create DWM 's
         | interface on top of wlroots, like what Sway did with i3.
         | 
         | Also, DWM has an explicit goal of being minimal and to not grow
         | too big. There's no way in hell that Suckless would accept a
         | patch which makes the code way more complex and over 2x larger
         | to make DWM work as a Wayland compositor.
        
           | bravetraveler wrote:
           | Suspect you're right, from Acknowledgements:
           | dwl began by extending the TinyWL example provided (CC0) by
           | the sway/wlroots developers. This was made possible in many
           | cases by looking at how sway accomplished something, then
           | trying to do the same in as suckless a way as possible.
        
         | woodrowbarlow wrote:
         | i think fork was the correct approach -- it was written in such
         | a way that many of the popular dwm patches can be applied
         | cleanly to dwl.
         | 
         | (i used dwl for quite a while. strong recommend.)
        
           | cnity wrote:
           | > it was written in such a way that many of the popular dwm
           | patches can be applied cleanly to dwl.
           | 
           | That is very nice!
        
           | arp242 wrote:
           | It's not really a fork in any meaningful sense, because
           | rewriting dwm (or any other X11 WM) to Wayland means re-doing
           | almost all code. A "dmw with Wayland" would basically be "if
           | (x11) { x11_code() } else { wayland_code() }".
        
         | ivanjermakov wrote:
         | Implementation difference is so big that is makes no sense.
         | Also, Wayland support is obviously out of scope for dwm.
        
         | epr wrote:
         | I guess people downvoting this don't get the joke?
        
           | Philpax wrote:
           | What's the joke?
        
             | epr wrote:
             | dwm and the community around it tend to use patches for
             | absolutely everything, unlike most other projects. For most
             | projects/codebases, maintaining patch sets is done for
             | security, customizations, etc., but rarely are users
             | expected to configure their window manager by modifying the
             | source code. dwm is well known for being very minimalist,
             | with many features people would expect from other window
             | managers not being included out of the box. To get
             | something more fully featured, users are meant to cobble
             | together their own version of dwm with multiple patches.
             | I'm not saying this workflow doesn't work for dwm and other
             | suckless software projects, it's just that it's pretty out
             | of the ordinary.
             | 
             | So, having some experience with the project and how
             | different x and wayland are, when I saw this commenter had
             | brought up the idea of making the switch from x to wayland
             | a patch, it made me laugh out loud. The idea of leaning
             | even further into the borderline degenerate amount of
             | patching already done with suckless software to the point
             | where you're practically rewriting the majority of it was
             | very funny, and so I was confused about the downvotes.
        
       | snvzz wrote:
       | hopefully with utf-8 support?
        
         | ivanjermakov wrote:
         | What do you need Unicode for in a WM?
        
           | pm215 wrote:
           | In an X11 window manager, the classic use case is "printing
           | the title of the window in its titlebar". Programs like
           | Firefox put the current tab's title in the titlebar text,
           | which can have any random unicode in it.
        
             | yjftsjthsd-h wrote:
             | Actually, that's an interesting question - in wayland, I
             | think it's common to just say that windows have to draw
             | their own ("client-side window decorations"), so the
             | compositor could just... not handle the window titles at
             | all?
        
               | RGBCube wrote:
               | Server-side declarations are a thing now & are used
               | widely (in anything other than GNOME)
        
           | zhengyi13 wrote:
           | Window titles come immediately to mind.
        
       | xwiz wrote:
       | Looks like a great project. I'm a big TWM fan, so I would also
       | like to direct attention to my daily driver, Niri.
       | https://github.com/YaLTeR/niri
        
         | theycallhermax wrote:
         | niri's nice too. I used to daily drive it, but I don't remember
         | why I stopped using it. Nowadays, I just WM hop, I've used
         | Hyprland, labwc, and Pop Shell with GNOME so far, but dwl looks
         | promising to me.
        
         | Babkock wrote:
         | Niri is awesome!
        
         | stevefolta wrote:
         | Another interesting one is Scroll, a scrolling-tiling fork of
         | Sway: https://github.com/dawsers/scroll/
        
         | christophilus wrote:
         | Niri has been my daily driver for a while now. It's excellent
         | and keeps getting better.
        
           | aquariusDue wrote:
           | Same here (on Fedora), coupled with Kando (which recently got
           | Niri support) for mouse gestures, shortcuts and macros it's a
           | total powerhouse.
           | 
           | Sadly I can't seem to find a config I like for waybar, if
           | anyone has any tips or dotfiles please share them!
        
         | lll-o-lll wrote:
         | Niri is pretty, but I find sway to be faster. Hotkeys and
         | instant switch is just better (for me). I will continue to
         | experiment, but sway feels more productive currently.
        
       | dodomodo wrote:
       | [flagged]
        
         | fruitworks wrote:
         | At some point of development, the only way to progress without
         | spiraling complexity is to break backwards compatibility. You
         | might be interested in studying the internals of X11 and
         | wayland to learn more.
         | 
         | In a commercial project like windows, this sort of project is a
         | total no-go. However in a collaborative community project like
         | linux userspace, developers have more freedom to make design
         | decisions in spite of short-term consequences.
         | 
         | >The people that develop Linux desktop are deeply unserio
         | 
         | The person who experiences greatness must have a feeling for
         | the myth he is in. He must reflect what is projected upon him.
         | And he must have a strong sense of the sardonic. This is what
         | uncouples him from belief in his own pretensions. The sardonic
         | is all that permits him to move within himself. Without this
         | quality, even occasional greatness will destroy a man.
         | 
         | -Frank Herbert
         | 
         | Don't take yourself too seriously, it might ruin you!
        
           | vlovich123 wrote:
           | In a commercial project like Windows this has been done many
           | times - both Windows and MacOS switched to compositing window
           | managers and have done deep surgery under the hood you never
           | see. The difference is that internals can be mandated top
           | down whereas in a bazaar model with lots of casual non
           | interested observers throwing pot shots and no budget to
           | support the work, relying on largely volunteer time, it's
           | much harder and takes longer to accomplish.
        
           | asveikau wrote:
           | People do large rewrites that subtly break expectations and
           | need to slowly add back features to get parity with the old
           | thing at Microsoft all the time. Source: I worked there at
           | the end of the 2000s.
           | 
           | Sometimes it's very visible, like they are pushing a new UI
           | framework. Other times it's under the hood, like they changed
           | how a lot of GDI works.
        
           | dodomodo wrote:
           | You got it backwards, once you have users, they are your
           | "greatness", if you go to the path of self gratification, are
           | are betraying your users. Of course some times sacrifices
           | have to be made, but you have to understand the graveness of
           | them. I don't like the current state of Windows, but
           | Microsoft won't ever break such a huge portion of
           | applications that run of Windows just for the sake of some
           | refactoring.
        
         | temp0826 wrote:
         | Wayland has been around for 15+ years now and I've been using
         | it daily for probably 10. At this point I have to assume
         | comments like this are unserious.
        
           | hodgehog11 wrote:
           | Good for you. Meanwhile, many other people have been
           | encountering _serious_ issues for much of those 10 years.
           | This is well documented. Downplaying the issues of other
           | users is a great way to make people dislike the product.
        
             | exiguus wrote:
             | What are this issues beside VNC or ssh -X does not work? Or
             | my Software Y (still) does not support Wayland?
        
               | Zambyte wrote:
               | > ssh -X
               | 
               | waypipe
        
               | yjftsjthsd-h wrote:
               | Actually I don't think any of those are problems?
               | 
               | * VNC is covered by wayvnc (unless you're on GNOME or
               | maybe? KDE, but those have their own implementations)
               | 
               | * ssh -X should be covered by waypipe
               | 
               | * _application_ software should generally work in
               | XWayland (which okay is a little cheaty but if it works
               | it works)
               | 
               | The two pain points I'm currently aware of are:
               | 
               | * Unified vs fractured ecosystem: In practice, everyone
               | on X11 used Xorg and every window manager and desktop
               | environment had the same basic features because of it.
               | You could _always_ control the keyboard layout via
               | setxkbmap, every screenshot tool worked everywhere,
               | xrandr /arandr were always available to configure
               | displays, etc. In Wayland there is never one answer to
               | anything; not every compositor lets you configure the
               | keyboard and if they do each one has their own way to do
               | it, there are 3 different screenshot protocols
               | (supposedly KDE and wlroots are converging so only GNOME
               | will be doing their own thing but I'm not holding my
               | breath), display configuration is completely up to
               | compositor choice, etc.
               | 
               | * The accessibility story isn't there. There's work on
               | it, so eventually the outcome will probably be "just
               | throw out the a11y tools you're used to and switch to
               | these new ones", but for now the current status is
               | "they're working on it but it isn't there yet".
        
             | zveyaeyv3sfye wrote:
             | Link to any open issue you are encountering so we can
             | discuss it then.
        
             | mort96 wrote:
             | And I encounter _serious_ issues when I use X. Neither is
             | perfect, but this insistence that Wayland is "not ready"
             | because it doesn't have certain people's pet features
             | ignores the silent majority for whom it just works and
             | works better than X ever did.
             | 
             | This is not me downplaying those issues some people
             | encounter in Wayland. But I think you're sort of doing the
             | opposite.
             | 
             | (And, Wayland is not a "product".)
        
               | rcxdude wrote:
               | Because wayland is 'ready' when X can be properly killed,
               | i.e. wayland is working for essentially all users. As it
               | stands a huge fraction of users have issues with it,
               | because most users have at least one 'pet feature' which
               | they are not willing to give up.
        
               | mort96 wrote:
               | As far as I'm concerned, a technology being "ready" (for
               | mainstream adoption or whatever) means that it works
               | better than or equally well as what it's replacing for
               | most people and at least "well enough" for a significant
               | majority. As far as I can tell, we've been there for a
               | while with Wayland. The vast majority of people don't
               | have to care that they're on Wayland.
        
               | lern_too_spel wrote:
               | X doesn't work for essentially all users. It works for
               | substantially fewer users than Wayland does. There are
               | several features that X is missing, and you might call
               | them "pet features" but they are features that the vast
               | majority of graphical desktop users expect these days.
        
           | dodomodo wrote:
           | You have to understand that I don't really care about the
           | internals of my DE. The same of true for 95% of Linux users
           | and 99.999% of general computer users, so when I see a huge
           | amount of effort goes into basically seemingly pointless
           | refactoring, instead of tackling issues that are actually
           | important to users, it is disappointing to me. I just
           | installed KDE Manjaro and guess what? It stills uses X, and
           | no one has an answer to what benefit Wayland has for me.
        
             | simlevesque wrote:
             | Security.
             | 
             | You said you did your research so I have to believe that
             | you don't care about security.
             | 
             | But most people care.
        
               | johnisgood wrote:
               | Thankfully you no longer have to be root to start X.
        
               | yyyk wrote:
               | That particular scenario (listening in on other apps) is
               | very theoretical, can you recall any attack ever using
               | it? IIRC Windows still has the same 'ability' - and
               | nobody cares.
        
               | dodomodo wrote:
               | The threats models I have seen are easy enough to deal
               | with inside the X ecosystem. And investing all your
               | resources into a new system that is not backward
               | compatible is something no serious security person would
               | do as it leaves your existing users vulnerable
        
             | gf000 wrote:
             | Well, do you also second guess your surgeon? Why do you
             | think you have enough domain and technical knowledge to
             | consider your "seemingly pointless" to be relevant?
        
               | johnisgood wrote:
               | You should definitely second guess your doctor, or get a
               | second opinion[1]. I mean everyone knows you should NEVER
               | abruptly stop benzodiazepines due to lethal/fatal
               | withdrawal symptoms, right? Guess what? Most of the
               | psychiatrists I have encountered do not give a damn. It
               | is coming from both first-hand and second-hand
               | experiences. So yeah, you are right to second guess. Were
               | it up to my doctors, I would have been long dead. And
               | because I was not in the right state to second guess my
               | doctor, I am forever left with immobility issues. I
               | should have gotten a week long corticosteroid therapy for
               | MS relapse. I did not, because the doctor did not give a
               | fuck, and I was too stupid to NOT second guess.
               | Unfortunately they do not give a damn about you here, but
               | you should. FWIW everything I have said do not require me
               | to have a PhD or Dr. next to my name. It is on Wikipedia,
               | books on psychiatry, pharmacology, and so forth. It is
               | "common knowledge" in the field that you are supposed to
               | taper off these medications gradually, never abruptly.
               | 
               | [1] You would never guess the amount of times I have
               | encountered doctors questioning the practices of another
               | doctor. :P It happened so many times...
        
             | yyyk wrote:
             | Software bitrots. Sometimes it's compiler stuff, sometimes
             | the very usecase changes (few used the network design of X,
             | or server-side fonts, etc. etc.). The way X got no
             | 'attention' (so to speak) made the new technical design
             | (passing away responsibilities) inevitable. It would have
             | just happened slower had Wayland not existed.
        
             | gosub100 wrote:
             | > seemingly pointless refactoring, instead of tackling
             | issues that are actually important to users
             | 
             | its not a dichotomy. Xorg was built on X11R6, a platform
             | that was written circa 1993. You cannot "tackle issues
             | important to users" based on an outdated stack. They were
             | painted into numerous corners that only a rewrite would
             | fix.
        
           | macawfish wrote:
           | It's probably a distro thing. I'm on a rolling release distro
           | (arch) and I've been using wayland on arch and it's worked
           | great. There are still some things I struggle with, but for
           | ~7 years I've been using wayland without major issue. Things
           | iron themselves out pretty quickly these days when you're
           | using a rolling release distro. This is not so for
           | popos/ubuntu/debian etc.
        
             | mystifyingpoi wrote:
             | I don't want to be rude, but "it's worked great" and "still
             | some things I struggle with" need some clarification.
        
               | macawfish wrote:
               | The things I struggle with are very niche, like remote
               | desktop via pipewire over ssh.
               | 
               | Day to day stuff is way better than x11. Remember how
               | much fiddling used to be necessary to configure x11 for
               | your specific devices? I've never once done that and I
               | don't miss it at all.
               | 
               | By the way, pipewire is amazing.
        
               | yjftsjthsd-h wrote:
               | > Remember how much fiddling used to be necessary to
               | configure x11 for your specific devices?
               | 
               | Er. No, I don't remember that. Are you talking about
               | needing to make a xorg.conf once upon a time? Because
               | that hasn't been generally needed for... over a decade?
               | Maybe two at this point?
        
           | gen2brain wrote:
           | Protocol, maybe, and there was no "Wayland"; there was Gnome
           | and KDE. I was only recently able to try Labwc with LxQt, and
           | I occasionally try to see if there are some improvements
           | because it is not usable currently. The biggest issue is that
           | every implementation is different; there is not even a shared
           | common library. If Xorg developers are now working
           | exclusively on Wayland, when are they going to start
           | programming?
        
         | ongy wrote:
         | The core devs were all paid to work on it when I was still
         | active.
         | 
         | Not sure how many of the gnome (mutter) people are paid. Last I
         | checked, the nvidia support was donated by nvidia (paid) for
         | both KDE and Gnome.
         | 
         | I think KDE got some work sponsored by valve (before
         | gamescope), though I'm not quite sure on that.
         | 
         | Overall, outside the sway/wlroots group I was a part of at the
         | time, people generally worked adjacent or directly on wayland
         | for day jobs.
        
         | yyyk wrote:
         | X withering away was inevitable once you consider the
         | 'economic' situation - very few people worked on it once the
         | commercial Unix vendors went down. There was little practical
         | enthusiasm for a common layer. Even before Wayland, its role
         | was reduced more and more. Wayland is natural evolution of this
         | where most of the work is offloaded to more resourced Desktop
         | environments and the org mostly sets standards.
        
           | slackfan wrote:
           | X wasn't withering away, it was pointedly being poisoned.
        
             | gf000 wrote:
             | Feel free to include any kind of source for that.
             | Otherwise, it is just FUD.
        
               | slackfan wrote:
               | Sure, the developer culture of the people working on X
               | has been "This is too difficult/obscure/shitty therefore
               | it should die." There have been repeated posts about this
               | to various forums, news.ycombinator.com included. Refusal
               | to accept fixes, as well as a full pivot of the project
               | to a targeted sundown instead of any attempt to attract
               | developers to the project. Sources: The X project itself,
               | hackernews discussions, both in articles and in comments.
               | It's not my job to educate you.
        
           | o11c wrote:
           | And X11 is all the better now that fewer people are working
           | on it. I don't _need_ new features in my windowing system, I
           | just need it to stay out of my way.
        
         | dang wrote:
         | " _Please don 't post shallow dismissals, especially of other
         | people's work. A good critical comment teaches us something._"
         | 
         | https://news.ycombinator.com/newsguidelines.html
        
           | dodomodo wrote:
           | I was wrong to word myself the way I did, but my comment is
           | simple not shallow, what I'm trying to say is that the amount
           | of work done is not worth the architectural advantages of
           | Wayland. It's a simple argument that people in the replies
           | didn't fail to understand, but did fail to have a good
           | response too. My real violation of the guidelines is this in
           | my opinion: "Be kind. Don't be snarky. Converse curiously;
           | don't cross-examine. Edit out swipes."
        
             | dang wrote:
             | Thanks for that! I appreciate the guideline swap, and also
             | your original intention.
             | 
             | Btw, it's not uncommon that a commenter (you in this case)
             | will respond to a mod (me in this case) with substantive
             | information that they didn't include in their original
             | comment, which explains what they really meant to say. We
             | call this the 'rebound' phenomenon (https://hn.algolia.com/
             | ?dateRange=all&page=0&prefix=false&qu...).
             | 
             | It's a pity that the comment doesn't come out this way to
             | begin with! But it's hard to remember that the state in
             | one's head isn't transmitted automatically, and also hard
             | to figure out which bits of it need to be put into a
             | comment. Something about getting resistance (like a mod
             | reply) stimulates this process. Maybe someday we'll figure
             | out how to activate it more proactively.
        
       | alex-moon wrote:
       | Big big fan of dwm, but this wasn't mature when I tried it. I
       | switched to Hyprland and I have to say it has many improvements
       | over dwm.
        
       | chiffre01 wrote:
       | I want to like Wayland...
        
       | jauntywundrkind wrote:
       | Pretty awesome that this is a 3200 line single .c file
       | implementation, atop wlroots and it's newer scene graph API. It
       | is not hard to build a good Wayland impl at this point!
        
       | exiguus wrote:
       | I am a big fan of dwm and have used it for years on all of my
       | Free- and OpenBSD desktops before switching to sway. The suckless
       | people clearly stated that they would not support Wayland on dwm.
       | At the time, I considered sway as the successor to dwm, at least
       | for me, because it already had an ecosystem around it, and its
       | behavior could be configured similarly if it wasn't already. I
       | also took a look at dwl at the time, I think it was three years
       | ago. I am now happy to revisit it.
        
       | gundamdoubleO wrote:
       | Used dwm for so long it was basically the only reason I didn't
       | switch to Wayland. Very happy with dwl since I found it, made the
       | switch (almost) painless.
        
       ___________________________________________________________________
       (page generated 2025-07-25 23:01 UTC)