ການແກ້ໄຂບັນຫາ Wayland

Kparal Version unspecified Last review: 2017

ໜ້ານີ້ຖືກແປງມາຈາກ Wiki ໂດຍອັດຕະໂນມັດ.

ມັນໄດ້ຖືກປັບປຸງເພື່ອເຜີຍແຜ່ຢູ່ທີ່ນີ້ໃນ Fedora Docs Portal, ແຕ່ຍັງບໍ່ທັນໄດ້ຮັບການກວດສອບຄວາມຖືກຕ້ອງທາງດ້ານເຕັກນິກເທື່ອ.

ມັນອາດຈະ

  • ຮູບແບບບໍ່ຖືກຕ້ອງ

  • ຂາດຮູບພາບ ແລະ ຕາຕະລາງທີ່ບໍ່ສາມາດແປງໄດ້ດີຈາກ mediawiki

  • ຫຼ້າສະໄໝ

  • ຕ້ອງການການປັບປຸງເພີ່ມເຕີມ

ການກວດສອບຄວາມຖືກຕ້ອງທາງດ້ານເຕັກນິກແມ່ນເປັນສິ່ງທີ່ດີຫຼາຍ. ຖ້າທ່ານຕ້ອງການຊ່ວຍ, ໃຫ້ເບິ່ງທີ່ ໄຟລ໌ README ໃນຄັງເກັບຂໍ້ມູນຕົ້ນສະບັບສຳລັບຄຳແນະນຳ.

ຍອມຮັບການດຶງຂໍ້ມູນການປ່ຽນແປງ (Pull requests) ທີ່ https://forge.fedoraproject.org/docs/quick-docs

ເມື່ອທ່ານແກ້ໄຂໜ້ານີ້ແລ້ວ, ໃຫ້ລຶບແຈ້ງການນີ້ອອກ.

Wayland ມີຈຸດປະສົງເພື່ອໃຊ້ແທນ X11 ທີ່ງ່າຍກວ່າ. Wayland ປ່ຽນແປງການອອກແບບສະຖາປັດຕະຍະກຳເດັສທັອບ Linux ຢ່າງຫຼວງຫຼາຍ. ບໍ່ຄືກັບ X11, Wayland ບໍ່ມີເຊີບເວີສະແຕນອາໂລນສະເພາະ. ສິ່ງທີ່ເຄີຍເຮັດລະຫວ່າງແອັບ, ທູນຄິດ (toolkit), Xserver ແລະ ວິນໂດວແມເນເຈີ (window manager) ໃນເມື່ອກ່ອນ ຕອນນີ້ໄດ້ຖືກແບ່ງປັນລະຫວ່າງແອັບ, ທູນຄິດ ແລະ Wayland compositor ເຊິ່ງຈັດການທັງການລວມພາບ, ອິນພຸດ, ການຈັດການວິນໂດວ ແລະ ອື່ນໆ. ຕອນນີ້ແອັບ ແລະ ທູນຄິດຈະຮັບຜິດຊອບໃນການເຣນເດີ (rendering) ແລະ ການຕົກແຕ່ງຂອງຕົນເອງ (client side decorations), ດັ່ງນັ້ນບັນຫາຕ່າງໆມັກຈະເກີດຂຶ້ນລະຫວ່າງທູນຄິດ (ເຊັ່ນ: GTK+) ແລະ Wayland compositor (ເຊັ່ນ: mutter).

ທ່ານສາມາດອ່ານເພີ່ມເຕີມກ່ຽວກັບ Wayland ໄດ້ທີ່ໜ້າວິກິ GNOME Wayland initiative. ແລະ ສາມາດອ່ານເພີ່ມເຕີມກ່ຽວກັບສະຖານະປັດຈຸບັນຂອງຟີເຈີ Wayland ໄດ້ທີ່ໜ້າ Wayland features.

ການລະບຸບັນຫາຂອງ Wayland

ທ່ານກຳລັງໃຊ້ເຊດຊັນ Wayland ຢູ່ບໍ່?

ໃນ GNOME, ຈະມີປຸ່ມຮູບເຟືອງຢູ່ໜ້າຈໍລັອກອິນ ເຊິ່ງສາມາດໃຊ້ເພື່ອເຂົ້າສູ່ເຊດຊັນ Wayland (ເອີ້ນງ່າຍໆວ່າ GNOME, ເປັນຕົວເລືອກເລີ່ມຕົ້ນ), ຫຼື ເຊດຊັນ X11 ແບບເກົ່າ (ເອີ້ນວ່າ GNOME on Xorg). ຖ້າທ່ານໃຊ້ບັນຊີຜູ້ໃຊ້ທີ່ບໍ່ມີລະຫັດຜ່ານ, ທ່ານຈະບໍ່ເຫັນໄອຄອນເຟືອງ, ມັນຈະສະແດງຂຶ້ນ ເມື່ອມີຊ່ອງໃສ່ລະຫັດຜ່ານປະກົດຂຶ້ນເທົ່ານັ້ນ. ໃຊ້ປຸ່ມເຟືອງເພື່ອເລືອກປະເພດເຊດຊັນທີ່ທ່ານຕ້ອງການເຂົ້າໃຊ້. ຖ້າທ່ານຕ້ອງການເລີ່ມເຊດຊັນດ້ວຍວິທີອື່ນ, ໃຫ້ອ່ານ ເຕັກນິກຂັ້ນສູງສຳລັບການທົດລອງໃຊ້ Wayland.

gdm-pick-wayland.png

