SDL 3.0 behoudt voorkeur voor Wayland ondanks kritiek van Valve

Gamelibrary Simple DirectMedia Layer gaat in SDL 3.0 toch Wayland als displayserver gebruiken, ondanks veel discussie daarover. Joshua Ashton van het Linux graphics-team van Valve uitte eerder kritiek vanwege een aantal bekende problemen met Wayland die X11 niet heeft.

SDL, of Simple DirectMedia Layer, is een crossplatform library die veel gebruikt wordt voor videosoftware, emulators en games. De library gebruikt al enige tijd X11 als displayserver, maar besloot in versie 3 de voorkeur te geven aan Wayland. Dat leverde frustratie op bij onder andere Ashton van het Linux graphics-team van Valve, dat vaak LibSDL gebruikt. Hij opende op 24 maart een pullrequest in het project, waarin hij stelt dat Wayland nog diverse niet-opgeloste problemen heeft.

Ashton noemt onder meer een aantal bekende prestatieproblemen en problemen met enkele van de protocollen die belangrijk zijn voor gamers. "Er is geen enkel voordeel te behalen voor games en de gemiddelde applicatie door Wayland boven X11 te verkiezen", schrijft Ashton.

Ashtons zorgen leidden binnen het pullrequest tot een levendige discussie, waarin de voor- en nadelen van Wayland en X11 worden besproken. Na enkele dagen hakte Sam Lantinga, maintainer van SDL en ook werkzaam bij Valve, een knoop door. Ondanks de genoemde problemen blijft SDL 3.0 standaard de voorkeur geven aan Wayland.

Lantinga geeft aan dat de mensen achter Wayland op de hoogte lijken te zijn en werken aan oplossingen. "Terwijl zij daarmee bezig zijn, laat ik Wayland als standaard staan, zodat het voor anderen gemakkelijker is om te testen en [de mensen achter Wayland] van feedback te voorzien. Naarmate we dichter bij de release komen, zullen we de beslissing opnieuw bekijken", aldus Lantinga. Het pullrequest is inmiddels gesloten.

Wayland wint al jaren terrein. Zo wordt Linux Mint 21.3 geleverd met experimentele Wayland-ondersteuning en overwegen meer Linux-distro's, waaronder Fedora, om standaard Wayland-ondersteuning te bieden. Ook SDL overwoog eerder al om de voorkeur aan Wayland te geven, in plaats van X11. In januari 2022 werd Wayland de standaard gemaakt voor SDL2, maar dat werd in april dat jaar teruggedraaid vanwege diverse problemen.

Door Eveline Meijer

Nieuwsredacteur

28-03-2024 • 10:56

78

Submitter: Sando

Reacties (78)

Sorteer op:

Weergave:

Een artikel met wat meer achtergrond over x11 vs wayland:
https://www.tuxedocompute...X11-and-Wayland-_1.tuxedo
en ook deze
https://www.phoronix.com/...0-Wayland-Default-For-Now

PS wat een verschikkelijk warrig tweakers stukje.
SDL 3 is nog niet uit en voor de toekomst voorlopig kan iedereen nu en in de toekomst gewoon SDL2 blijven gebruiken.
SDL gebruikt als sinfd het begin (1998) X11 onder linux (of direct buffer),
De Wayland community is niet echt bekend om het snel oplosssen/ introduceren van missende functionaliteit, dus wel een tereschte zorg. En alleen SDL 3 zal HDR support brengen, vandaar dat steam (deck oled) daar graag op over wil.
Het klopt dat het niet heel snel gaat met Wayland, maar om het plaatje compleet te maken moet je ook weten dat de ontwikkeling van X11 eigenlijk helemaal tot stilstand is gekomen. Er is niemand meer die er veel tijd of moeite in wil steken. HDR is een prima voorbeeld, X11 ondersteunt dat niet en het toevoegen vereist zoveel veranderingen dat het niet meer gaat gebeuren. Om het wel te doen moet je zoveel aanpassen dat je backwardscompatibility waarschijnlijk moet opgeven. Als je toch moet doen is het misschien beter om een verse start te maken en dat is precies wat Wayland is.

Realistisch gezien is X11 een doodlopende weg geworden. De vraag is niet meer of we afstappen van X11 maar wanneer. Ik snap daarom wel dat de SDL-developers zich liever op toekomst (Wayland) richten dan op het oude X11 in leven houden.

[Reactie gewijzigd door CAPSLOCK2000 op 22 juli 2024 21:23]

Voor Valve maakt het niet zoveel uit wat als desktop compositor draait, X is voor hun een miniem protocol tussen Proton en Gamescope. Het is niet waarschijnlijk dat dat voor hun ooit een probleem word.

PS. Gamescope heeft wel HDR ondersteuning.

[Reactie gewijzigd door Pinkys Brain op 22 juli 2024 21:23]

Ik ben geen fan van wayland, vooral doordat het de netwerk transparantie mist (dat kan je wel weer toevoegen met waypipe maar het is niet zo soepel als X11).

