نمایشگر دوم در فدورا ۳۲

07-خرداد     توسط ali     بازدیدها 210
 
یکی از بهترین کارها واسه یه برنامه‌نویس موفق اینه که مانیتور دوم روی سیستم‌اش داشته باشه. خب این کار توی ویندوز بخاطر قبضه بودن بازار درایورها توسط مایکروسافت و خب کلوزسورس بودن nvidia که من ازش گرافیک گرفتم‌، حداقل روی لینوکس کار خیلی سختیه. اما خب ما مثلا برنامه‌نویس هستیم و یه راه‌هایی هست برای انجامش.
راستی من الان یچیزی زدم که باعث می‌شه نتونم ۱۰۰ درصد از تمرکزم استفاده کنم، پس اگر غلط نگاری/املایی/گرامری دیدید، ببخشید!

اولین نکته اینه که ممکنه مانیتور روشن باشه، اتصالات برقرار باشن اما تصویری دیده نشه، خب منطقیه. چون شما درایور nvidia رو نصب کردید. یه راهش اینه که قید گرافیک قدرتمندتونو بزنید و ازچیپ آن‌بورد استفاده کنید یا کاری که من کردم رو انجام بدید. من برای حل مشکل، تنظیم کردم گرافیک nvidia بای‌دیفالت استفاده بشه، حمله درستی نیست اما بهرحال فارسی رو واسه تکنولوژی استفاده کردن کمی سخته. خب اول بنظرم گرافیک nvidia رو نصب کنید (حال ندارمیه پست جدا بذارم واسه نصب گرافیک):
$  sudo dnf update

$  sudo dnf install https://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm 
$  sudo dnf install https://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm

-- For recent GeForce/Quadro/Tesla execute:
$  sudo dnf install akmod-nvidia
-- For Legacy GeForce 400/500 execute:
$  sudo dnf install xorg-x11-drv-nvidia-390xx akmod-nvidia-390xx
-- For Legacy GeForce 8/9/200/300 execute:
$  sudo dnf install xorg-x11-drv-nvidia-340xx akmod-nvidia-340xx

$  sudo reboot
حالا که نصب گرافیک تموم شد و ریبوت کردید می‌بینید که دیگه مانیتور دوم شناسایی نمی‌شه. حالا باید کاری کنیم nvidia گرافیک پرایمری‌مون بشه، یا همچین چیزی:
 $  sudo cp -p /usr/share/X11/xorg.conf.d/nvidia.conf /etc/X11/xorg.conf.d/nvidia.conf
بحالا همون فایل nvidi.conf رو باز می‌کنیم و عبارت Option "PrimaryGPU" "yes" رو توی سکشن OutputClass بهش اضافه می‌کنیم تا چیزی شبیه به این بشه:
Section "OutputClass"
        Identifier "nvidia"
        MatchDriver "nvidia-drm"
        Driver "nvidia"
        Option "AllowEmptyInitialConfiguration"
        Option "SLI" "Auto"
        Option "BaseMosaic" "on"
        Option "PrimaryGPU" "yes"
EndSection

Section "ServerLayout"
        Identifier "layout"
        Option "AllowNVIDIAGPUScreens"
EndSection
ریبوت کنید و بهتون تبریک می‌گم مانیتور دوم شما شناخته شد. اما ممکنه همین الان یه مشکل دیگه پیش اومده باشه، مثل اتفاقی که توی کیس من پیش اومد، بهش می‌گن ScreenTearing که باعث می‌شه توی رزولوشن خیلی بالا و سرعت بالا، مثلا موقع اسکرول کردن یه تصویر ۱۰۸۰، تصویر یه مقداری شکسته شکسته بشه. یچیزی شبیه به تصویر زیر که از این مقاله توی ویکی‌پدیا برداشتم:
خب قطعا چنین چیزی من بی‌اعصاب رو از کوره به در می‌کرد، در واقع nvidia x server با یه قابلیت میاد به نام Force Full Composition Pipeline که اینجا به درد من خورد، اول با دسترسی sudo بازش کردم ستینگ گرافیکم رو، توی قسمت X Server Display Config مونیتورم رو انتخاب کردم، اون پایین زدم روی Advanced و تیک Force full... رو زدم و هورا!
دلایل زیادی واسه این اتفاق حال به‌هم‌زن Screen Tearing گفته می‌شه، یکی‌اش، که بنظر من منطقی‌ترین هست، ناهماهنگی Refresh Rate مانیتور پرایمریو سکندری هست، بهرحال توی لپ‌تاپ من کهگیمینگ محسوب می‌شه ریفرش ریت بالاتری نسبت به مانیتور ایرانی-چینی‌ام داره. احتمالا اگر بالای ۱۰ تومن هزینه می‌کردم این مشکل پیش نمی‌اومد. ((؛
ممنون که تا اینجا رو خوندید.