ໃນ KDE, ມີການຮອງຮັບການເປີດເຊດຊັນ Wayland ແບບຊ້ອນ (nested) ຢູ່ພາຍໃນເຊດຊັນ X11 ຂອງທ່ານ. ທ່ານຈຳເປັນຕ້ອງຕິດຕັ້ງແພັກເກດ kwin-wayland ແລ້ວເຮັດຕາມ ຄຳແນະນຳນີ້. ໃນປັດຈຸບັນຍັງເບິ່ງຄືວ່າບໍ່ມີການຮອງຮັບການໃຊ້ເຊດຊັນ Wayland ແບບເຕັມຮູບແບບມາໃຫ້ເລີຍໃນຕົວ.

ສະພາບແວດລ້ອມເດັສທັອບ (Desktop environments) ອື່ນໆ ຍັງບໍ່ສາມາດໃຊ້ເຊດຊັນ Wayland ໄດ້ໃນຕອນນີ້.

ການກວດສອບປະເພດເຊດຊັນໃນຂະນະທີ່ກຳລັງໃຊ້ງານ

ຖ້າທ່ານຕ້ອງການຢາກຮູ້ວ່າທ່ານກຳລັງໃຊ້ເຊດຊັນປະເພດໃດຢູ່ໃນຕອນນີ້ ໂດຍທີ່ບໍ່ຕ້ອງລັອກເອົາທ໌ແລ້ວລັອກອິນໃໝ່, ທ່ານສາມາດໃຊ້ຫຼາຍວິທີໃນການກວດສອບ:

  • ເຊດຊັນ Wayland ຄວນມີການກຳນົດຄ່າຕົວແປ WAYLAND_DISPLAY, ສ່ວນເຊດຊັນ X11 ຈະບໍ່ມີ:

    $ echo $WAYLAND_DISPLAY
    wayland-0
  • loginctl ສາມາດໃຫ້ຂໍ້ມູນນີ້ແກ່ທ່ານໄດ້. ທຳອິດໃຫ້ຣັນ loginctl ເພື່ອຫາເລກເຊດຊັນຂອງທ່ານ (ເຊິ່ງຄວນເປັນເລກຖ້ວນ ພ້ອມກັບຊື່ຜູ້ໃຊ້ ແລະ seat ທີ່ຖືກກຳນົດ). ຈາກນັ້ນໃຫ້ເບິ່ງທີ່ປະເພດເຊດຊັນ (x11 ຫຼື wayland):

    $ loginctl show-session <ເລກ_ເຊດ_ຊັນ_ຂອງທ່ານ> -p Type
    Type=x11

ຖ້າທ່ານກຳລັງໃຊ້ເຊດຊັນ X11 ບໍ່ແມ່ນ Wayland, ບັນຫາຂອງທ່ານບໍ່ກ່ຽວກັບ Wayland. ມັນເປັນບັກໃນແອັບພລິເຄຊັນນັ້ນໆ ຫຼື ຕົວ X11 ເອງ, ໃຫ້ເບິ່ງທີ່ ວິທີແກ້ໄຂບັນຫາ Xorg.

ແອັບພລິເຄຊັນຂອງທ່ານຣັນໃນ Wayland ໂດຍກົງ (natively) ຫຼື ໃຊ້ XWayland (ຊັ້ນຮອງຮັບ X11)?

ມັນສຳຄັນທີ່ຈະຕ້ອງຮູ້ວ່າແອັບພລິເຄຊັນທີ່ມີບັນຫານັ້ນເປັນແອັບ Wayland ແທ້ໆ ຫຼື ຣັນຜ່ານ XWayland, ເຊິ່ງຊ່ວຍໃຫ້ແອັບລຸ້ນເກົ່າຍັງສາມາດຣັນເທິງ Xorg server ໄດ້ ແຕ່ມາສະແດງຜົນໃນເຊດຊັນ Wayland.