Dus voorlopig blijf ik gewoon bij X11. Ja, X11 is verouderd maar dat komt doordat er nooit een X12 is gekomen. Dat was mijns inziens een veel betere optie geweest dan Wayland dat veel te veel focust op de lokale desktop. Er is in de computing altijd een heen en weer spelletje geweest tussen centralisatie en decentralisatie. De mainframe was gecentraliseerd, toen kwamen de PC's die weer heel erg gedecentraliseerd waren. En nu krijgen we weer steeds meer processing in de cloud, dat is weer gecentraliseerd. Daardoor is een client/server model weer steeds interessanter terwijl Wayland zich puur op de "PC" periode richt.

[Reactie gewijzigd door Llopigat op 22 juli 2024 21:23]

X12 is er nooit gekomen omdat dit het volledig opnieuw schrijven van de oplossing zou hebben betekend (volgens de ontwikkelaars). Je kunt Wayland dan ook als 'X12' beschouwen, waarin alle eisen en wensen voor een toekomstbestendige oplossing zijn verwerkt.
Ik ben geen fan van wayland, vooral doordat het de netwerk transparantie mist (dat kan je wel weer toevoegen met waypipe maar het is niet zo soepel als X11).
Ik vraag me serieus af of je die netwerk transparantie wel eens gebruikt hebt want 'soepel' is absoluut niet het woord wat ik zou gebruiken om dat te beschrijven. Geklooi met .Xauthority bestanden, sleutels (of zorgen dat je X forwarding geconfigureerd hebt in ssh), maar ook als het werkt is de response van de GUI behoorlijk wat minder vloeiend dan bv Windows met RDP.
of zorgen dat je X forwarding geconfigureerd hebt in ssh
Ehm ja dit is dus zo simpel als -Y gebruiken ;) (-X doet hetzelfde maar dan stelt hij niet automatisch je xauth in).

Ik vind dat erg soepel ja. Ook geen bezwaren met vloeiendheid maar dat is wel lokaal. Voor remote gebruikte ik vroeger NoMachine NX maar de laatste versies zijn niet meer je van het.
[...]
Ehm ja dit is dus zo simpel als -Y gebruiken ;) (-X doet hetzelfde maar dan stelt hij niet automatisch je xauth in).
Tenzij je op de server nog wat packages mist of ergens een setting verkeerd staat...
Ik vind dat erg soepel ja. Ook geen bezwaren met vloeiendheid maar dat is wel lokaal. Voor remote gebruikte ik vroeger NoMachine NX maar de laatste versies zijn niet meer je van het.
Als je toch al een aparte tool nodig hebt is het dus kennelijk ook geen kritische noodzaak om X11 op een lokale desktop te draaien.
Als je toch al een aparte tool nodig hebt is het dus kennelijk ook geen kritische noodzaak om X11 op een lokale desktop te draaien.
Ja dat was dus iets wat in de toekomst verbeterd had kunnen worden in het protocol zelf. Ik was ook totaal niet blij met die extra tool, maar op een lokaal netwerk is het ook nergens voor nodig.

[Reactie gewijzigd door Llopigat op 22 juli 2024 21:23]

Als er na 37 jaar (!) nog niemand in geslaagd is X11 te verbeteren denk ik dat je beter kan concluderen dat het er niet meer in zit.
Daarnaast is het hele idee van remote GUI benadering in de tussentijd wel behoorlijk achterhaald door browser gebaseerde applicaties. De 'split' tussen lokaal en remote zit bij X11 gewoon vervelend in de weg voor nieuwe ontwikkelingen en heeft voor vrijwel de meeste gebruikers geen voordelen meer. En ondanks al die netwerk transparantie is het protocol ook nog eens niet veilig: iedere applicatie kan met iedere andere applicatie 'meegluren' en bijvoorbeeld toetsenbord activiteit injecteren.
Echt niemand die Linux op de desktop gebruikt, is daarin geïnteresseerd. En zo wel, dan zijn daar genoeg oplossingen voor. X11 is dood en komt nooit meer terug.
Ik ben lang voorstander geweest van X11, gewoonweg omdat Wayland een paar features mist (met name het hele xserver/xclient model waar ik nog wel eens gebruik van wil maken), maar daar zijn tegenwoordig ook oplossingen voor en ik merk met nieuwere setups toch echt wel de tekortkomingen bij X11. Denk aan per monitor fractional scaling op HDPI setups.

Dus op zich wel goede zaak dit, vooruitgang kan wel een duwtje in de rug gebruiken.
Voor netwerk transparantie is er tegenwoordig waypipe [1]. Ik moet erbij zeggen dat ik het nog niet geprobeerd heb, maar het concept is vergelijkbaar met remote X11: wayland protocol & buffer serialisatie over het netwerk, zodat je de compositor op een andere computer kan draaien dan de clients.

[1] https://gitlab.freedesktop.org/mstoeckl/waypipe
Waypipe is nogal cowboy. Het op afstand delen van shared memory buffers van een remote machine is nog een groter security risico als wat X11 deed.

