Vlákno názorů k článku
Ubuntu přechází na Wayland od Lael Ophir - Nevím toho o Waylandu až tak moc, ale...

  • Článek je starý, nové názory již nelze přidávat.
  • 20. 4. 2017 19:13

    Lael Ophir

    Nevím toho o Waylandu až tak moc, ale vidím jisté problémy:

    1. Wayland neumí remoting. X11 je sice příšernost, ale alespoň šlo (nějak) pracovat vzdáleně. Wayland je v tomhle - alespoň nyní - krok zpátky.
    2. Wayland neřeší rendering grafických primitiv. Je to v podstatě jen compositor. Čekal bych, že frameworky dostanou nějaké API, kterým budou moct kreslit, a to API se bude dát streamovat.
    3. Wayland řeší pouze zobrazování. Ideální by bylo mít na jedné straně API pro rendrování grafických primitiv, a na druhé straně drivery zařízení. Dělá se to tak ve Windows i na Macu, a má to dobré důvody. Za mě je Wayland málo a pozdě.
    4. Wayland je Linux/FreeBSD only. Unixy potřebují jít kupředu jako celá platforma, a ne tak že vendor A implementuje jednu věc, vendor B podobou věc a trochu jinak, vendor C zůstane u "tradice", a pak má každý svoje a všechno je nekompatibilní. Kde je standardizace? Máme čekat další Unix Wars?
    https://en.wikipedia.org/wiki/Unix_wars

  • 21. 4. 2017 5:00

    klokan

    Tohle asi tady na rootu nevyřešíme, nicméně můj osobní názor:

    ad 1. To je pravda, nicméně je taky pravda, že remote display už dneska asi ztratilo smysl. Dumb terminal napojený na centrální počítač už nikdo nepoužívá, nehledě na to, že slavný remoting s X11 nikdy nebyl žádná velká paráda. Neříkám, že nejsou případy, kdy se to i dneska hodí, ale asi už nestojí za to, aby se je fungl nový návrh snažil podporovat.

    ad 2. To není bug ale featura ;) Základní myšleka Waylandu je "všechno na straně klienta". Takže cílem je přesně to, aby v protokolu žádné grafické primitivy nebyly, aplikace dostane vlastní nezávislý framebuffer a do něj si kreslí, jak chce. Je to v mnoha ohledech skvělý a elegantní návrh, ale logicky má to mínus, že, jak říkáte, holt to nejde streamovat. Pro toho, kdo se bez remotingu neobejde, tu vždycky bude řešení v podobě RDP nebo něčeho podobného.

    ad 3. Nevím, co tím myslíte. Grafické primitivy poskytuje Cairo nebo ta příšernost, kterou používá Qt. Není to součást samostatného Waylandu, protože takový je záměr se svými výhodami a nevýhodami. Mimochodem, moderní verze GTK a Qt grafické primitivy X11 taky nepoužívají už hezkou řádku let.

    ad 4. To jsou otázky, nad kterými se už asi bude diskutovat do konce věků. Je Linux Unix? Měl by se Linux vůbec snažit být Unix? Měl by vývoj v Linuxovém ekosystému brát ohled na Unixy? Anebo třeba naopak? Existuji vůbec "Unixy" jako platforma? Pokud ano, je fragmentace vždycky špatná nebo ne? K tomu se dá říct snad jenom to, že každý, kdo razí nějakou "jasnou", "radikální" odpověď nepřipouštějící protiargumenty (aby bylo jasno, vás z toho nijak neobviňuji) je principiálně demagog, kterého nemá smysl poslouchat. Trochu jako v politice...

  • 21. 4. 2017 12:40

    Lael Ophir

    1. Remote display se samozřejmě dá použít pro terminal server. Ale jako daleko zásadnější vidím vzdálenou administraci. Jinak se totiž dostáváte do nepříjemné situace, kdy lokální stroj můžete spravovat v GUI, ale vzdálený jen přes ssh. Ve Windows jsme to takhle měli naposledy v NT 4, a nebylo to nic moc.

    2. Když nelze použít command stream, tak jste odkázaný na remote frame buffer, a nic lepšího s tím asi nevymyslíte. Takže RDP-like funkcionalita bohužel ne, spíš VNC-like.

    3. To by právě měla být součást Waylandu, protože by se tím výrazně zjednodušila tvorba toolkitů; pak jsou to jen wrappery nad API pro kreslení primitiv a knihovny dialogů. Koukněte se na Windows GDI, OS/2 GPI/PM, Apple Quartz. Všechny tyhle systémy na jedné straně poskytují API pro kreslení, a na druhé straně mají drivery zařízení (obrazovek, tiskáren). Toolkity (pokud je použijete) nemusí řešit jak nakreslit kolečko a vyrastrovat písmenko, natož aby to musely řešit pro X11, Wayland, PDF, PS, OpenGL, DirectFB atd.
    V případě Waylandu vidím problém spíš v tom, že snaha nahradit X11 je pár dekád stará, a zatím se to nikomu nepovedlo. Takže se udělal malý projekt, který řeší jen část problematiky, a to cestou dost drsného kompromisu.

    4. Linux byl od začátku psaný jako Unix-like systém, dokonce podle dokumentace tehdejších klasických Unixů. Podle mého názoru (a rozumím že se ten názor nemusí líbit) to nebyla až tak skvělá volba, a bylo možné od začátku začít věci dělat lépe, bez historické zátěže, byť třeba s inspirací světem Unixů. Ovšem současná situace je taková, že se mezi Unixy výrazně liší správa paměti (Linux má memory overcommit s OOM Killerem, AIX overcommit se SIGDANGER v případě nedostatku paměti, Solaris nemá overcommit), správa servisů (initd, systemd, Upstart, OpenRC, Solaris SFM), přístup ke konfiguraci (různé /proc, případně bez), liší se IPC (například D-Bus je Linux-only), a teď se přidají rozdíly v zobrazování (X11, Wayland).
    Faktem je, že klasické Unixy umírají, a jasně je nahrazuje Linux. Jenže pokud si vzpomínám, tak před lety linuxová komunita nesla silně nelibě absenci standardizace u konkurentů. Faktem je, že dneska na Linuxu formální standardy vymírají (i LSB vypadá mrtvě), a implementace Unixů se funkčně rozcházejí. Nevím jestli je to dobrá zpráva.