Why Wayland Merges Compositing & Window Managers

Поділитися
Вставка
  • Опубліковано 1 лис 2024

КОМЕНТАРІ • 97

  • @BrodieRobertson
    @BrodieRobertson  2 роки тому +21

    I can't post a new post right now so I guess I'll pin this comment.
    UA-cam decided that my Dirty Pipe video from march where I'm explaining what the exploit is and how it effects Linux users was "harmful and dangerous content" so when I don't post anything for a week that's going to be why but I'm still waiting to hear what happens with the appeal.

    • @danielyrovas
      @danielyrovas 2 роки тому +9

      wow yt is really going down the drain, huh.

    • @dreamcat4
      @dreamcat4 2 роки тому +1

      and have gotten those all too common whatsapp spam comments replies spamming people here too. (already flagged it / reported it)

    • @theluga7363
      @theluga7363 2 роки тому

      Oh my God!
      YT sucks even when you do a good thing to society, letting us being aware of the dangers of our systems.
      Time to switch to odyssee I guess...
      Thank you for actively making this kind of videos. They are important!

    • @theluga7363
      @theluga7363 2 роки тому

      Hey, Brodie. Guess what happened? UA-cam threatened me to have a strike on my chanel (that has almost nothing) because I am promoting harassment, threats and cyberbullying according with their policy.
      The video in question is my graduation from my university hahahahahahahaha, the video was private only with link can be accessed to my family and friends.
      It's so hilarious to me but it would surely hurt a creator like you. I can't imagine how much bullshit you deal with.

  • @MrCradleman
    @MrCradleman 2 роки тому +41

    Sway user since 2020. And I like it a lot. Everything inside one config, no more stupid xorg configs, picom configs, etc

    • @zehph
      @zehph 2 роки тому +1

      I just start pycom and am done, lol... 😅

    • @BeyondImaginationzz
      @BeyondImaginationzz 2 роки тому +3

      People on X doesn't even know how smooth sway (not other Wayland Wm) is

    • @hamed9327
      @hamed9327 2 роки тому +1

      exactly. it's awesome

    • @quandaledinglegaming4218
      @quandaledinglegaming4218 2 роки тому

      @@BeyondImaginationzz I used sway for a year and switched to xmonad, literally the same after changing some settings

    • @gspapp
      @gspapp Рік тому

      I think you would really like NixOS if you want to configure everything in one file.

  • @FrancoisRigaut
    @FrancoisRigaut 2 роки тому +18

    You might want to give hyprland a try. For me it strikes the right note between sway and wayfire.
    I've been using wayland exclusively for 6+ months, and have now settled on hyprland for my daily driver, after a few months of sway (which I still like, but hyprland is way smoother). Yes, wayland has shortcomings, but overall I am very glad I switched and will definitely not come back to X.

  • @MrMediator24
    @MrMediator24 2 роки тому +38

    Using Wayland in one of the most masochistic way (pun not intended) possible: on Nvidia card. With hybrid graphics.
    Yet it works way better than Xorg since it's not sluggish

    • @abbyck
      @abbyck 2 роки тому

      Me too,
      Wayland+ Nvidia prop + optimus

    • @samsh0-q3a
      @samsh0-q3a 2 роки тому

      @MusicHub I just used a gsync monitor, worked great lol

  • @CMDRSweeper
    @CMDRSweeper 2 роки тому +14

    The key injection thing is a MASSIVE hurdle that MUST be addressed ASAP to make Wayland ready.
    A normal use case that highlights the need is gamers and discord / voip service used that needs a PTT (Push To Talk) key that needs to respond even when in a different application.

    • @YeaSeb.
      @YeaSeb. 2 роки тому

      Or kdeconnect, although that may change in the near future as all the relevant patches are there waiting for approval and merging.

  • @AmirHosseinHonardust
    @AmirHosseinHonardust 2 роки тому +6

    You just need to divide functions in other ways. Like Riverwm separating layout engine from wm.

  • @theluga7363
    @theluga7363 2 роки тому +5

    I use wayland and never want to go back to xorg. My laptops never played well on xorg, higher cpu, screen tearing, lots and lots of file config hell... xorg manages keyboard, gpu, etc.
    Wayland has vsinc and no nonsense. Everything just works, no lag, no tearing, only goodness. Of course, I like to use a DE make some small adjustments and done!
    Wayland is just a protocol, a very good protocol and nothing else. It does not have decades of legacy, multiple nonsense apis not used anymore on non-legacy systems and as such, no overhead.

  • @MasterHigure
    @MasterHigure 2 роки тому +10

    "I'll leave some links in the description down below" he says at 1:07.

  • @wired_philip
    @wired_philip 2 роки тому

    Good explanation, thanks

  • @notuxnobux
    @notuxnobux 2 роки тому +8

    Good video with different points of views. Personally the reason I use x11 over wayland is a policy difference that leads to how the environments play out.
    When you target wayland as a developer you dont really target wayland. You target gnome, kde, wlroots, etc. The core wayland protocol is good for embedded environments but it's too minimal for a desktop. As a result every shell creates its own protocol extensions and as a developer you have to write multiple different backends of your software to work on "wayland". This is also enforced by the access restrictions that force you to put everything into the shell.
    The end result is that wayland is desktop environment centric where you use software made for a specific desktop environment, with exceptions being large popular software that can afford targeting every wayland implementation.
    On the other hand you can write x11 software and it works everywhere. The reason for this is not that almost everybody uses xorg-server, it's because x11 core protocol isn't actually that large. You have a core protocol and then many optional protocols and x11 client software can check if the server supports that protocol or simply print an error and say that the feature is required. This small difference does so that every x11 server implementation implements the same protocol when they need the same features and ignore the features they dont need. An example of an optional protocol is XPrint. It's completely fine to create a x11 server that doesn't support printing and your implementation wont be "incomplete".
    I wish wayland had this same protocol policy as x11.
    There are also other reasons why I prefer x11, such as window embedding being 1 line instead of literally thousands of lines + 50 000 wlroots dependency and being able to capture any window in any way I want on any desktop environment. I use this feature in many applications I create, such as a vr video player (which also works for side by side vr games).
    I use embedded window for putting mpv inside my application. If wayland supported this then wayland would actually be more secure. Video players with all of its dependencies etc can be very large and if you want to play remote video then that is a large security risk. If you embed a window you can limit the process syscalls with a linux feature to only allow reading from the open network socket and displaying graphics (sandboxing). If the process tries to do anything else the kernel will kill it. Chromium uses this feature for all its processes and graphics (I have worked with chromium before at my job).

    • @vicaf1617
      @vicaf1617 2 роки тому

      I was gonna comment the first point you brought up. Definitely a pain for developers.

    • @monkev1199
      @monkev1199 2 роки тому

      X11 isn't exactly a single thing. A lot of apps utilize things like Xinput, Xpresent and Dri3 (required for Mesa to be decently performant).

    • @notuxnobux
      @notuxnobux 2 роки тому

      @@monkev1199 Those are optional protocols yes, which is what i mentioned

  • @JTCPingas
    @JTCPingas 2 роки тому +1

    Something that I'm excited about is VRR being merged into Mutter for GNOME's Wayland session.

    • @charautreal
      @charautreal 3 місяці тому

      guess how that is going 2 years later

  • @justanormalperson
    @justanormalperson 2 роки тому +5

    nice

  • @br0dybr0dybr0dy14
    @br0dybr0dybr0dy14 2 роки тому +8

    Hey brodie!

  • @ivailogeimara
    @ivailogeimara 2 роки тому +2

    I don't use Wayland because it's just too limiting and not everything works.
    But I like the way `ydotool` works as opposed to `xdotool`. I don't mean that I have some problem with `xdotool` or that `ydotool` performs better (it's actually the opposite) but I like that simulated keyboard input isn't handled by the display manager but by a virtual input device using uinput as it should. It just makes more sense. As for requiring root, I don't care because it's open source and it isn't a GUI app. Now of course `ydotool` isn't as powerful as `xdotool` but the screen/pixel/color/wm grabbing functionality is completely separate thing from simulated input so it makes sense to be handled by a different program (which I'm not aware of sadly, apart from taking screenshot to /tmp and grabbing pixel from it with `convert`).

  • @dreamcat4
    @dreamcat4 2 роки тому

    yes using at least some of the workarounds like ydotool (or alternatives) are essential for a good wayland experience. including quite a few other types of hacks. as for the crashing thing taking everything down. this is also indeed troubling. however i believe one of the developers of kwinft was obsessed with those matters. and did a lot of good work already around kwinft (and therefore may also have contributions in wlroots). and the work was indeed around more successful and graceful crash recovery process. that is some pretty low level stuff involved there for that

  • @ddystopia8091
    @ddystopia8091 Рік тому

    That's why I'm still on xorg

  • @k4everut
    @k4everut 2 роки тому

    I use Wayland on my Surface Pro 8 tablet PC. Wayland has a lot of benefits on a touch screen. In KDE Plasma, I get 1 to 1 touch gestures with Wayland that aren't available in Xorg. Tie that in with the new overview effect in KDE Plasma and Wayland makes my touch screen a joy to use. That being said, Wayland has a lot of drawbacks. Wayland doesn't have good support for virtual keyboards and Wayland's security profile limits virtual keyboard support in some applications. The current virtual keyboards for Wayland (GNOME keyboard and Maliit) are terribly lacking in layout and available keys, making them better suited for a mobile UI than a full desktop UI like KDE Plasma and GNOME. There are also a lot of profession applications (like MATLAB) that don't support Wayland and Nvidia's Wayland support is still chaotic. As a result, I only use KDE Plasma Xorg on my Nvidia based gaming laptop, which I primarily use for school and work.

  • @dand337
    @dand337 2 роки тому

    Still waiting till deepin will introduce wayland session :D

  • @omfgbunder2008
    @omfgbunder2008 2 роки тому

    Remote keypresses need root? I wonder what KDE Connect does, never tried it because reasons 🤣

  • @umka7536
    @umka7536 2 роки тому +3

    RFC1925, truth number 5:
    (5) It is always possible to aglutenate multiple separate problems into a single complex interdependent solution. In most cases this is a bad idea.

    • @thingsiplay
      @thingsiplay 2 роки тому

      Such statements and generalization is in most cases a bad idea. Centralized solutions that brings different problems into a one coherent and tested environment is in most cases a good idea.

    • @CMDRSweeper
      @CMDRSweeper 2 роки тому

      @@thingsiplay Hmmm dunno...
      Springfield Armory sorta had their giant tool that were supposed to do everything and literally turned into "crap" when fielded...
      The M14 was supposed to be the one rifle that could do all the tasks or was requested to do so.

    • @thingsiplay
      @thingsiplay 2 роки тому

      @@CMDRSweeper That's called cherry picking. Just because someone isn't able to do that does not mean it can be generalized. Sometimes it is better to solve multiple problems that belong together in one go, test and deliver from same team in the same environment. It all depends on what is being done. Edit: A good example is systemd.
      That is why generalizations like the above one is in most cases a bad idea.

    • @CMDRSweeper
      @CMDRSweeper 2 роки тому

      @@thingsiplay Sadly history is full of examples of having tried to do this and it haven't been successful ONCE yet, at least not in the arms industry.
      So I am afraid it isn't cherry picking, but that is a cherry picked example where the history and documentation is readily available, there are more recent examples as well, but they are fresh enough that you do not have the full picture yet.

    • @thingsiplay
      @thingsiplay 2 роки тому

      @@CMDRSweeper I don't still agree on generalization of the rule. Some projects are better off combined, others are better split up into individual problems. No need to be exclusive, people do both sort of things and that is good. There are good examples in both directions and paradigms.
      I am not talking about arms industry, but in general about programming.

  • @voiceoftreason1760
    @voiceoftreason1760 2 роки тому

    I downloaded your video as audio file, and pitch shifted it down by two semitones. it was a lot nicer to listen to like that.

  • @trailblazercombi
    @trailblazercombi 2 роки тому +4

    1:1 Touchpad gestures and fractional scaling
    I'm yet to see an X11 display stack that does these better than Wayland

    • @DMSBrian24
      @DMSBrian24 2 роки тому

      Elementary does good 1-1 gestures on xorg, idk about scaling but gnome doesn't offer fractional scaling even under wayland

    • @trailblazercombi
      @trailblazercombi 2 роки тому

      @@DMSBrian24 Fractional scaling on GNOME is regarded as experimental; that said at least it's there

    • @alirahimi92
      @alirahimi92 2 роки тому

      Fusuma

  • @vitluk
    @vitluk 2 роки тому

    Gnome + Wayland. I have Intel CPU + 2070Ti (Intel + Nvidia, ik, pain, but its a gaming laptop and there wasn't an option to go AMD), X11 session is way more laggy than wayland one

  • @Oswee
    @Oswee 2 роки тому

    I am full-time SW developer and spending like 12/7 in Linux/Sway for at least 2 years. And i have no idea where do you guys get those complaints.

  • @lightarmanov6266
    @lightarmanov6266 2 роки тому

    I did use sway but I moved away from it because it lacked the configuration power of stumpwm

  • @kendarr
    @kendarr 2 роки тому

    Haven't tried Wayland yet, mainly because it does not seem to play well with games and 3d applications which is exactly 90% of my time on a computer

  • @thingsiplay
    @thingsiplay 2 роки тому +14

    "Tell my why you made the choice."
    Okay. Nvidia.

  • @DashieTM
    @DashieTM 2 роки тому +12

    At some point you will have to switch, x11 is eol, sadly.
    Right now wayland is a pain with lots of things, whether these are electron apps, something like rustdesk not working, kde missing half of their settings on wayland and more.
    But there is only one way that things get better, use it and report problems.
    If we don't use it, then it won't ever be improved as noone cares. And we will be stuck on x11 that doesn't get improved anymore.

    • @kyrylmelekhin2667
      @kyrylmelekhin2667 2 роки тому +3

      Xorg can improve, I'll prove it someday ;)

    • @DashieTM
      @DashieTM 2 роки тому +4

      @@kyrylmelekhin2667 look, I admire the dedication, it's just that the entire freedesktop team shifted their focus on their new project. Aka you would have to do it alone.

    • @kyrylmelekhin2667
      @kyrylmelekhin2667 2 роки тому +1

      @@DashieTM it's ok I'm used to it. Not the first open source project under my umbrella. Maybe I should live stream hacking on xorg until that code becomes suckless perfect

    • @notuxnobux
      @notuxnobux 2 роки тому

      @@kyrylmelekhin2667 I intend to stay on xorg too. I have hacked on it too and it's not that hard to understand really, the code isn't as bad as people claim. Right now there is nothing I want to modify with xorg because it works fine with the hardware I have, but I could easily modify it if i wanted to in the future. Like if i get a hdr monitor I can add hdr metadata to x11, chromium, gtk and mpv and my desktop is complete. I have worked on xorg, xlib, chromium, gtk and mpv codebase before so it's easy to do for me.

    • @kyrylmelekhin2667
      @kyrylmelekhin2667 2 роки тому

      @@notuxnobux great! My goals are a bit different though, I tend to prefer simple solutions, low Loc. I am in the process of stripping down already a relatively small X server, lookup tinyx. It's going to be in < 90K lines of C. Minimal dependencies, no Mesa, no hw acceleration except for fbdev kernel drivers that have drm emulation. Still it would work on any hardware. Also in the future optional dri3 support is planned, no glx bloat.

  • @soupborsh8707
    @soupborsh8707 2 роки тому +2

    I'm using Xorg, because my graphics card is from Nvidia. OBS not working and VScode, Blneder, Minecraft don't work well

  • @Neucher
    @Neucher 2 роки тому +12

    Wayland is good if you only use gnome and Firefox. For a lot of other things it's often a hit or miss. Just don't use any older program I guess.

    • @arthurbttf
      @arthurbttf 2 роки тому +8

      It's new, things will adapt

    • @ok-tr1nw
      @ok-tr1nw 2 роки тому

      Alot of the software works at same speed on my fedora system with nvidia 515 drivers
      I got a gtx 1050
      Tf2 plays at normal xorg speed
      And minecraft stopped chugging

    • @Cheesewiz247
      @Cheesewiz247 2 роки тому

      XWayland is a thing. What's the issue with old programs?

    • @Neucher
      @Neucher 2 роки тому +2

      @@Cheesewiz247 Often they don't launch what so ever. Good luck fixing that with xwayland.

    • @zekicay
      @zekicay 2 роки тому

      @@Cheesewiz247 XWayland doesn't send correct DPI info to some programs.

  • @s9209122222
    @s9209122222 2 роки тому

    There is still no damn HDR on both Xorg and Wayland.

  • @TechJolt3d
    @TechJolt3d 2 роки тому

    Gnome on xorg because discord just will not open
    also alacritty's window header bar thing is broken on gnome wayland

    • @DMSBrian24
      @DMSBrian24 2 роки тому

      Discord opens fine, it just doesn't support full screen sharing, if it doesn't open for you, that's a whole another issue, maybe package/distro related

    • @monkev1199
      @monkev1199 2 роки тому

      Alacritty window header is because gnome refuses to adopt community standards (server side decorations). I don't even care if gnome doesn't use it for their apps, but for anything other than Gtk it's pretty bad.

  • @TuxPeng
    @TuxPeng 2 роки тому +2

    Waylands not ready; X11 works fine for me. Rustdesk doesn't support wayland yet

  • @CMDRSweeper
    @CMDRSweeper 2 роки тому

    Congratulations Brodie! You have now ascended to the pro UA-camr's level I see!
    The WhatsApp spam bots have started impersonating you already, a sign that you have gotten big enough! :D

  • @jonbikaku6133
    @jonbikaku6133 Рік тому

    So systemd is evil because it does too many things, but this is somehow an advantage in shiny new Wayland?

  • @afuyan
    @afuyan 2 роки тому

    I don't use Wayland, it still break my LCL Qt5 apps. Menus sometimes placed incorrectly, buttons and other components are glitching, the font scaling is still broken. Not a pleasant thing to develop desktop apps. Everytime when the user runs my app, I just make it give a warning dialog and make my app to kill itself automatically after that rather than keep listening of user complaints when it breaks on Wayland.

  • @zehph
    @zehph 2 роки тому

    I'm not against Wayland, but as you mentioned in the video, it solves issues that are more theoretical than anything, maybe if we had a bigger market share on Linux desktop it would be different and in general Wayland just makes my life harder and I may be blind but I'm still to understand the "major" issue that is the so popular screen tearing is. If I have or had it, I've never noticed and didn't recognize or did not care...
    Edit: realized that it must be because I don't have high refresh rate on my PC screens yet.

  • @yabobay
    @yabobay 2 роки тому +1

    compiz is a window manager

  • @jeffsadowski
    @jeffsadowski 2 роки тому

    I do not use wayland. 3 things: 1) I use x2go for one I need the ability to run multiple desktops from multiple users on each of my servers. Currently I use x2go server with XFCE desktops. 2) I use xllvnc to share my desktop including the login screen. I need to be able to remotely see what someone else is seeing on the screen from login to using it. Wayland moved this to the dekstops so I can not see the login screen at all and even the gnome shared desktop acts slow and seems unusable compared to x11vnc. 3) I like the XFCE Desktop and it currently does not work with Wayland.

  • @ALAK5555
    @ALAK5555 2 роки тому +1

    I dont use wyland because i hate vsync

  • @0x007A
    @0x007A 2 роки тому

    Wayland, the Microsoft Windows UI of the *nix world, brings down the entire system when it crashes. But, but Wayland is easier for knuckle-dragger, mouth-breather gamers.

    • @monkev1199
      @monkev1199 2 роки тому

      Implementations don't have to run everything in one process though.
      Web browsers for a the last decade render on a physically different process from the web engine.

    • @0x007A
      @0x007A 2 роки тому

      @@monkev1199 one improvement that I would like to see materialise for web browsers is to swap each inactive (non-viewable) tab to disk (swap file / swap partition) when more than 2-4 tabs are open.