X11 was erg geoptimaliseerd op netwerktransparantie door niet met bitmaps of memory blokken te werken maar met drawing calls. Schrijf X hier, teken een lijn daar. Erg efficient, veel efficienter dan blocks (pixels) pushen en vergelijkbaar met hoe RDP in het begin werkte (tegenwoordig doet die in de praktijk ook meer blockpushing). Werkte uitstekend alleen het protocol was gemaakt voor korte afstand (lage latency) en is niet mee aangepast op nieuwe toepassingen (video, anti-aliasing enzo). VNC als blockpusher is bijvoorbeeld veel minder efficient.

Ik vond SPICE op dat punt erg interessant maar dat is nooit echt mainstream geworden. Ik geloof dat proxmox er nu iets mee doet.

Ik vind een GUI programma op een andere computer starten en het resultaat op mijn eigen scherm krijgen compleet met beheer door mijn eigen window manager precies alsof het lokaal draait echt iets magisch en iets dat ik erg mis in wayland.

[Reactie gewijzigd door Llopigat op 22 juli 2024 21:23]

De netwerken van nu zijn natuurlijk ook wel een stuk beter waardoor buffers oversturen misschien wel efficiënter is tegenwoordig (bandwidth vs latency van heel veel draw calls). En de meeste X11 apps gebruiken volgens mij al heel lang niet of nauwelijks X11 draw calls meer maar sturen eigenlijk ook gewoon buffers over (wat niet altijd positief is overigens want bijvoorbeeld vim-gnome over een traag netwerk werkt veel minder goed dan vim-gtk, ik vermoed omdat de gnome versie ook hele buffers overstuurt). Anyway, als je ziet hoe goed remote desktop kan werken op een snel netwerk dan zou waypipe het ook moeten kunnen. De security aspecten moeten wat mij betreft op een ander niveau opgelost worden door simpelweg alleen versleutelde protocollen te gebruiken.

Hoe dan ook deel ik ook wel enige nostalgische gevoelens voor remote X11, toen ik dat voor het eerst gebruikte leek het inderdaad haast magisch dat het kon, zelfs over een 10 Mbit ethernet lijntje :Y). Maar ik ben er inmiddels wel van overtuigd dat de toekomst geen X11 is, conceptueel zit wayland veel beter in elkaar, het is alleen jammer dat er nu alweer zo’n wildgroei aan protocollen nodig is, misschien komt er op termijn wel weer iets anders om wayland te vervangen :+
Ik ben lang voorstander geweest van X11, gewoonweg omdat Wayland een paar features mist (met name het hele xserver/xclient model waar ik nog wel eens gebruik van wil maken), maar daar zijn tegenwoordig ook oplossingen voor en ik merk met nieuwere setups toch echt wel de tekortkomingen bij X11. Denk aan per monitor fractional scaling op HDPI setups.
Helaas mist Wayland nog ondersteuning zaken die in het wild vaak voorkomen. Denk aan ondersteuning voor Optimus (hybride GPU-configuraties in notebooks). In X11 is het voor een sterveling met behapbare end-user tooling mogelijk om te schakelen tussen zaken als primaire rendering op iGPU en 3D-acceleratie door de dGPU, en alles laten renderen op de dGPU. Die keuze is er (nog) niet voor Wayland.

Dat schakelen is essentieel als je onderweg een fatsoenlijke accuduur wil hebben, en om optimaal gebruik te maken van je monitoruitgangen als je ergens "docked" werkt. Met name dat laatste is nog niet mogelijk in Wayland.

[Reactie gewijzigd door The Zep Man op 22 juli 2024 21:23]

Ik ben lang voorstander geweest van X11, gewoonweg omdat Wayland een paar features mist (met name het hele xserver/xclient model waar ik nog wel eens gebruik van wil maken),
Ik vind het altijd een beetje vreemd dat Unix fanaten die liefst simpele tools hebben om zelf te combineren zo'n harde voorkeur hebben voor X11 wat feitelijk alles tussen display hardware en remote weergave implementeert. Wayland is in die zin veel meer Unix like.
Mooi proces dit, één van de belangrijkste voordelen van Open Source is dat dit soort discussies / afwegingen publiekelijk worden gevoerd / gemaakt.

DirectX (Microsoft) is maar gewoon een zwart gat op dat vlak.
DirectX is niet echt te vergelijken, dat doet alleen het 3D deel inclusief een hoop APIs om developers (voornamelijk voor games) op weg te helpen. Wayland/X11 zijn Linux displayservers, het ding waar de desktop op draait. DirectX draait op/met de displayserver van Windows.

De tegenhanger van DirectX is OpenGL, en sinds een paar jaar ook Vulkan van AMD.
Nee dat zie je fout, DirectX is juist de verzamelnaam van alle API's samen, DirectX is dus niet alleen maar 3D, maar ook geluid, input en nog andere zaken.
En Vulkan is niet (volledig) van AMD, Vulkan is de opvolger van OpenGL en wordt net als OpenGL beheert door Khronos group, waar een hoop grote bedrijven achter zitten.
DirectX is dus wel degelijk grotendeels de tegenhanger van SDL, waar OpenGL/Vulkan voornamelijk alleen grafische API's zijn.
Er zit dus wel een duidelijk verschil tussen DirectX en SDL in de zin dat DirectX alleen een merknaam is, en SDL een library. Er is niet zoiets als de DirectX-library; de DirectX-API's hebben allemaal hun eigen libraries, en er is een neerwaardse trend te bespeuren in hoeveel van die libraries nog bestaan en gebruikt worden -- DirectMusic ging al snel dood, DirectDraw is niet meer nodig, en DirectSound en DirectInput zijn deprecated ten faveure van nieuwe APIs die niet onder DirectX geschaard worden. Als je het sec praktisch bekijkt is de "DirectX = Direct3D" stelling dus niet eens meer heel verkeerd.
Xaudio2 en xinput vallen gewoon onder de DirectX monicker.
Dat was 20 jaar geleden misschien zo maar DirectInput en DirectSound worden al eventjes niet meer gebruikt. Inmiddels zit zowel audio als input in de GDK. Hoewel audio vrijwel altijd via middleware gaat (denk aan Wwise of fmod).