ມີຫຼາຍວິທີໃນການກວດສອບວ່າແອັບພລິເຄຊັນກຳລັງໃຊ້ Wayland ຫຼື XWayland:

  • ເລືອກວິນໂດວໂດຍໃຊ້ xwininfo ຫຼື xprop. ຣັນ:

    $ xwininfo

    ຕົວຊີ້ເມົາສ໌ຂອງທ່ານຄວນປ່ຽນເປັນຮູບກາກະບາດພາຍໃຕ້ X11, ແຕ່ຈະບໍ່ປ່ຽນພາຍໃຕ້ Wayland. ໃຫ້ຄລິກບ່ອນໃດກໍໄດ້ພາຍໃນໜ້າຕ່າງແອັບທີ່ທ່ານຕ້ອງການທົດສອບ. ຖ້າຄຳສັ່ງ xwininfo ສິ້ນສຸດລົງ (ມັນຈະສະແດງຄຸນສົມບັດຂອງໜ້າຕ່າງໃນເທີມິນໍ), ສະແດງວ່າແອັບນັ້ນຣັນພາຍໃຕ້ XWayland. ຖ້າບໍ່ມີຫຍັງເກີດຂຶ້ນ (ຄຳສັ່ງ xwininfo ຍັງຄົງຖ້າໃຫ້ທ່ານເລືອກໜ້າຕ່າງ), ແອັບນັ້ນຣັນພາຍໃຕ້ Wayland (ທ່ານສາມາດປິດຄຳສັ່ງດ້ວຍ Ctrl+C). + ທ່ານຍັງສາມາດໃຊ້ຄຳສັ່ງ xprop ດ້ວຍວິທີດຽວກັນນີ້ໄດ້.

  • ແອັບພລິເຄຊັນ XWayland ຈະຖືກສະແດງຢູ່ໃນຜົນລັດຂອງ xlsclients. ຣັນ:

    $ xlsclients

    ຢ່າງໃດກໍຕາມ, ລາຍຊື່ນີ້ອາດຈະບໍ່ຄົບຖ້ວນສະເໝີໄປ, ບາງແອັບອາດຈະບໍ່ປະກົດຂຶ້ນ.

  • ທ່ານສາມາດລອງຣັນແອັບໂດຍການຍົກເລີກການຕັ້ງຄ່າຕົວແປສະພາບແວດລ້ອມ DISPLAY:

    $ DISPLAY='' ຊື່ຄຳສັ່ງ

    ຖ້າແອັບພລິເຄຊັນຣັນໄດ້ປົກກະຕິ, ສະແດງວ່າມັນໃຊ້ Wayland ໂດຍກົງ.

  • ທ່ານສາມາດຣັນແອັບດ້ວຍຕົວແປສະພາບແວດລ້ອມ WAYLAND_DEBUG=1:

    $ WAYLAND_DEBUG=1 ຊື່ຄຳສັ່ງ

    ຖ້າທ່ານເຫັນຂໍ້ມູນສະແດງອອກມາຢ່າງຫຼວງຫຼາຍ (ເມື່ອທຽບກັບການຣັນປົກກະຕິ), ສະແດງວ່າແອັບນັ້ນໃຊ້ Wayland ໂດຍກົງ.

  • ພາຍໃຕ້ GNOME, ທ່ານສາມາດກວດສອບໄດ້ໂດຍໃຊ້ ເຄື່ອງມື Looking Glass ໃນຕົວ. ກົດ Alt+F2 ແລ້ວຣັນ:

    lg

    ຄລິກທີ່ Windows ຢູ່ມຸມຂວາເທິງຂອງເຄື່ອງມື ແລະ ເລືອກໜ້າຕ່າງທີ່ຕ້ອງການໂດຍການຄລິກໃສ່ຊື່ຂອງມັນ. ຖ້າທ່ານເຫັນ MetaWindowWayland ໃນແຖວທຳອິດ, ສະແດງວ່າແອັບນີ້ຣັນພາຍໃຕ້ Wayland. ຖ້າທ່ານເຫັນ MetaWindowX11 ໃນແຖວທຳອິດ, ສະແດງວ່າແອັບນີ້ຣັນພາຍໃຕ້ X11.

ຖ້າທ່ານພົບວ່າບັນຫາຢູ່ໃນແອັບພລິເຄຊັນ XWayland, ໃຫ້ລອງທົດສອບບັນຫານັ້ນໃນເຊດຊັນ X11 ມາດຕະຖານ. ຖ້າມັນເກີດຂຶ້ນຄືກັນ, ສະແດງວ່າມັນບໍ່ກ່ຽວກັບ Wayland, ແຕ່ເປັນບັກໃນແອັບນັ້ນ ຫຼື ໃນ Xorg server, ເບິ່ງໄດ້ທີ່ https://fedoraproject.org/wiki/How_to_debug_Xorg_problems. ຖ້າບັນຫາເກີດຂຶ້ນສະເພາະໃນ XWayland ແຕ່ບໍ່ເກີດໃນເຊດຊັນ X11, ຄວນລາຍງານບັນຫາໄປທີ່ Xorg server ເພາະ XWayland ຖືກລວມຢູ່ໃນນັ້ນ (ໃນຮູບແບບແພັກເກດຍ່ອຍ xorg-x11-server-Xwayland).

ການລະບຸອົງປະກອບທີ່ມີບັນຫາ

Wayland ເປັນພຽງໂປຣໂຕຄໍ (protocol) ແລະ ບັນຫາກໍບໍ່ຄ່ອຍຈະເກີດຈາກຕົວໂປຣໂຕຄໍເອງ. ສ່ວນຫຼາຍບັນຫາມັກຈະມາຈາກແອັບ, ທູນຄິດຂອງມັນ ຫຼື ໃນຕົວ compositor.

ທູນຄິດທີ່ຮອງຮັບ Wayland ທີ່ສຳຄັນມີດັ່ງນີ້:

  • GTK+ 3 - ແອັບເລີ່ມຕົ້ນໃນສະພາບແວດລ້ອມ GNOME ສ່ວນຫຼາຍແມ່ນໃຊ້ທູນຄິດນີ້. ກະລຸນາຮັບຊາບວ່າແອັບທີ່ໃຊ້ GTK+ 2 ລຸ້ນເກົ່າແມ່ນບໍ່ຮອງຮັບ Wayland.

  • QT 5 - ຫຼາຍແອັບໃນສະພາບແວດລ້ອມ KDE ໃຊ້ທູນຄິດນີ້. ກະລຸນາຮັບຊາບວ່າແອັບທີ່ໃຊ້ QT 4 ລຸ້ນເກົ່າແມ່ນບໍ່ຮອງຮັບ Wayland.

Wayland compositors ທີ່ສຳຄັນມີດັ່ງນີ້:

  • Weston

    • ຕົວຢ່າງການຕິດຕັ້ງອ້າງອີງຂອງ Wayland compositor, ຖືກເບິ່ງແຍງ ໂດຍກົງໂດຍໂຄງການ Wayland

  • Mutter - compositor ໃນ GNOME. ຖ້າທ່ານໃຊ້ GNOME, ມັນຈະໃຊ້ compositor ຕົວນີ້.

  • Kwin - compositor ໃນ KDE. ຖ້າທ່ານໃຊ້ KDE, ມັນຈະໃຊ້ compositor ຕົວນີ້.

ການທົດສອບພາຍໃຕ້ compositors ທີ່ແຕກຕ່າງກັນ

