Wayland + ArchLinux + KDE Plasma

Wayland + ArchLinux + KDE Plasma

با Waylandشاید آشنا باشید و حتی شاید سعی کرده باشید ازش استفاده کنید و تجربش کنید ولی متاسفانه گرافیک Nvidia شده پاشنه آشیل کار و نشده تجربش کنید. در این پست میخوام روند پیکربندی Wayland روی Arch Linux + KDE Plasma رو شرح بدم همچنین این پست یادگاری و یادداشتی باشه برای خودم و بعد. چون قاعدتا چیزیو حفظ نمیکنم. با اکو کردن متغیر XDG_SESSION_TYPE میشه پرتوکل سشن دسکتاپ فعلی رو فهمید.

echo $XDG_SESSION_TYPE

قاعدتا وقتی هیچ کاری نکردید پیشفرض x11 برمیگردونه ولی اینو داشته باشید آخر همه چیز برای اطمینان میزنیم و wayland زیبا بر ترمینال نقش می بندد. خب شروع کار از اینجاست:

1- Update pacman repositories

اول ریپوهارو با

sudo pacman -Syy

رفرش کنید تا موقع نصب پیش نیاز ها به مشکلی برنخوریم.

2- Install drivers dependencies

از نصب درایور های آزاد Nvidia و اینتل و xorg-server مطمئن بشید. ( اگه ریپوی غیر رسمی archlinuxcn رو داشته باشید مزیت محسوب میشه هم از بیلد کردن پکیج های معروف aur رها میشید هم سریع تر موقع آپگرید پکیج ها کار پیش میره)

sudo pacman -S —needed xf86-input-intel xf86-input-nouveau nvidia nvidia-lts nvidia-prime nvidia-utils xorg-server

3- Install wayland package

از نصب بیس پکیج wayland هم مطمئن بشید:

sudo pacman -Qi wayland

اگه نصب نیست:

sudo pacman -S --needed wayland

4- Install sddm-git

با هر aur manager که دارید حتما آخرین ورژن گیت sddm رو نصب کنید چون هنوز اون نسخه ای که توی ریپوی extra هست از wayland پشتیبانی نمیکنه. من همیشه از trizen استفاده میکنم.

trizen -S sddm-git —noedit —noconfirm

5- Wayland dependencies

این پیشنیاز های مختلف رو برای جاهای مختلف میخوایم که هرکدوم پشتیبانی از wayland رو در قسمتی برایمان به ارمغان می آورند:

sudo pacman -S --needed xorg-xwayland xorg-xlsclients qt5-wayland glfw-wayland

6- Install KDE Plasma

اگه هنوز اصل کار یعنی پلاسما و برنامه هاش نصب نیست نصبشون کنید:

sudo pacman -S --needed plasma kde-applications

همچنین راه اندازی که از sddm، انتخاب میکنید که سشن با wayland استارت بشه رو مخصوص پلاسما نصب کنید:

sudo pacman -S --needed plasma-wayland-session

7- egl-wayland for NVidia

باید پکیج egl-wayland رو نصب کنیم وگرنه چون گرافیکمون nvidia است به مشکل بر میخوریم:

sudo pacman -S egl-wayland

8- Enable sddm

وقتشه sddm رو زنده کنیم:

sudo systemctl enable sddm

9- Change sddm theme

از اونجایی که ظاهر اولیه sddm یه چیز زمخت و زشته تم دیفالت plasma رو میزنیم روش: با هر ادیتوری که دوست دارید ولی نانو دم دست تره نیازه که توی کانفیگش تم رو اضافه کنیم. ابتدا با نانو داخل فایل شیرجه زده و دنبال [theme] میگردیم

sudo nano /usr/lib/sddm/sddm.conf.d/default.conf

و به این شکل breeze رو اضافه می نماییم.

[Theme]

# current theme name

Current=breeze

خب صبر کنید. اگه ریبوت کنید هنوز نمیتونید سشن رو با wayland استارت کنید. با من قدم به قدم پیش بیاید.

10- Backup environment

خب اول از /etc/environment یه بکاپ داشته باشید که اگه مشکلی پیش اومد ریپلیس کنید.

sudo cp /etc/environment ~/environment.bak

11- Edit /etc/environment

از اونجایی که از برنامه هایی استفاده میکنیم که نیاز به qt دارن و همچنین مطابق با اینکه کارت گرافیکمون nvidia است، نیازه یه سری مقادیر اضافه کنیم تا wayland درست کار کنه. با نانو یا هر ادیتوری فایل environment رو باز کنید:

sudo nano /etc/environment

همه شو پاک کنید دقیقا محتویات زیر رو داخلش قرار بدید:

QT_QPA_PLATFORMTHEME="wayland;xcb" GBM_BACKEND=nvidia-drm __GLX_VENDOR_LIBRARY_NAME=nvidia ENABLE_VKBASALT=1 LIBVA_DRIVER_NAME=nvidia WLR_NO_HARDWARE_CURSORS=1

12- Edit mkinitcpio

الان نیازه یه سری مقادیر به کانفیگ فایل mkinitcpio اضافه کنیم و مجدد init ramdisk رو بیلد کنیم. با نانو یا هر ادیتوری :

sudo nano /etc/mkinitcpio.conf

سپس داخل MODULES=() به این شکل این مقادیر رو اضافه نمایید:

MODULES=(nvidia nvidia_modeset nvidia_uvm nvidia_drm)

13- Rebuild init ramdisk

نیازه که init ramdisk ها ( initramfs و ... ) ری بیلد بشن:

sudo mkinitcpio -P

14- Config grub

وقتشه که از grub، دایرکت رندرینگ رو برای کار کردن کرنل با nvidia و wayland فعال کنیم: کانفیگ گراب رو با نانو باز می نماییم

sudo nano /etc/default/grub

سپس دنبال GRUB_CMDLINE_LINUX_DEFAULT="" میگردیم و داخل دابل کوتیشن مقدار زیر را قرار میدهیم و سیو میکنیم

GRUB_CMDLINE_LINUX_DEFAULT="nvidia-drm.modeset=1"

15- Update grub

وقتشه که گراب update بشه.

sudo grub-mkconfig -o /boot/grub/grub.cfg

16- Finish!

به پایان آمد این کانفیگ اما همچنان kde باقیست. ریبوت کنید و از توزیع آرچ بیستون با دسکتاپ فرا بشری KDE Plasma همراه با wayland لذت ببرید. کافیه از sddm، سشن wayland رو انتخاب نمایید و لاگین کنید. برگردید مرحله مقدمه و قبل 1 اگه درست انجام داده باشید الان بعد اکو کردن

echo $XDG_SESSION_TYPE

باید wayland برگردونه.

فالو کردن گیتهاب و کانال تلگرام یادتون نره 😊