[Reactie gewijzigd door Wolfos op 22 juli 2024 21:23]

DirectX omvat nog steeds gewoon audio (Xaudio2) en input (xinput of raw input).
SDL is eerder vergelijkbaar met de Microsoft GDK welke ook open source is. DirectX is ook steeds meer richting open source aan het bewegen maar de implementatie van graphics APIs zit 'm meer in de driver.
X11 is een dood project. En komt met een lading aan problemen die Wayland niet heeft. Dat X11 ter ziele is, is al jaren het geval. Valve had dit ook al jaren geleden moeten zien aankomen en eventueel resources moeten zetten op deze "knelpunten".
Er zijn "opvolgers" van X11 die niet Wayland zijn. Mir bestaat nog steeds, en ook oudere pogingen om X11 uit te breiden zijn nog in repos te vinden.

Het probleem is dat alleen Wayland enige aandacht heeft gekregen, eigenlijk. Mir werkte eigenlijk best goed, maar mensen waren boos op en bang voor verandering door Canonical dus dat is praktisch dood achtergelaten.

Varianten op X11 zelf hebben nooit enige aandacht gehad, het waren altijd hobbyprojecten die na een paar jaar niet meer ontwikkeld werden. Red Hat en de andere huidige X-ontwikkelaars hebben het voor elkaar gekregen een nieuw model te introduceren dat daadwerkelijk te gebruiken is.

Je kunt op X11 blijven, of Mir draaien, of Y11 of X12 of noem een ander klein project dat X heeft geprobeerd te forken. Niemand die je tegenhoudt. Je kunt alleen niet verwachten van anderen dat ze voor jouw specifieke platform ondersteuning in gaan bouwen. Voor nu is dat vooral bij Wayland een probleem (Mir had wat minder compatibility issues), waar de dev eerlijk toegeeft geen kennis te hebben van Wayland workarounds of geen interesse heeft in het porten, maar in de toekomst wordt dit wellicht X11 nu KDE en Gnome naar Wayland-first gaan.

Het is eigenlijk Wayland die je hier de keuze geeft en het egaliseren van het landschap voorkomt, want sinds de jaren 90 zit de GUI-wereld vast aan een protocol dat het absolute bare minimum aanbied voor functioneel desktopgebruik, ontworpen voor het mainframe+terminal model. Mir en Wayland hebben een moderne display stack (zoals Windows en Apple dat eigenlijk ook al jaren doen) die niet doet alsof je computer een mainframe is dat verbonden is met zichzelf als terminal. Als Wayland er niet was, zaten we nog steeds op X11 en ook alleen X11 te werken, want Mir is keihard afgeschoten.

Ik verwacht dat X11 nog wel vele jaren ondersteund zal worden, desnoods met een soort omgekeerde XWayland waarmee je op X gewoon Wayland-applicaties kan draaien.
Ja ik gebruik momenteel gewoon de X11 fork op BSD. Die wordt nog wel ontwikkeld.
die niet doet alsof je computer een mainframe is dat verbonden is met zichzelf als terminal
Ja maar dat is precies waar we nu weer steeds meer naartoe gaan met de cloud. Dat is precies mijn bezwaar, wayland is bezig de vorige oorlog te bevechten.
Het probleem is dat alleen Wayland enige aandacht heeft gekregen, eigenlijk. Mir werkte eigenlijk best goed, maar mensen waren boos op en bang voor verandering door Canonical dus dat is praktisch dood achtergelaten.
Teveel push vanuit de zakelijke wereld is ook niet goed in FOSS vind ik. Van Canonical niet maar ook van RedHat niet. Dan staat de gebruiker niet meer voorop maar het business model van de leverancier.

[Reactie gewijzigd door Llopigat op 22 juli 2024 21:23]

Ja maar dat is precies waar we nu weer steeds meer naartoe gaan met de cloud. Dat is precies mijn bezwaar, wayland is bezig de vorige oorlog te bevechten.
Cloud betekent doorgaans dat je op desktops alleen een browser nodig hebt en een functionele graphics stack die niet noodzakelijk remote weergave hoeft te ondersteunen.
De huidige cloudinsteek is heel anders die van de mainframes van weleer. De grootste overeenkomsten zitten in (web)apps die het even goed doen op Wayland als X11.

