exiguus 2 days ago

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.

  • IgnaciusMonk a day ago

    RHEL and friendly clones like Alma linux do run totally without X11 already !! Only wayland. so no need to remove x11 after installing distro. (on some distros it is not even possible, distro will break.) so finally we can have "clean" distros. it can provide nicer experience.

xwiz 2 days ago

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

  • christophilus 2 days ago

    Niri has been my daily driver for a while now. It’s excellent and keeps getting better.

    • aquariusDue 2 days ago

      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!

      • christophilus 13 hours ago

        My waybar just shows the time in the center, my network status, and my battery health. It’s very minimalist. I went without entirely for a while, but I missed having the time there at a glance.

      • VTimofeenko a day ago

        I never found a config either and decided to go without any sort of a bar. That was two years ago and seems to be working fine for me.

        I wrote a couple of tiny IPC watchers that send notifications on workspace change and whatnot. The rest is handled by centerpiece:

        https://github.com/friedow/centerpiece/issues

  • lll-o-lll a day ago

    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.

    • cycomanic a day ago

      You can disable animations in Niri, which makes switching instantaneous. Since switching from sway to niri (with a minor detour via hyprland), I found that Niri's scrolling tiling matches much more closely how I work with windows.

      As a side note, I found that Niri uses less battery for me than both sway and hyprland.

    • the_gipsy a day ago

      I feel the opposite! Everything just works, and so ever fast!

  • Babkock 2 days ago

    Niri is awesome!

  • theycallhermax 2 days ago

    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.

jauntywundrkind 2 days ago

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!

alex-moon 2 days ago

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.

  • davidbanham 8 hours ago

    I have also been very happy with Hyprland as a past dwm user.

cnity 2 days ago

I wonder if it was considered to submit this as a dwm patch instead.

  • mort96 2 days ago

    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 2 days ago

      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 2 days ago

    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.)

    • arp242 2 days ago

      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() }".

    • cnity 2 days ago

      > it was written in such a way that many of the popular dwm patches can be applied cleanly to dwl.

      That is very nice!

  • ivanjermakov 2 days ago

    Implementation difference is so big that is makes no sense. Also, Wayland support is obviously out of scope for dwm.

  • epr 2 days ago

    I guess people downvoting this don't get the joke?

    • Philpax 2 days ago

      What's the joke?

      • epr 2 days ago

        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.

gundamdoubleO a day ago

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.

chiffre01 2 days ago

I want to like Wayland...

snvzz 2 days ago

hopefully with utf-8 support?

  • ivanjermakov 2 days ago

    What do you need Unicode for in a WM?

    • pm215 2 days ago

      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 2 days ago

        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 2 days ago

          Server-side declarations are a thing now & are used widely (in anything other than GNOME)

    • zhengyi13 2 days ago

      Window titles come immediately to mind.

dodomodo 2 days ago

[flagged]

  • dang 2 days ago

    "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 2 days ago

      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 2 days ago

        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.

  • temp0826 2 days ago

    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 2 days ago

      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.

      • mort96 2 days ago

        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 2 days ago

          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 2 days ago

            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 2 days ago

            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.

            • hodgehog11 16 hours ago

              That's quite the claim; maybe you operate in different circles than I do, but most power users I know still avoid Wayland like the plague. X doesn't have support most of the modern fancy features, yes. But on older hardware, which people with less money usually have, X works.

            • spauldo 2 hours ago

              X still works great for me. I figure I'll give Wayland a try after another decade or so.

      • exiguus 2 days ago

        What are this issues beside VNC or ssh -X does not work? Or my Software Y (still) does not support Wayland?

        • yjftsjthsd-h 2 days ago

          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".

        • Zambyte 2 days ago

          > ssh -X

          waypipe

      • zveyaeyv3sfye 2 days ago

        Link to any open issue you are encountering so we can discuss it then.

        • hodgehog11 16 hours ago

          I said "most" of those 10 years, since it has become much better now, especially on AMD. Nvidia is still a disaster on Wayland though, basic screen sharing apps like Zoom are broken for many users, even with PipeWire.

          The response to this is usually "that program is bad, it has problems and that isn't the fault of Wayland, don't use it". But Wayland broke userspace. If these programs all work well on X, that is a Wayland problem.

    • gen2brain 2 days ago

      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?

    • dodomodo 2 days ago

      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.

      • yyyk 2 days ago

        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.

      • simlevesque 2 days ago

        Security.

        You said you did your research so I have to believe that you don't care about security.

        But most people care.

        • dodomodo 2 days ago

          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

        • johnisgood 2 days ago

          Thankfully you no longer have to be root to start X.

        • yyyk 2 days ago

          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.

      • gf000 2 days ago

        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 2 days ago

          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...

      • gosub100 2 days ago

        > 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 2 days ago

      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 2 days ago

        I don't want to be rude, but "it's worked great" and "still some things I struggle with" need some clarification.

        • macawfish 2 days ago

          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 2 days ago

            > 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?

            • mystifyingpoi a day ago

              Me neither, and I had my first Linux machine in 2008. That was true maybe in 1995. Of course anecdotal evidence.

  • yyyk 2 days ago

    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.

    • o11c 2 days ago

      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.

    • slackfan 2 days ago

      X wasn't withering away, it was pointedly being poisoned.

      • gf000 2 days ago

        Feel free to include any kind of source for that. Otherwise, it is just FUD.

        • slackfan 2 days ago

          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.

  • fruitworks 2 days ago

    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 2 days ago

      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.

      • saidinesh5 a day ago

        > on largely volunteer time

        Are Linux desktop projects still run mostly by volunteers these days anymore?

        The kernel itself is heavily funded by, contributed to by so many large companies. A lot of user space projects are all maintained by companies or maintainers who work for companies like Redhat, Canonical, Suse etc ...

        Didn't Wayland itself get popular during Nokia/Intel Meego days? I remember there being automotive compositors, Jolla Phone all using wayland.

    • asveikau 2 days ago

      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 2 days ago

      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.

  • ongy 2 days ago

    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.