بسم الله الرحمن الرحيم
السلام عليكم ورحمة الله وبركاته
تثبيت تعريف nvidia من خلال مستودعات rpmfusion.
1-أولا في حالة UEFI عليك التاكد من أن خاصية secure boot غير مفعلة من البايوس (كل جهاز له طريقة إبحث في جوجل عن إسم جهازك ومثلا how to disable secure boot) .
2-تثبيت مستودعات rpmfusion وبعض الأشياء الأخرى والتأكد من تفعيلها .
ملاحظة حتى لا تتداخل الأمور إذا كان لديك مستودعات أخرى فيها تعريفات nvidia مثل مستودعات negativo17 وكنت سبق وقمت بتثبيت تعريف منه يجب ان تحذف التعريف القديم وتوقف مستودعات negativo17
sudo dnf install https://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm https://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm
sudo dnf install fedora-workstation-repositories
sudo dnf config-manager --set-enabled rpmfusion-nonfree-nvidia-driver
sudo dnf makecache
sudo dnf install kernel @c-development kernel-devel kernel-headers
sudo dnf install kernel @c-development kernel-devel kernel-headers
ثم إعادة إقلاع النظام من اخر نواة متوفرة .
reboot
3-عليك ان تعرف إسم الكرت عندك وأسماء التعريفات المتوفرة في مستودعات rpmfusion وعليك أن تعرف الإصدار الصحيح الذي يعمل على الكرت الذي تمتلكه .
-أولا لتعرف إسم الكرت إكتب هذا الأمر في الأسفل مع العلم قد تكون تعرف بالفعل مواصفات جهازك عندما إشتريته .
lspci |grep VGA;lspci |grep 3D
في هذا الأمر ممكن أيضا أن نعرف إذا ما كان لديك كرتي شاشة كما ظهر عندي لدي كرت Intel و كرت Nvidia 710m (ستحتاج هذا الامر مرة أخرى في الشرح).
-ثانيا لتعرض كل الإصدارت المتوفرة في مستودعات rpmfusion نفذ الأمر التالي .
sudo dnf repoquery xorg-x11-drv-nvidia*
سيظهر عندك عدت نتائج منها كهذه الإصدارات كما في الأسفل .
xorg-x11-drv-nvidia-340xx-1:340.107
xorg-x11-drv-nvidia-390xx-3:390.116
xorg-x11-drv-nvidia-3:418.56
كما تلاحظ هناك ثلاث إصدارات 340 و 390 و 418 .
-ثالثا عليك أن تعرف أي إصدرا مناسب للكرت عندك أسهل حل هو الدخول على موقع nvidia وإستخدام خاصية البحث .
لاحظ بعد إختيار رقم الكرت عندي وإدخال المعلومات الصحيحة والضغط على Search أظهر لي خيار تنزيل تعريف بإصدار محدد ما نحتاجه فقط هذا الرقم لأن تنزيل وتثبيت التعريف من الموقع الرسمي معقد ولا ينجح أحيانا (يمكنك أيضا البحث في جوجل عن الإصدارات التي تعمل على الكرت عندك) .
-رابعا بعد الحصول على الرقم الصحيح بكل بساطة نقوم بالتثبيت مثلا لنفترض 390 .
sudo dnf install xorg-x11-drv-nvidia-390xx-3:390.116
4-في حالة أنه يوجد لديك خاصية nvidia optimus أي كرتي شاشة وفقط في هذه الحالة كما في حالتي وظهر معنا في الاعلى يجب أن أضيف سطرين على إعدادات مدير الدخول .
( كرت nvidia سيعمل دائما ولا يمكن التنقل بين الكرتين لهذا إستهلاك البطارية يمكن ان يزداد)
ملاحظة مدير الدخول display manager هو الذي يطلب منك بشكل رسومي إسم المستخدم وكلمة المرور للدخول للنظام بعد إقلاعه .
في حالت كنت تستخدم Fedora Workstation أي فيدورا Gnome بشكل إفتراضي مدير الدخول المستخدم سيكون gdm إختصار ل gnome display manager و عندها لن تحتاج ان تضيف شيء لأن من قام بتحزيم التعريفات على rpmfusion اضاف بعض الاوامر لتقوم بالمهمة عنك يمكنك أن تعيد إقلاع النظام وإذا كان كل شيء على ما يرام سيعمل التعريف وإلا سينتقل بشكل تلقائي إلى التعريف الذي يأتي مع النواة (nouveau) كإجراء إحترازي عند فشل تشغيل تعريف nvidia .
أما في حالت كنت تستخدم kde إفتراضيا مدير الدخول سيكون sddm و هنا ستحتاج هذه الخطوات :
1- إضافة هذين السطرين إلى ملف etc/sddm/Xsetup/ .
xrandr --setprovideroutputsource modesetting NVIDIA-0
xrandr --auto
xrandr --auto
ثم من باب الإحتياط نفذ هذا الأمر .
rm ~/.Xauthority
في حال كنت تستخدم xfce وmate (لا أعلم بالنسبة لباقي البيئات والواجهات ) سيكون مدير الدخول الإفتراضي هو lightdm ستحتاج أيضا إضافة هذين السطرين وأشياء أخرى تابع هذا الرابط من وثائق أرش لينكس .
الأن كيف تعرف أي مدير دخول مفعل عندك ؟
systemctl cat display-manager.service --no-pager
نلاحظ مثلا بوضوح عندي إسم مدير الدخول gdm .
5-كيف نعرف إذا كان التعريف يعمل بالفعل ومفعل ؟
lspci -k
ننفذ هذا الأمر إذا وجدنا كلمة nvidia امام kernel driver in use يكون مفعل .
sudo cat -v /var/log/boot.log |grep -i fallback
في حال الفشل سنجد ان المفعل هو nouveau وإذا قرئنا ال boot.log سنجد انه تم الإنتقال إلى nouveau بعد فشل لسبب ما تفعيل تعريف nvidia .
6-كيف نتأكد أن تعريف nvidia هو الذي يعمل بشكل إفتراضي ؟
يمكننا مثلا بهذه الطريقة كما في الصور في الأسفل نلاحظ إذا كان intel المفعل كيف يكون وإذا كان nvidia كيف يكون .
sudo dnf install glx-utils
glxgears -info |grep -i vendor
أخر معلومة عند كل تثبيت للنواة جديدة يحتاج الامر إعادة بناء وإعدادات التعريف ليتوافق مع النواة الجديدة, الذي يقوم بهذا الدور هي خدمة إسمها akmods.service لهذا عند أول إقلاع من كل تثبيت لنواة جديدة قد يتاخر الإقلاع قليلا حتى تنتهي خدمة akmods من عملها ويمكن القيام باﻷمر بشكل يدوي كما في الصورة في الأسفل .
sudo akmods --force