De vervelende realiteit van FOSS is dat bedrijfsinvesteringen de enige reden zijn dat je een FOSS OS kunt draaien. Red Hat, Oracle, Canonical, maar ook bedrijven als pfSense, zorgen er samen voor dat er een FOSS stack is. Zonder de "geef gratis weg maar licenseer speciaal spul voor grote bedrijven"-aanpak, valt de boel uit elkaar.

Ik ben het ideologisch met je eens, maar iemand moet complexe systemen als X11 onderhouden. Redhat deed dat, en nu Redhat daarvan weg begint te bewegen zal er wellicht iemand anders zijn die dat werk overneemt, maar ik betwijfel dat een groepje vrijwilligers in staat zal zijn om de drivers van Intel, Nvidia, en AMD bij te benen.
Zonder partijen zoals Canonical en Red Hat is de FOSS wereld veel te stuurloos. Dan forkt men de hele godsganse dag alles, 5000 distro's, 10miljard packages.

Al mis ik de 'goeie ouwe tijd' waar de defacto standaard Debian was, nu is dat al jaren Ubuntu. Maar Debian was dat ook alleen maar gelukt door het project heel gestuurd aan te pakken. De free software guidelines bv.

Het zijn juist de hele sterke idealen van de Debian ontwikkelaars geweest waardoor Linux een beetje vast bleef zitten. De community werd steeds meer verdeeld, de ene na de andere fork spreide de ontwikkelingskracht weer verder uit.

Tot Canonical die tak van de Debian stamboom met een beetje sturing heeft weten te stabilizeren. Ik ben heel groot fan van Debian en baal er een beetje van dat het niet meer defacto standaard is, maar besef me goed dat partijen zoals Canonical, Red Hat, SUSE e.d. nodig zijn.

Apple en Microsoft doen het beter omdat er vooral een sterke lijn is binnen de ontwikkeling en er niet om de haverklap geforkt wordt.

De natuur van de FOSS wereld is gelijk ook meteen haar grootste zwakte.
Dit is wel erg ver van de waarheid. X11 voldoet al een decennia aan moderne eisen.

> RedHat als grote voorstander van Wayland heeft X11 ontwikkeling overgenomen puur om het te stoppen.

Nee. De ontwikkeling valt onder Free desktop.org

> Nu wordt steeds geroepen van "Zelfs de ontwikkelaars van X11 willen er mee stoppen", ja nogal wiedes, daar zijn ze speciaal voor aangesteld.

Nee. X11 was te oud, te buggy en te gammel om er aan moderne eisen te voldoen. Opnieuw beginnen en opnieuw ontwikkelen van 0 af aan heeft vele voordelen. Hoe groter Wayland werd, des te meer ontwikkelaars van X zagen dit in en verlieten het zinkende schip. Er wordt al een decennium nauwelijks aan ontwikkeld.

> Ik had graag een moderne versie van X11 gezien,

Dat kan dus niet. X11 is veel te gammelnom nog uit te breiden.

> RedHat houdt ervan om zijn eigen uitvindingen te pushen zoals ook bijvoorbeeld Systemd, Gnome, Wayland.

Gnome valt onder GNOME stichting. Wayland onder Freedesktop. RH zet eerder nieuwe en betere technologie in, juist om de ontwikkeling te versnellen.
Je kijkt weinig verder dan je neus lang is? Die projectorganisaties zijn er eigenlijk alleen maar als schil om een stel ontwikkelaars die eigenlijk al het werk doen, inclusief de planning. En daar speelt RH wel degelijk in al die projecten een enorm belangrijke rol. Zij leveren in al die projecten personeel dat veel werk voor die projecten doet, in alle rollen...
En daar speelt RH wel degelijk in al die projecten een enorm belangrijke rol. Zij leveren in al die projecten personeel dat veel werk voor die projecten doet, in alle rollen
Helemaal mee eens met wat je zegt. Echter klaag je ergens anders behoorlijk onterecht over Wayland. Eerder werd door iemand anders gesteld dat Red Hat expres de ontwikkeling van X11/Xorg heeft gestopt. Daar is niks van waar. Het wordt gesteld zonder enige onderbouwing. Dat Red Hat veel ontwikkelaars betaald is niet een onderbouwing.
Eerder werd door iemand anders gesteld dat Red Hat expres de ontwikkeling van X11/Xorg heeft gestopt. Daar is niks van waar. Het wordt gesteld zonder enige onderbouwing. Dat Red Hat veel ontwikkelaars betaald is niet een onderbouwing.
De beslissing van RH om te stoppen met het leveren van personeel aan X11-gerelateerde zaken ten faveure van Wayland is echter zeker wel een keuze geweest die voor X11 zeer nadelig heeft uitgepakt. En in dat licht gezien is het gewoon ook zo dat effectief gezien RH de stekker uit X11 heeft getrokken. RH is er heel duidelijk over geweest dat dit een bewuste keuze is aan hun kant.
Echter klaag je ergens anders behoorlijk onterecht over Wayland.
Dan reageer je daar toch gewoon op onder het relevante commentaar, in plaats van hier?
> De beslissing van RH om te stoppen met het leveren van personeel aan X11-gerelateerde zaken ten faveure ..

