כן למרות שאני מאוד לא אוהב את המעבר למערכת המסורבלת בשם wayland, שחסר בה יותר מדי פיטצ'רים או יכולת עבודה כמו שהייתה לנו עם X ואני מדבר פה על x11 או xorg ולא השם החדש של טוויטר.
גם אני מנסה לעבוד איתה כי אין לי ברירה אחרת.
אני גם מבין מצויין שהסיבות העיקריות של מעבר לwayland מ X ישאירו אותנו ללא חופש וללא ביטחון. אחת הסיבות העיקריות לעבור מxorg לwayland היא ההבטחה למימוש אמצעי אבטחה טובים יותר , תמורת המחיר הקטן של החופש להמשיך להשתמש באפשרויות הקיימות, שלא ממושו או שלא ימומשו בכלים חיצונים, "כי לא צריך" כי מישהוא אחר כבר ישכתב את הקוד ועוד כל מני תירוצים.
ובדיוק כמו שרצחו את המימוש שהיה ל XDCMP שאיפשר לנו להתחבר בחלק ממנהלי הלוגין, לאט לאט אבל בטוח, יהרגו לנו את האפשרות להעביר חלונות וקול דרך הרשת או להקליט חלונות כמו שצריך, ובגדול לעשות את כל הדברים המובנים מעליו בשלושים השנה האחרונות , תמורות האפשרות להשתמש במערכת חדשה, שהיא בפיתוח כרגע בשונה מX שאין שם כמעט שום פיטצ'רים חדשים שנכנסים למערכת.
אז הנה יש לי צורך די פשוט , לשתף תוכן ולהתחבר אליו מרחוק, נו , אתם מכירים את זה בטוח , מה שהיינו פשוט עושים או עם ssh -X או במקרה הגרוע ביותר להפעיל vnc ולצפות בתוכן.
נניח עבור chatty בשביל להעביר את התוכן ע"ג רשת אני צריך להפעיל :
GDK_BACKEND=x11 chatty
המנוע במקרה הזה או GDK , אבל אם משתמשים במשהוא צריך לחפש איך להבטיח שזה יעבוד.
יש לנו SDL בדרך ? יופי הפרטמר הוא
SDL_VIDEODRIVER=x11, סביבות אחרות ? לכו תחשפו מה יעבוד הפתרון שמצאתי היה פשוט לעבור מ wayland בחזרה ל xorg במספר תוכנות.וכמובן לדעת לבחור תמיד במנוע הנכון עבור על תוכנה, נכון שכיף לנו להשתמש ב wayland ?נכון ? זה פתרון מדהים שדברים פשוט יעבדו.
בגדול בשביל להעביר מידע בין wayland ל wayland , המציאו את הכלי הנחמד שנקרא waypipe, שהוא עשה קולות של עובד עד שעשה לי ארטיפקטים הזויים כשהייתי צריך להעביר תוכן של תוכנה המציגה את מבנה תנועת גופים תלת מימדי (אם אני מבין נכון במקרה ההוא הרינדור היה על גבי השרת בעוד רק הפיקסל באפר עבר אל הלקוח). כאשר זה היה X מול X , זה עבד בצורה סבירה.
אבל מה קורה אם למשל אני רוצה להשתמש בפריסת טקסט שהיא לא אנגלית אמריקאית, נו מה שפשוט עובד ב X ? ניקח את אחת מאפליקציות ה VNC המיועדות ל wayland ונקבל את היופי הבא:
ERROR: ../src/keyboard.c: 400: Failed to look up keyboard symbol: hebrew_shin ERROR: ../src/keyboard.c: 400: Failed to look up keyboard symbol: hebrew_shin ERROR: ../src/keyboard.c: 400: Failed to look up keyboard symbol: hebrew_lamed ERROR: ../src/keyboard.c: 400: Failed to look up keyboard symbol: hebrew_waw ERROR: ../src/keyboard.c: 400: Failed to look up keyboard symbol: hebrew_lamed ERROR: ../src/keyboard.c: 400: Failed to look up keyboard symbol: hebrew_waw ERROR: ../src/keyboard.c: 400: Failed to look up keyboard symbol: hebrew_finalmem ERROR: ../src/keyboard.c: 400: Failed to look up keyboard symbol: hebrew_finalmem ERROR: ../src/keyboard.c: 400: Failed to look up keyboard symbol: hebrew_ayin ERROR: ../src/keyboard.c: 400: Failed to look up keyboard symbol: hebrew_ayin ERROR: ../src/keyboard.c: 400: Failed to look up keyboard symbol: hebrew_waw ERROR: ../src/keyboard.c: 400: Failed to look up keyboard symbol: hebrew_lamed ERROR: ../src/keyboard.c: 400: Failed to look up keyboard symbol: hebrew_waw ERROR: ../src/keyboard.c: 400: Failed to look up keyboard symbol: hebrew_lamed ERROR: ../src/keyboard.c: 400: Failed to look up keyboard symbol: hebrew_finalmem ERROR: ../src/keyboard.c: 400: Failed to look up keyboard symbol: hebrew_finalmemאני חייב להודות שזה די נחמד לראות שגיאות כאלו, כי לפחות אנחנו יודעים שיש לנו בcharacter encoding, הדרך לפתור את זה היא להשתמש ב localectl list-x11-keymap-layouts בשביל לקבל את רשימת הקידודים הקיימת במערכת, שם לבחור את מה שהכי מתאים לנו ולהפעיל את wayvnc עם הקידוד הנבחר. לפחות אנחנו עדיין משתמשים בדברם המוכרים לנו מסביבת X בשביל לזהות את התוכן הנדרש.
במקרה שלי זה היה
wayvnc localhost 5901 -k ilופתרנו את הבעיה של אי ההתאמה של קידוד המקלדת.