Bless Nouveau, atau tentang siksaanku dengan Nvidia Optimus. Bagian 1. Keindahan dokumentasi Arch

Sebelum saya mulai


Sebelum memulai cerita utama, saya ingin mengklarifikasi beberapa poin. Artikel ini ditujukan terutama untuk pemilik laptop dengan teknologi Nvidia Optimus yang ingin menginstal GNU / Linux (selanjutnya disebut Linux). Materi ini bertujuan untuk memastikan bahwa Asia Tengah yang disebutkan di atas membiasakan diri dengan kemungkinan solusi untuk masalah ini dan untuk memfasilitasi dan mempercepat penyelesaiannya. Selain itu, artikel ini tidak sedikit memotivasi , dan ditujukan untuk memahami satu kebenaran sederhana oleh orang-orang: di Linux, seperti dalam kehidupan, selalu ada solusi, dan jika Anda menyerah, itu tidak (dalam banyak kasus) tidak akan lebih baik.
Qui quaerit, reperit
- Pepatah Latin

Kata Pengantar


Untuk saat ini saya adalah Linuxoid biasa. Saya menguji distribusi yang berbeda, perlahan-lahan mempelajari hal-hal baru. Hanya karena saya tertarik. Sebagai aturan, "pengetahuan" terbatas pada Ubuntu dan garpu, serta Fedora dan beberapa distribusi "ramah pengguna". Tetapi, seperti kata pepatah Latin lainnya, omnia fluunt, omnia mutantur, yaitu, semuanya mengalir, semuanya berubah, dan jelas bahwa ini tidak dapat berlanjut selamanya.

Semuanya dimulai dengan baik


Perlu dicatat bahwa saya tidak memiliki banyak ruang untuk percobaan: PC yang relatif lemah yang hampir tidak menarik GNOME 3, dan Internet yang lambat, yang sangat rumit dalam situasi keseluruhan. Tetapi lebih dari itu untuk bocah 12 tahun dan itu tidak perlu. Pada akhirnya, saya lelah bereksperimen, saya menginstal Windows 10 dan melupakan Linux selama beberapa tahun.

Waktu berlalu, dan setelah sekitar 2 tahun saya menyadari bahwa sudah waktunya untuk memperbarui besi PC berlumut saya, dan mulai menghemat uang. Sesuatu datang dari menjual barang-barang mereka, mereka memberikan sesuatu, lebih dari setengah jumlah yang dilemparkan oleh orang tua, saya bahkan harus berkorban untuk menjual Xbox saya (!) untuk menghibur FAQ Anda untuk meningkatkan keterampilan Linux Anda. Kali ini saya memutuskan untuk mencoba menginstal Arch. Saya mendengar bahwa dia memiliki dokumentasi yang sangat bagus. Dan dia mulai.

Keindahan dokumentasi Arch


Pemasangannya cepat dan relatif tidak menimbulkan rasa sakit. Sekali lagi, terima kasih untuk dokumentasinya. Setelah menginstal sistem dan DE yang diwakili oleh KDE Plasma, saya mencoba menghubungkan laptop ke monitor eksternal saya, karena monitor memiliki diagonal 24 'dan layar laptop hanya 15,6'. Tidak ada yang terjadi, tidak ada sinyal di monitor. Seperti biasa, saya mulai googling. Dan setelah 30 menit mencari, saya menemukan bahwa masalahnya adalah dengan teknologi Nvidia Optimus.

Sedikit tentang Nvidia Optimus


Nvidia adalah perusahaan yang baik. Selama 25 tahun sejarah mereka, mereka telah menerapkan banyak solusi yang relatif baik. Nvidia Optimus adalah salah satunya. Subjeknya adalah teknologi hibrida untuk memastikan operasi yang benar dari dua kartu grafis (biasanya grafis Nvidia yang kuat dan Intel terintegrasi) pada laptop. Jika berfungsi di Windows yang dikonfigurasi dengan benar, ini membantu menghemat daya dan sumber daya laptop. Semua ini luar biasa, tetapi yang mendorong saya untuk menulis karya ini adalah bahwa teknologi yang indah ini di Linux, menurut para pengembang, hanya berfungsi sebagian , dan menurut pendapat saya itu membutuhkan banyak, banyak keberanian, waktu dan usaha untuk mengkonfigurasinya.

Keindahan dokumentasi Arch (lanjutan)


Setelah saya mengetahui akar masalah sebenarnya, pada awalnya saya senang bahwa saya menentukan "di mana anjing dimakamkan" (hanya kartu Nvidia yang memiliki output HDMI), dan langkah pertama saya adalah membaca dokumentasi resmi Arch. Esensinya adalah menggunakan Xorg.conf dan .xinitrc untuk memaksa X menggunakan hanya kartu Nvidia. Setelah menyelesaikan langkah-langkah ini dan me-reboot ... layar hitam muncul. Dokumentasi mengatakan bahwa dalam hal ini perlu untuk memeriksa apakah ada ampersand di .xinitrc, dan jika tidak ada, gunakan "konfigurasi Alternatif", yang memaksa X untuk hanya menggunakan kartu Intel. Ini tidak cocok untuk saya, karena kartu Intel sudah digunakan secara default dan opsi ini tidak cocok untuk saya. Ada juga opsi untuk berbagai DM. Mereka juga tidak cocok, karena tidak ada dari mereka yang dapat memulai server X karena berbagai alasan.
Untuk menggambarkan masing-masing secara terpisah akan menjadi latihan yang sangat panjang dan tidak berarti.

Qui quaerit, reperit