Hoe vaak moet dit nog herhaald worden. X11 was een gruwel om te moderniseren en ontwikkelaars zijn massaal van X11 naar Wayland gegaan. Omdat het beter is.
Ja, X11 was niet heel makkelijk om te katten om de beveiliging te verbeteren, maar je denkt toch niet dat de ontwikkelaars van RH zo maar naar eigen hartenlust aan willekeurige projecten gaan werken op kosten van de baas? Daar zit echt wel een vorm van planning achter. En RH is, voor zover ik van de verhalen van diverse bloggers etc. kan opmaken, in één klap overgegaan.
Opnieuw. Voor de 4de keer. X11 was een zooi niet meer te onderhouden code. Daarom gingen developers weg van X11 en werken aan Wayland.
Ik zeg ook niet dat X11 nog met zijn tijd mee kan? Dat staat daar niet! Wat wel overduidelijk is, is dat RH een beslissende rol heeft gespeeld in het effectief beëindigen van het in leven houden van X11, voor zover dat (nog) mogelijk is. En ja, dat is toch echt een managementbeslissing geweest.
Nee, X11 is al een decennia dood omdat het een project is dat niet te beheren viel. Zo goed als alle ontwikkelaars van X11 zijn toen overgestapt op Wayland. RH heeft dit niet beslist zoals je claimt.

En als RH een zetje in de goede richting gegeven heeft om X11 voorgoed de nek om te draaien, dan is dat fantastisch.

[Reactie gewijzigd door kabelmannetje op 22 juli 2024 21:23]

Nee, X11 is al een decennium dood omdat het een project is dat niet te beheren viel. Zo goed als alle ontwikkelaars van X11 zijn toen overgestapt op Wayland. RH heeft dit niet beslist zoals je claimt.
Zoals de tijdlijn bij mij bekend is, is het zo dat X11 op een gegeven moment toch een groot deel deel van zijn RH developers verloor en tegelijkertijd Wayland prio kreeg van RH. Jij blijft doen alsof managers daarop geen invloed zouden hebben. Dat is lachwekkend.
En als RH een zetje in de goede richting gegeven heeft om X11 voorgoed de nek om te draaien, dan is dat fantastisch.
Als Wayland nu volledig als vervanger kon dienen van X11 en ook niet zo krakkemikkig in elkaar zou steken, dan zouden we het hier met elkaar eens kunnen zijn. Maar Wayland is na 15 jaar nog verre van af en zit in elkaar als een kaartenhuis. Het is door het de byzantijnse werking van de projectorganisatie schier onmogelijk om de benodigde voortgang te maken en eenheid te krijgen die nodig is voor een werkbaar product. Iedereen zit effectief zijn eigen protocol te schrijven middels extensies, waardoor er feitelijk geen goed doelwit is om je als ontwikkelaar op te richten en de complexiteit van de oplossing het effectief gebruik ervan in de weg gaat staan. Kortom: Wayland is een mislukking, en dat is héél jammer. Want X11 is wel aan vervanging toe. Daar ben ik het wel mee eens.

Er moet iets voor in de plaats komen dat wel succes kan hebben. Wat ik graag zou zien is een consolidatie van alle protocollen die samen nu effectief Wayland vormen in één protocol dat iedereen gaat ondersteunen en wat alle belangrijke dingen doet wat X11 ook kan. Met de huidige projectorganisatie en -cultuur zie ik het eerlijk gezegd niet gebeuren dat het schip nog recht wordt getrokken. Het is tijd voor de opvolger van Wayland die de lessen van Mir en Wayland meeneemt in een oplossing die wél werkt.

Het overstappen terwijl de vervanger nog niet klaar is, is de domste en meest roekeloze beslissing die je kan maken voor de Linux desktop. Niemand wordt hier beter van. En wat dat betreft ben ik het helemaal met Valve eens: het moet echt anders met Wayland voordat de stap gemaakt kan worden.

[Reactie gewijzigd door ocf81 op 22 juli 2024 21:23]

Heb je bronnen hiervoor?
De projectdocumentatie van Wayland, de gitlab discussies etc.

[Reactie gewijzigd door ocf81 op 22 juli 2024 21:23]

Nergens lees ik dat "het management" van RH op een of andere manier van X11 een enorme puinhoop-code van hebben gemaakt. En dat daardoor alle developers naar Wayland gegaan zijn.
Ik heb het dan over Wayland, niet over X11. En dan voornamelijk over hoe Wayland als project is georganiseerd, de cultuur die daaruit voortkomt en hoe het tot de resultaten komt.

[Reactie gewijzigd door ocf81 op 22 juli 2024 21:23]

Nergens lees ik ook maar enig bewijs voor deze wilde aanname.
Het is geen wilde aanname, het is de conclusie van een zelf ondernomen analyse van de projectdocumentatie van Wayland. De club functioneert niet.
Graag bewijs voor al deze claims.
Ga lekker de documentatie doorlezen. Dan zie je vanzelf hoe fout het zit. Als je dat niet wil, stop dan met zeuren. Als je het niet ziet ben je stekeblind.
Heb ik gedaan. Nergens lees ik van jouw claims. Dus opnieuw, graag een link naar bewijs van jouw claims.
Je kan het dus niet onderbouwen. Opnieuw, graag bewijs dat RH vooropgezet X11 heeft laten falen en ontwikkelaars naar Wayland heeft overgezet.