ຖ້າທ່ານພົບບັນຫາກັບແອັບ Wayland, ມັນມີປະໂຫຍດຫຼາຍທີ່ຈະຮູ້ວ່າບັນຫານັ້ນເກີດຂຶ້ນພຽງແຕ່ໃນ compositor ດຽວ (ເຊິ່ງອາດຈະເປັນບັກຂອງ compositor) ຫຼື ເກີດຂຶ້ນໃນຫຼາຍ compositors (ເຊິ່ງອາດຈະເປັນບັກຂອງແອັບ/ທູນຄິດ).

ກະລຸນາຣັນເຊດຊັນຂອງທ່ານດ້ວຍ Weston compositor ອ້າງອີງ ແລະ ລອງທົດສອບບັນຫາຄືນໃໝ່. ທ່ານສາມາດຣັນ Weston ເປັນໜ້າຕ່າງຊ້ອນ (nested window) ຫຼື ເປັນເຊດຊັນເຕັມກໍໄດ້. ທຳອິດ, ໃຫ້ຕິດຕັ້ງແພັກເກດ (ທ່ານສາມາດອ່ານຂໍ້ມູນທີ່ມີປະໂຫຍດ ໄດ້ໃນໜ້າ man page ຂອງມັນ):

$ sudo dnf install weston

ຈາກນັ້ນສ້າງໄຟລ໌ກຳນົດຄ່າ (config file) ເພື່ອລະບຸວ່າທ່ານຕ້ອງການເປີດໃຊ້ການຮອງຮັບ XWayland ໃນເຊດຊັນ Weston ຂອງທ່ານ. ສ້າງໄຟລ໌ ~/.config/weston.ini ດ້ວຍເນື້ອໃນດັ່ງນີ້:

[core] + xwayland=true

ຕອນນີ້ທ່ານສາມາດເລີ່ມ weston ໄດ້ທັງແບບໜ້າຕ່າງຊ້ອນ ຫຼື ແບບເຊດຊັນເຕັມ.

  • ເພື່ອເລີ່ມ Weston ແບບໜ້າຕ່າງຊ້ອນ, ໃຫ້ຣັນຄຳສັ່ງນີ້ຈາກເທີມິນໍ:

    $ weston

    ໜ້າຕ່າງ Weston ຈະເປີດຂຶ້ນ ແລະ ທ່ານຄວນເຫັນໄອຄອນເທີມິນໍຢູ່ມຸມຊ້າຍເທິງ. ໃຊ້ໄອຄອນນັ້ນເພື່ອເປີດເທີມິນໍ ແລະ ຈາກນັ້ນທ່ານສາມາດຣັນແອັບ ຫຼື ຄຳສັ່ງອື່ນໆໂດຍໃຊ້ Weston. ອອກຈາກ compositor ໄດ້ໂດຍການປິດໜ້າຕ່າງ ຫຼື ຢຸດ (kill) ໂປຣເຊສ weston.

  • ເພື່ອເລີ່ມເຊດຊັນ Weston ແບບເຕັມ (ບໍ່ແມ່ນແບບຊ້ອນໃນເຊດຊັນ X11 ຫຼື Wayland ອື່ນ), ໃຫ້ປ່ຽນໄປໃຊ້ VT ທີ່ວ່າງ (Ctrl+Alt+Fx) ແລ້ວຣັນ:

    $ weston-launch

    ທ່ານສາມາດອອກຈາກເຊດຊັນໄດ້ໂດຍການກົດປຸ່ມລັດ Control+Alt+Backspace.

ຖ້າທ່ານສາມາດທົດສອບບັນຫາຄືນໃໝ່ໄດ້ດ້ວຍ Weston, ໃຫ້ແຈ້ງບັນຫາໄປທີ່ແອັບ ຫຼື ທູນຄິດຂອງມັນ (gtk+, qt, ແລະ ອື່ນໆ). ແຕ່ຖ້າບໍ່ດັ່ງນັ້ນ, ໃຫ້ແຈ້ງບັນຫາໄປທີ່ compositor ທີ່ສະພາບແວດລ້ອມຂອງທ່ານໃຊ້ (mutter, kwin, ແລະ ອື່ນໆ). ຖ້າບັນຫາເກີດຂຶ້ນສະເພາະກັບແອັບ XWayland ແຕ່ບໍ່ເກີດກັບແອັບ Wayland ໂດຍກົງ, ໃຫ້ລາຍງານບັກໄປທີ່ Xorg server.

ການລາຍງານບັນຫາ

ການໃຊ້ຊອບແວລຸ້ນຫຼ້າສຸດ

ກ່ອນທີ່ຈະລາຍງານບັກ, ກະລຸນາກວດສອບໃຫ້ແນ່ໃຈວ່າທ່ານໃຊ້ຊອບແວລຸ້ນຫຼ້າສຸດທີ່ມີຢູ່. ກວດສອບວ່າບໍ່ມີການອັບເດດລະບົບທີ່ຄ້າງຢູ່:

$ sudo dnf update

ຖ້າມີການອັບເດດ (ແລະ ການອັບເດດນັ້ນເບິ່ງຄືວ່າກ່ຽວຂ້ອງກັບອົງປະກອບທີ່ທ່ານພົບບັນຫາ), ກະລຸນາອັບເດດລະບົບ ແລະ ກວດສອບເບິ່ງວ່າບັນຫາຍັງຄົງຢູ່ ຫຼື ຖືກແກ້ໄຂແລ້ວ.

ການຊອກຫາລາຍງານບັນຫາທີ່ຄ້າຍຄືກັນ