Ungkapan ini dalam terjemahan dari bahasa Latin berarti "siapa yang mencari, menemukan." Tidak sia-sia saya meletakkannya di awal, karena bagi saya ungkapan ini akan menjadi moral yang ideal untuk artikel ini.

Saya putus asa. Selama dua hari saya mencoba dengan sia-sia untuk menemukan solusi, menjelajahi forum asing (hanya pada mereka, karena di Orthodox LOR, jawabannya adalah ini: Anda tidak dapat memulai X melalui Nvidia dengan cara apa pun. Tidak mungkin, berdamai). Tapi tetap saja, pada pagi hari yang berawan dari pencarian hari ketiga, saya menemukan sebuah utas (tautan di ruang bawah tanah) di forum pengembangan Nvidia, di mana dijelaskan bagaimana Nvidia Optimus diimplementasikan di Arch pada laptop Dell. Saya segera menyadari - saya diselamatkan! Mengikuti langkah-langkahnya, saya memulai kembali dan ... layar hitam. Tentu saja, saya kesal, tetapi kemudian saya ingat: Saya tidak mendaftar di baris .xinitrc untuk menjalankan DE. Setelah menulis exec startkde, saya restart lagi dan berhasil. X memulai melalui Nvidia. Butuh waktu empat hari untuk menginstal dan mengkonfigurasi Arch, namun saya berhasil!

Tanya jawab


Sekarang mari kita parsing instruksi dari utas di atas. Mari kita mulai:

Pertama, Anda perlu mengaktifkan dukungan KMS (Kernel Mode Setting, metode pengaturan resolusi langsung di kernel) dengan menambahkan ke parameter kernel (file / etc / default / grub) di baris GRUB_CMDLINE_LINUX_DEFAULT = parameter

nvidia-drm.modeset=1 

Kemudian kami membuat skrip untuk DM (login manager). Pertimbangkan opsi dengan LightDM. Kami membuat skrip /etc/lightdm/display_setup.sh dengan konten berikut:

 #!/bin/sh xrandr --setprovideroutputsource modesetting NVIDIA-0 xrandr --auto 

Dengan skrip ini, kami menentukan penyedia dan mengatur resolusi layar semaksimal mungkin.

Mari kita membuat skrip yang dibuat dapat dieksekusi:

 chmod +x /etc/lightdm/display_setup.sh 

Biarkan LightDM menjalankan skrip di atas saat startup. Pertama, edit /etc/lightdm/lightdm.conf:

 nano /etc/lightdm/lightdm.conf 

Masukkan parameter

 display-setup-script=/etc/lightdm/display_setup.sh 

Anda dapat melihat instruksi untuk SDDM di utas yang telah saya sebutkan, tautan di ruang bawah tanah.

Sekarang kita perlu memperbarui mikrokode CPU (lebih lanjut tentang mikrokode dari tautan di ruang bawah tanah):

 sudo pacman -S intel-ucode 

Setelah memperbarui mikrokode, instal banyak paket dari Nvidia:

 sudo pacman -S lib32-mesa-demos mesa-demos libva-vdpau-driver nvidia nvidia-libgl lib32-nvidia-utils nvidia-settings lib32-opencl-nvidia 

Catatan: Beberapa paket mungkin tidak tersedia. Dalam hal ini, instal semuanya secara terpisah. Lewati paket yang tidak akan tersedia.
Nyalakan daemon nvidia.persistenced, yang bertanggung jawab untuk ketekunan (baca lebih lanjut tentang hal itu di tautan bawah tanah) dari driver Nvidia:

 systemctl enable nvidia-persistenced.service 

Konfigurasikan GRUB secara otomatis:

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

Buat disk RAM yang dapat di-boot:

 mkinitcpio -p linux 

Periksa .xinitrc:

 nano ~/.xinitrc 

Jika tidak dimasukkan, masukkan

 exec gnome-session 

untuk GNOME dan

 exec startkde 

untuk KDE Plasma.

Mulai ulang:

 reboot 

Setelah mem-boot ulang laptop, masuk menggunakan akun Anda dan nikmati dunia Arch.

Tentang Bumblebee dan PRIME


Anda mungkin telah memperhatikan bahwa saya tidak mengatakan apa-apa tentang “kruk” yang bertujuan untuk memastikan operasi Nvidia Optimus yang benar di Linux: Bumblebee dan PRIME.
Selain itu, saya hanya mendapat kartu Nvidia dengan driver berpemilik, Nouveau tidak berfungsi (itu sebabnya artikel itu disebut "Bless Nouveau".
Adapun pengalaman pribadi saya dengan mereka, dia kecil dan menyedihkan: kedua kruk point blank tidak melihat kartu grafis Nvidia saya. Jika Anda tertarik pada mereka, di ruang bawah tanah Anda akan menemukan tautan ke materi tentang mereka.

Kata penutup


Jika Anda membaca seluruh artikel, maka Anda adalah pahlawan (baik, atau moderator) .

Ketika menulis sebuah artikel, saya mencoba melemahkannya untuk Anda dengan lelucon yang relatif lucu untuk membenarkan tidak adanya gambar di dalamnya. Semoga Anda mencapai zen setelah membaca.

Daftar sumber


Tentang mikrokode: en.wikipedia.org/wiki/ Microcode
Tentang Bumblebee: wiki.archlinux.org/index.php/Bumblebee_ (Rusia)
Tentang PRIME: wiki.archlinux.org/index.php/PRIME
Thread: devtalk.nvidia.com/default/topic/1027679/linux/optimus-support-for-arch-linux-for-dell-i7559-dual-graphics-intel-nvidia-gtx-960m-laptop-/2
Tentang Kegigihan: en.wikipedia.org/wiki/Persistency

Source: https://habr.com/ru/post/id414061/


All Articles