Dus bewijs aub, niet zomaar wat roepen.

[Reactie gewijzigd door kabelmannetje op 22 juli 2024 21:23]

Je kan het dus niet onderbouwen. Opnieuw, graag bewijs dat RH vooropgezet X11 heeft laten falen en ontwikkelaars naar Wayland heeft overgezet.
Dat is natuurlijk nooit expliciet gezegd, maar wordt maar wat duidelijk als je tussen de regels door leest. Maar goed, begrijpend lezen is voor jou al heel lastig merk ik. Je interpreteert dingen die ik schrijf vaak anders dan ze bedoeld zijn, ook al laten wat ik zeg weinig te wensen over aan duidelijkheid. Ik denk dat het goed analyseren van intenties in projectdocumentatie dan ook wel lastig voor je zal zijn.

[Reactie gewijzigd door ocf81 op 22 juli 2024 21:23]

In de documentatie staat juist het tegenovergestelde. Zoek zelf maar en doe je eigen onderzoek.
De beslissing van RH om te stoppen met het leveren van personeel aan X11-gerelateerde zaken ten faveure van Wayland is echter zeker wel een keuze geweest die voor X11 zeer nadelig heeft uitgepakt.
Kan je dit onderbouwen? De ontwikkelaars hebben er zelf voor gekozen om over te stappen op Wayland. Je zegt iets compleet anders, dat Red Hat dit beslist heeft. Dit zonder onderbouwing, lijkt meer op een onderbuikgevoel.

Ik ga vaak genoeg naar conferenties en spreek ook met mensen die toolkits ontwikkelen. Ik heb ook verschillende mensen gesproken die belangrijk zijn bij de ontwikkeling van Xorg en Wayland. Ze hebben toen regelmatig blogposts geschreven, eerst gewoon uit interesse, langzamerhand werd het serieuzer. En toch blijven er regelmatig zulk soort discussies met allerlei aannames zonder maar enige onderbouwing. Tja.
Dan reageer je daar toch gewoon op onder het relevante commentaar, in plaats van hier?
Ik wilde duidelijk maken dat mijn toevoeging niet betekend dat de stelling waar zou zijn.
Kan je dit onderbouwen? De ontwikkelaars hebben er zelf voor gekozen om over te stappen op Wayland. Je zegt iets compleet anders, dat Red Hat dit beslist heeft. Dit zonder onderbouwing, lijkt meer op een onderbuikgevoel.
Toegegeven, voornamelijk 2e-hands rook, zoals bloggers etc.
Ik wilde duidelijk maken dat mijn toevoeging niet betekend dat de stelling waar zou zijn.
Erg flauw, als je het mij vraagt, want nu ontwijk je de discussie op de plek waar die eigenlijk gevoerd moet worden: onder het commentaar waar je een probleem mee hebt en met een argumentatie waarom dat zo zou zijn.
Je ontwijkt zelf de discussie door maar wat te roepen. En niet met concreet bewijs voor jouw claims te komen.
Nee, ik ga gewoon geen uren steken in het terugvinden van alles wat ik gelezen heb. Dat is toch niet zo heel raar? Als je gewoon leest wat er staat wordt vanzelf duidelijk dat de mensen die aan Wayland werken niet sporen.
Oh, dus je hebt bewijs maar wil dat niet geven. Zwak excuus.
Maar Wayland is nu niet bepaald de gedroomde opvolger. Het project wordt compleet disfunctioneel geleid en heeft zeer weinig voortgang. De opzet is bovendien zo'n kaartenhuis dat het risico bestaat dat je in een soort USB- of HDMI-achtige situatie komt. Heel veel is optioneel, inclusief dingen die dat eigenlijk niet zouden moeten zijn....

Dat SDL dit nu doet is dan ook niet onverdeeld positief. Ja, er is wel wat druk nodig om de verandering te kanaliseren, maar er is ook een afbreukrisico dat gaming op linux weer een stapje terug kan zetten.

[Reactie gewijzigd door ocf81 op 22 juli 2024 21:23]

Wat houdt "de standaard" in? SDL is een abstractielaag dat het onderliggende grafische systeem voor een programma verbergt. Dus SDL zou gewoon X11 en Wayland moeten verbergen voor het spel, zodat het spel zowel op systemen met X en Wayland kan functioneren.
Dat doet het ook. Dit gaat over het fallback-mechanisme waarbij de volgordelijkheid van beschikbare video-drivers wordt bepaald. De eerst beschikbare wordt dan ook gebruikt. In 2.0 is dat eerst X11 en dan Wayland. In 3.0 wordt dat nu eerst Wayland en dan X11. Support voor bijde subsystemen zal voorlopig wel blijven bestaan.
Dit gaat om de default backend, zo ver ik het snap.
Dus als je een willekeurige app start met SDL, zal hij standaard via Wayland plaatjes op het scherm zetten. En dat kan dus best wat issues en performance dingen opleveren (nog).