ເພື່ອຫຼີກເວັ້ນການລາຍງານຊ້ຳຊ້ອນ ແລະ ເສຍເວລາໃນການແກ້ໄຂບັນຫາທີ່ອາດມີຄົນແກ້ໄຂໄປແລ້ວ, ກະລຸນາຄົ້ນຫາຜ່ານລາຍງານທີ່ມີຢູ່ກ່ອນ. ບັນຫາທີ່ພົບເລື້ອຍ ຫຼື ຂໍ້ກັງວົນຕ່າງໆໄດ້ຖືກລະບຸໄວ້ໃນ ບັນຫາທີ່ພົບເລື້ອຍ, ຂໍ້ຮ້ອງຮຽນ ແລະ ການປ່ຽນແປງທີ່ສຳຄັນ. ຖ້າທ່ານບໍ່ເຫັນມັນຢູ່ໃນນັ້ນ, ທ່ານຈຳເປັນຕ້ອງຄົ້ນຫາໃຫ້ເລິກເຊິ່ງກວ່າເກົ່າ. ທ່ານສາມາດຫາບັນຫາທີ່ກ່ຽວກັບ Wayland ໄດ້ຈາກບ່ອນເຫຼົ່ານີ້:

ການແຈ້ງບັກ

ຫຼັງຈາກທີ່ທ່ານລະບຸໄດ້ແລ້ວວ່າຄວນລາຍງານບັນຫາໄປທີ່ອົງປະກອບໃດ ແລະ ບໍ່ພົບລາຍງານທີ່ມີຢູ່ແລ້ວ, ມີຫຼາຍບ່ອນທີ່ທ່ານສາມາດແຈ້ງບັນຫາໄດ້:

  • Red Hat Bugzilla - ແນະນຳສຳລັບບັນຫາທີ່ກ່ຽວກັບ wayland ເອງ, weston compositor, ແອັບທີ່ບໍ່ແມ່ນ GNOME, ໂຄງການ KDE, QT toolkit

  • GNOME Bugzilla - ແນະນຳສຳລັບບັນຫາທີ່ກ່ຽວກັບ mutter compositor, GTK+ toolkit, ແອັບພລິເຄຊັນພາຍໃຕ້ໂຄງການ GNOME (ແອັບເລີ່ມຕົ້ນສ່ວນຫຼາຍໃນ Fedora Workstation)

ເມື່ອລາຍງານບັນຫາ, ກະລຸນາເຮັດໃຫ້ລາຍງານຂອງທ່ານເຊື່ອມໂຍງກັບຕົວຕິດຕາມ (tracker) ຂອງພວກເຮົາ, ເພື່ອໃຫ້ພວກເຮົາເຫັນພາບລວມ ຂອງສິ່ງທີ່ເພພັງໃນຫຼາຍໆອົງປະກອບ. ໃນລາຍງານບັກຂອງທ່ານ, ໃຫ້ຕັ້ງຄ່າ Blocks: WaylandRelated ຫຼື Blocks: KDEWaylandRelated (ທ່ານອາດຈະຕ້ອງເປີດການສະແດງຟີວຂັ້ນສູງເພື່ອໃຫ້ເຫັນຊ່ອງ Blocks:). ນັ້ນຈະເຮັດໃຫ້ມັນໄປບລັອກຕົວຕິດຕາມເຫຼົ່ານີ້ ຂຶ້ນກັບບ່ອນທີ່ທ່ານລາຍງານບັກ:

ຂໍ້ມູນທີ່ຄວນລະບຸໃນລາຍງານບັກຂອງທ່ານ

  1. System journal (ບັນທຶກລະບົບ). ເນື່ອງຈາກບໍ່ມີເຊີບເວີດຽວຄືກັບ X11 server, ຂໍ້ມູນທີ່ສຳຄັນສ່ວນຫຼາຍຈະມາຈາກ Wayland compositor ແລະ ຕົວແອັບເອງ. ຂໍ້ມູນທັງໝົດນັ້ນຄວນຈະຢູ່ໃນ system journal. ທ່ານສາມາດບັນທຶກ journal ທັງໝົດນັບຕັ້ງແຕ່ການບູດຄັ້ງຫຼ້າສຸດໄດ້ດັ່ງນີ້:

    $ journalctl -ab > journal.log

    ທ່ານຍັງສາມາດແກ້ໄຂໄຟລ໌ ແລະ ລຶບຂໍ້ມູນທີ່ເກີດຂຶ້ນກ່ອນໜ້ານັ້ນດົນໆອອກຕາມການເວລາ (timestamps) ເພື່ອໃຫ້ log ເບິ່ງງ່າຍ ແລະ ສັ້ນກະທັດຮັດຂຶ້ນ. * ຖ້າລະບົບຂອງທ່ານຄ້າງ ຫຼື ບໍ່ຕອບສະໜອງຈົນຕ້ອງບູດເຄື່ອງໃໝ່, ທ່ານສາມາດເບິ່ງ journal ຈາກການບູດກ່ອນໜ້ານັ້ນ ໂດຍໃຊ້ຄຳສັ່ງ journalctl -a -b -1 ແທນ.

  2. Wayland debug output. ຖ້າທ່ານສາມາດທົດສອບບັນຫາຄືນໃໝ່ໄດ້, ກະລຸນາຣັນແອັບທີ່ມີບັນຫາດັ່ງນີ້:

    $ WAYLAND_DEBUG=1 ຊື່ຄຳສັ່ງ |& tee debug.out

    ທ່ານຈະເຫັນຂໍ້ມູນສະແດງອອກມາຢ່າງຫຼວງຫຼາຍ. ມັນຈະລວມເຖິງການສື່ສານທັງໝົດລະຫວ່າງແອັບ ແລະ compositor.

  3. ຂໍ້ມູນວ່າບັນຫາດຽວກັນນັ້ນເກີດຂຶ້ນຫຼືບໍ່ເມື່ອທ່ານຣັນແອັບໂດຍໃຊ້ XWayland ແທນ Wayland. ສຳລັບແອັບ GTK+ 3, ທ່ານສາມາດບັງຄັບໃຫ້ແອັບ Wayland ຣັນໂດຍໃຊ້ XWayland ໄດ້ດັ່ງນີ້:

    $ GDK_BACKEND=x11 ຊື່ຄຳສັ່ງ

    ໃນທາງກັບກັນ, ທ່ານຍັງສາມາດບັງຄັບໃຫ້ແອັບ XWayland ຣັນໂດຍໃຊ້ Wayland ໄດ້ (ໃນກໍລະນີທີ່ມັນມີການຮອງຮັບແບບທົດລອງ):

    $ GDK_BACKEND=wayland ຊື່ຄຳສັ່ງ

    ແອັບ QT 5 ຣັນດ້ວຍ XWayland ໂດຍເລີ່ມຕົ້ນ. ທ່ານສາມາດບັງຄັບໃຫ້ໃຊ້ Wayland backend ໄດ້:

    $ QT_QPA_PLATFORM=wayland-egl ຊື່ຄຳສັ່ງ

    ທັງໝົດນີ້ໃຊ້ໄດ້ກັບສະເພາະແອັບ GTK+ 3 ແລະ QT 5 ເທົ່ານັ້ນ.

  4. ລາຍລະອຽດຮາດແວ (Hardware description) ແມ່ນມີປະໂຫຍດສຳລັບບາງບັກທີ່ກ່ຽວກັບຮາດແວ:

    $ lspci -nn > lspci.out
  5. ລຸ້ນຂອງແພັກເກດ. ທ່ານສາມາດເກັບລວບລວມລາຍຊື່ ແລະ ລຸ້ນຂອງແພັກເກດທັງໝົດທີ່ຕິດຕັ້ງໄວ້ໂດຍໃຊ້:

    $ rpm -qa | sort > packages.out
  6. ຂໍ້ມູນທົ່ວໄປ ທີ່ທຸກໆລາຍງານບັກຄວນມີ.

ການດີບັກ gnome-shell

ຖ້າ gnome-shell ຄ້າງ ແລະ ບໍ່ຕອບສະໜອງ, ມັນຈະເປັນປະໂຫຍດຫຼາຍຖ້າໄດ້ backtrace ຈາກໂປຣເຊສຂອງມັນ ມາແນບໃສ່ໃນລາຍງານ. ຖ້າສິ່ງນີ້ເກີດຂຶ້ນ, ໃຫ້ປ່ຽນໄປໃຊ້ VT ອື່ນຖ້າເປັນໄປໄດ້ (Ctrl+Alt+F3 ຫາ F7), ຫຼື ລັອກອິນຜ່ານ ssh. ທຳອິດໃຫ້ຕິດຕັ້ງ debug symbols:

$ sudo dnf debuginfo-install `rpm -q gnome-shell`

ຈາກນັ້ນແນບ gdb debugger ໃສ່ໂປຣເຊສ gnome-shell ຂອງທ່ານ:

$ gdb -p `pgrep -U $(id -un) -x gnome-shell`
...
(gdb) set logging on
(gdb) thread apply all backtrace full
... ກົດ Enter ຈົນກວ່າ backtrace ທັງໝົດຈະສະແດງອອກມາ ...
(gdb) quit

ທ່ານຈະໄດ້ backtrace ທີ່ບັນທຶກໄວ້ໃນໄຟລ໌ gdb.txt.

ການດີບັກ mutter

ທ່ານສາມາດດີບັກ mutter (ທີ່ໃຊ້ໃນ gnome-shell) ໄດ້ໂດຍການກຳນົດ ຕົວແປສະພາບແວດລ້ອມ ຂອງມັນ. ສິ່ງເຫຼົ່ານີ້ຕ້ອງຖືກກຳນົດກ່ອນທີ່ຈະຣັນ gnome-shell, ດັ່ງນັ້ນຖ້າທ່ານຕ້ອງການລັອກອິນເຂົ້າ GNOME ຈາກ GDM, ທ່ານຈຳເປັນຕ້ອງສ້າງ wrapper script ທີ່ຖືກຮຽກໃຊ້ຈາກໄຟລ໌ເດັສທັອບໃນ /usr/share/wayland-sessions.

FIXME: ການເອົາ wrapper script ແລະ ໄຟລ໌ເດັສທັອບມາໄວ້ບ່ອນນີ້ຈະເປັນປະໂຫຍດຫຼາຍ.

ບັນຫາທີ່ພົບເລື້ອຍ, ຂໍ້ຮ້ອງຮຽນ ແລະ ການປ່ຽນແປງທີ່ສຳຄັນ

ໃນບ່ອນນີ້ພວກເຮົາຈະລະບຸບັນຫາສຳຄັນໆທີ່ຮູ້ກັນວ່າເພພັງ, ຍັງບໍ່ທັນໄດ້ຕິດຕັ້ງ, ຫຼື ຕັ້ງໃຈໃຫ້ເຮັດວຽກແຕກຕ່າງຈາກແອັບ X11 ປົກກະຕິ. ນອກຈາກນີ້ ກະລຸນາເບິ່ງທີ່ https://fedoraproject.org/wiki/Wayland_features ເຊິ່ງລວມເອົາຟີເຈີທັງໝົດທີ່ຍັງຂາດຫາຍ ຫຼື ກຳລັງພັດທະນາຢູ່ ພ້ອມລາຍລະອຽດ.

ເພື່ອເບິ່ງບັນຫາທັງໝົດທີ່ຮູ້ແລ້ວ, ໃຫ້ເບິ່ງລາຍງານໃນ Bugzilla ຕາມທີ່ໄດ້ລະບຸໄວ້ໃນ ການຊອກຫາລາຍງານບັນຫາທີ່ຄ້າຍຄືກັນ.