Het besluit is nu eigenlijk genomen om _voorlopig_ de default op Wayland te laten staan aangezien SDL3 nog in ontwikkeling is. Dan komt er meer feedback binnen bij de Wayland mensen.

Maar de deur is dus nog open om vlak voor release van SDL3 de default toch weer terug naar X11 te zetten.
Kan Valve niet gewoon SDL 2 blijven gebruiken totdat SDL 3 ver genoeg gevorderd is?
Waarom zou dit zo'n drama moeten zijn?
Ik ben zelf wel van mening dat in een nieuwe major version er best gebroken mag worden met oude meuk als X11. Het moet een keer gebeuren want X11 heeft geen eeuwig leven, en is gewoon niet toekomstbestendig in zijn huidige vorm. Er zou een complete rewrite van X11 nodig zijn om X11 voor de langere termijn bruikbaar te houden, en dat zou intern zoveel backwards compatibility breken dat je niet beter af bent dan met Wayland.
Mee eens. Vernieuwing zal een keer moeten komen en dat is hopelijk dit moment. Op lange termijn zijn meer mensen blij met deze langetermijnskeuze denk ik.
Waarom zou dit zo'n drama moeten zijn?
Er is geen drama. Discussies zoals deze zijn in de open source wereld heel normaal. Soms lopen discussies wat hoog op, ook dat is normaal, maar uiteindelijk heeft (meestal) iedereen vrede met het besluit dat genomen wordt door de perso(o)n(en) die daartoe bevoegd zijn, in dit geval Sam Lantinga. En zo niet, dan wordt er geforkt en gaat men (meestal) vreedzaam ieder hun eigen weg.

Het drama wordt vaak pas gecreëerd door op sensatie beluste media outlets, iets wat bij T.net gelukkig mee valt.

Dit soort discussies vinden binnen softwarebedrijven als Microsoft en dergelijke ook wel plaats, maar dat zie je niet omdat het achter gesloten deuren gebeurd.
Kan Valve niet gewoon SDL 2 blijven gebruiken totdat SDL 3 ver genoeg gevorderd is?
Dat doen ze inderdaad want SDL 3 is helemaal nog niet klaar voor productie. Maar Valve zit tegenwoordig dicht genoeg op het open source-vuur om al in de ontwikkelfase te willen bijsturen en wat mij betreft is dat prima, omdat ze echt wel mensen met kennis van zaken in dienst hebben. Neem alleen al het feit dat Sam Lantinga, de oprichter van het SDL-project, tegenwoordig bij Valve in dienst is.

Ik denk dat ook Joshua Ashton het eens zal zijn met jouw punt dat we een keer over moeten naar Wayland, alleen was hij het blijkbaar niet eens met het moment waarop SDL 3 de default wijzigde. Maar nu de deur open staat om dit weer terug te wijzigen naar X11 als default voordat SDL 3 definitief wordt uitgebracht vermoed ik dat ook hij vrede zal hebben met de beslissing zoals die nu is genomen.

[Reactie gewijzigd door rbr320 op 22 juli 2024 21:23]

Joshua Ashton van het Linux graphics-team van Valve uitte eerder kritiek vanwege een aantal bekende problemen met Wayland die X11 niet heeft
Daartegenover heeft X11 een lading problemen die Wayland niet heeft. Als belangrijke libraries als SDL overstappen (of in dit geval het als default instellen) dan krijgt Wayland meer aandacht en dat is alleen maar goed voor hete oplossen van eventuele issues. Niemand besteed tijd aan iets dat niet gebruikt word.

Wayland is gewoon de toekomst voor nu. X11 is een zooi hacks en workarrounds op een bejaard framework geworden.

En voor hen die denken dat wayland nu verplicht is:
either way the user has final control over the backend being used, via the SDL_VIDEO_DRIVER environment variable.

[Reactie gewijzigd door bzuidgeest op 22 juli 2024 21:23]

Lijkt mij de juiste keuze. Iedereen is al lang genoeg blijven hangen op X11 omdat Wayland niet 1:1 een vervanging is. Op die manier is er geen reden om de problemen op te lossen.
Joshua Ashton is wel iemand met ervaring en verstand van zaken. Lijkt me ook niet iemand die Wayland wil tegenhouden. Als die vindt dat Wayland gewoon niet klaar is voor SDL3, dan is het wel een mening van iemand met betekenis.

Persoonlijk ben ik wel al volledig over op Wayland. X11 is oud en voldoet gewoon niet meer voor de moderne PC. Ik heb zelf ook meerdere schermen, waarvan 2 met Freesync. 3e scherm heeft een andere resolutie en refresh rate. Freesync zal dan gewoon niet werken onder X11, en dat 3e scherm is wel aan de praat te krijgen, maar X11 kan daar niet echt lekker mee overweg. X11 voelde voor mij ook altijd wat plakkerig, maar het kan zijn dat het was omdat om toen nog Nvidia gebruikte, en hun proprietary drivers waren altijd nèt niet perfect. Al kan ik op AMD ook nog wel enig verschil merken tussen X11 en Wayland. Wayland voelt toch wel gewoon beter qua desktop ervaring.

Op dit item kan niet meer gereageerd worden.