ແອັບພລິເຄຊັນແບບກຣາຟິກບໍ່ສາມາດເປີດໃຊ້ດ້ວຍສິດ root ຈາກເທີມິນໍໄດ້

ມັນບໍ່ສາມາດເລີ່ມແອັບພລິເຄຊັນແບບກຣາຟິກພາຍໃຕ້ບັນຊີ root ຈາກເທີມິນໍໂດຍໃຊ້ su ຫຼື sudo ໄດ້. ແອັບທີ່ໃຊ້ polkit ເພື່ອຂໍສິດຜູ້ເບິ່ງແຍງລະບົບສະເພາະບາງການເຮັດວຽກ ແລະ ເມື່ອຈຳເປັນເທົ່ານັ້ນ ຈະບໍ່ໄດ້ຮັບຜົນກະທົບ (ເພາະມັນບໍ່ໄດ້ເລີ່ມເປັນ root ແຕ່ທຳອິດ). ການປຶກສາຫາລືກ່ຽວກັບວິທີການທີ່ດີທີ່ສຸດ ຍັງຄົງດຳເນີນຢູ່, ເບິ່ງໄດ້ທີ່ https://bugzilla.redhat.com/show_bug.cgi?id=1274451 ແລະ ການສົນທະນາ "On running gui applications as root" ໃນ fedora-devel mailing list.

ເຄື່ອງມື X11 ທີ່ເປັນທີ່ຮູ້ຈັກຫຼາຍຢ່າງແມ່ນໃຊ້ການບໍ່ໄດ້

ຜູ້ໃຊ້ຂັ້ນສູງອາດຈະຄຸ້ນເຄີຍກັບເຄື່ອງມືທີ່ກ່ຽວຂ້ອງກັບ X11 ຫຼາຍຢ່າງ ເຊັ່ນ xkill, xrandr, xdotool, xsel. ເຄື່ອງມືເຫຼົ່ານີ້ຈະບໍ່ເຮັດວຽກພາຍໃຕ້ເຊດຊັນ Wayland ຫຼື ອາດຈະເຮັດວຽກໄດ້ສະເພາະກັບແອັບ XWayland ເທົ່ານັ້ນ. ບາງເຄື່ອງມືອາດມີຕົວປ່ຽນແທນທີ່ຊ່ວຍໃຫ້ເຮັດວຽກທີ່ຄ້າຍຄືກັນໄດ້.

FIXME: ເພີ່ມຕົວປ່ຽນແທນທີ່ຮອງຮັບ Wayland ສຳລັບເຄື່ອງມື X11 ທີ່ຍອດນິຍົມ

ເກມ ແລະ ແອັບອື່ນໆ ບໍ່ສາມາດປ່ຽນຄວາມລະອຽດໜ້າຈໍໄດ້

ແອັບພລິເຄຊັນບໍ່ສາມາດປ່ຽນຄວາມລະອຽດໜ້າຈໍໄດ້ອີກຕໍ່ໄປ. ປົກກະຕິແລ້ວເກມມັກຈະເຮັດແບບນີ້ເພື່ອເພີ່ມປະສິດທິພາບ. ເກມທີ່ຮອງຮັບ Wayland ຈະໃຊ້ວິທີອື່ນ - ຄືການປັບຂະໜາດ (scaling) ຜົນສະແດງຂອງມັນ. ແຕ່ສຳລັບເກມ X11 (ທີ່ຣັນຜ່ານ XWayland), ວິທີແກ້ໄຂນີ້ແມ່ນຍັງບໍ່ມີໃຫ້ໃຊ້. ສິ່ງນີ້ສົ່ງຜົນໃຫ້ເກີດພຶດຕິກຳທີ່ແຕກຕ່າງກັນ ຂຶ້ນກັບວ່າເກມນັ້ນຖືກຂຽນມາແນວໃດ - ເກມອາດຈະຖືກບັງຄັບໃຫ້ໃຊ້ຄວາມລະອຽດດຽວກັບເດັສທັອບ, ຫຼື ສະແດງເປັນພາບນ້ອຍໆຢູ່ກາງຈໍພ້ອມມີຂອບດຳອ້ອມຮອບ, ຫຼື ຄ້າງຕອນເລີ່ມຕົ້ນ, ຫຼື ຢ່າງອື່ນ. ເບິ່ງໄດ້ທີ່ https://bugzilla.redhat.com/show_bug.cgi?id=1289714 [ບັກ 1289714].

ສຳລັບບາງເກມ, ວິທີແກ້ໄຂຊົ່ວຄາວທີ່ເປັນໄປໄດ້ຄືການຕັ້ງຄ່າຄວາມລະອຽດໜ້າຈໍດ້ວຍຕົນເອງກ່ອນທີ່ຈະຣັນເກມ, ຖ້າທ່ານຈຳເປັນຕ້ອງເຮັດແທ້ໆ. ແຕ່ຢ່າງໃດກໍຕາມ ມັນອາດຈະບໍ່ໄດ້ຜົນສະເໝີໄປ.

ການຖ່າຍພາບໜ້າຈໍບໍ່ສາມາດໃຊ້ໄດ້ກັບແອັບທົ່ວໄປ

ໜຶ່ງໃນຟີເຈີຂອງ Wayland ຄືການອອກແບບຄວາມປອດໄພ ເຊິ່ງຊ່ວຍປົກປ້ອງຜູ້ໃຊ້ຈາກແອັບທີ່ບໍ່ຫວັງດີ. ແອັບຈະບໍ່ສາມາດເຫັນທຸກຢ່າງເທິງໜ້າຈໍ ແລະ ສອດແນມທ່ານໄດ້ອີກຕໍ່ໄປ. ແຕ່ນັ້ນກໍໝາຍຄວາມວ່າທ່ານບໍ່ສາມາດຣັນແອັບທົ່ວໄປ (ເຊັ່ນ https://src.fedoraproject.org/rpms/shutter ຫຼື https://src.fedoraproject.org/rpms/gtk-recordmydesktop) ເພື່ອຖ່າຍພາບໜ້າຈໍ ຫຼື ບັນທຶກວິດີໂອໜ້າຈໍເດັສທັອບຂອງທ່ານໄດ້ - ມັນຈະເຫັນສະເພາະໜ້າຕ່າງຂອງມັນເອງເທົ່ານັ້ນ (ຫຼື ອາດຈະຄ້າງໄປເລີຍ). ຕ້ອງໃຊ້ແອັບຂອງລະບົບ (ທີ່ໄດ້ຮັບຄວາມເຊື່ອຖື) ເພື່ອເຮັດວຽກເຫຼົ່ານີ້.

ໃນ GNOME, ທ່ານສາມາດໃຊ້ເຄື່ອງມື Screenshot (ມີໃຫ້ໃຊ້ໃນ overview ຫຼື ກົດປຸ່ມລັດ Printscreen ຫຼື ໃຊ້ຄຳສັ່ງ gnome-screenshot) ເພື່ອຖ່າຍພາບໜ້າຈໍທັງໝົດ ຫຼື ສະເພາະໜ້າຕ່າງໃດໜຶ່ງ. ທ່ານສາມາດກົດປຸ່ມລັດ Ctrl+Alt+Shift+R ເພື່ອເລີ່ມບັນທຶກວິດີໂອໜ້າຈໍທັງໝົດ (ຢຸດໄດ້ໂດຍການກົດປຸ່ມລັດເດີມຊ້ຳອີກ, ເຊິ່ງຈະມີຕົວບົ່ງບອກຢູ່ມຸມຂວາເທິງ, ຫຼື ມັນຈະຢຸດອັດຕະໂນມັດຫຼັງຈາກ 30 ວິນາທີ) ແລະ ສາມາດຫາວິດີໂອໄດ້ໃນ ~/Videos. ສຳລັບການບັນທຶກວິດີໂອໜ້າຈໍ, ທ່ານຍັງສາມາດໃຊ້ສ່ວນຂະຫຍາຍ https://extensions.gnome.org/extension/690/easyscreencast/ [EasyScreenCast] ຂອງ gnome-shell ໄດ້.

ຕົວຊີ້ເມົາສ໌ມີການແລັກ ຫຼື ກະຕຸກເມື່ອເຄື່ອງເຮັດວຽກໜັກ

ຖ້າຄອມພິວເຕີຂອງທ່ານເຮັດວຽກໜັກ, ການເຄື່ອນໄຫວຂອງຕົວຊີ້ເມົາສ໌ອາດຈະບໍ່ລື່ນໄຫຼ, ແຕ່ຈະເລີ່ມມີການແລັກ (ຄ້າງຢູ່ບ່ອນເກົ່າບຶດໜຶ່ງ ແລ້ວກໍໂດດໄປບ່ອນໃໝ່ທັນທີ). ສິ່ງນີ້ຈະເຫັນໄດ້ຊັດເຈນໃນລະບົບທີ່ຊ້າ ຫຼື ລະບົບທີ່ມີ CPU core ໜ້ອຍ. ເບິ່ງໄດ້ທີ່ https://bugzilla.gnome.org/show_bug.cgi?id=745032 [ບັກ 745032].

ບາງຄັ້ງຕົວອັກສອນທີ່ພິມຜ່ານຄີບອດຈະຖືກພິມຊ້ຳຢ່າງໄວວາ

ມີບັນຫາທີ່ພົບໄດ້ຍາກ ເມື່ອທ່ານກົດປຸ່ມເພື່ອພິມຕົວອັກສອນ ແລ້ວທ່ານຈະເຫັນຕົວອັກສອນນັ້ນຖືກພິມອອກມາຫຼາຍຕົວຊ້ຳກັນ. ເບິ່ງໄດ້ທີ່ https://bugzilla.gnome.org/show_bug.cgi?id=757942 ແລະ https://bugzilla.gnome.org/show_bug.cgi?id=777693.

ບໍ່ແມ່ນທຸກປຸ່ມທີ່ຈະສາມາດສົ່ງໄປຫາຣີໂມດເດັສທັອບ ຫຼື ວໍຊົວແມຊີນ (VM) ໄດ້

ບາງແອັບພລິເຄຊັນຈະສົ່ງຂໍ້ມູນອິນພຸດທັງໝົດ, ລວມເຖິງປຸ່ມລັດສະເພາະຂອງລະບົບ, ໄປຫາລະບົບປາຍທາງ. ສ່ວນຫຼາຍຈະເປັນແອັບຣີໂມດເດັສທັອບເຊັ່ນ vncviewer ຫຼື ຕົວຈັດການ VM ເຊັ່ນ virt-manager ຫຼື boxes. ພາຍໃຕ້ Wayland, ປຸ່ມລັດບາງຢ່າງບໍ່ສາມາດຖືກດັກຈັບໄດ້, ດັ່ງນັ້ນພວກມັນຈຶ່ງຖືກໃຊ້ໃນລະບົບໂຮສ (host) ແທນທີ່ຈະເປັນລະບົບປາຍທາງ/ເກສ (guest). ເບິ່ງໄດ້ທີ່ https://bugzilla.redhat.com/show_bug.cgi?id=1285770 [ບັກ 1285770].