Nvidia 그래픽 카드에서 Wayland를 작동시키는 방법

Nvidiawayland Card

Nvidia가 2021년 말에 드라이버를 출시한 이후로 이론적으로 Wayland에 대한 완전한 지원을 제공했지만, 과정이 순탄하지는 않았습니다. XWayland와 같이 사람들이 많이 사용하는 컴포넌트와의 상호작용에 대한 작업이 여전히 많이 남아있습니다. 시스템을 찾아보아야 하고, 제대로 클릭하기 위해 사용자의 환경과 커널에서 변수를 설정해야 합니다.

Nvidia 그래픽 카드에서 Wayland를 작동시킬 경우 경험은 가치가 있습니다. 이 가이드를 따르면, Nvidia에서의 경험은 X에서처럼 거의 매끄럽게 진행될 것입니다.

또한 유용한 팁: GPU에 다른 문제가 있는 경우, 이러한 일반적인 그래픽 카드 수정 방법을 시도해 보세요.

목차

  • Xorg 삭제하지 않기
    1. 환경 설정하기
    1. (Arch Linux) 초기 램디스크 구성하기
    1. 직접 렌더링 관리자 활성화하기
  • 배포판의 Wayland 지원
  • 자주 묻는 질문

Xorg 삭제하지 않기

먼저, Xorg 또는 이를 사용하는 데스크탑 환경을 삭제하지 마세요! 사용자 경험을 쉽게 하기 위해, 최소한의 불만으로 안전하게 돌아갈 수 있는 옵션을 가지고 있는 것이 항상 좋습니다. X를 현재 과정에서 문제가 발생했을 경우의 “안전 모드”라고 생각해 보세요. 이 가이드에서는 Xorg에 영향을 미치지 않을 것입니다.

1. 환경 설정하기

Nvidia 그래픽 카드에서 Wayland를 작동시키기 위해 몇 가지 환경 변수가 필요합니다. 여기에서는 통일된 표준이 없으므로, Nvidia가 여러분에게 불만을 갖지 않도록 설정할 때 매우 일반적입니다.

Nvidiawayland Environment

환경을 설정하기 위해 다음 단계를 따르십시오:

  1. 홈 디렉토리에 환경 백업하기:
sudocp/etc/environment ~/environment.bak
  1. 범용 환경 파일 열기:
sudonano/etc/environment
  1. Qt 애플리케이션을 사용할 계획이라면(대부분은 몇 개가 있을 것입니다), 해당 파일의 아무 곳에나 다음 줄을 추가하세요:
QT_QPA_PLATFORMTHEME="wayland;xcb"
  1. Nvidia가 대부분의 Linux 환경과 호환되는 GBM 백엔드를 사용하도록 강제하는 환경 변수와 필요한 기타 몇 가지를 추가하십시오:
GBM_BACKEND=nvidia-drm  
__GLX_VENDOR_LIBRARY_NAME=nvidia  
ENABLE_VKBASALT=1  
LIBVA_DRIVER_NAME=nvidia
  1. 하드웨어 커서 렌더링이 일부 환경에서 실패할 수 있으므로, 하나의 선택적 변수가 더 있습니다. 이는 Wayland를 테스트할 때 화면에 커서가 보이지 않는 경우에만 필요합니다.

하지만 이를 추가했다가 나중에 제거하여 테스트할 수 있습니다:

WLR_NO_HARDWARE_CURSORS=1

알아두면 좋은 점: Fedora에서 Wayland GDM 문제를 해결할 수 있는 가이드를 참고하세요.

2. (Arch Linux) 초기 램디스크 구성하기

대부분의 인기 있는 배포판은 부팅하는 데 임시 파일 시스템을 RAM에 로드하는 “초기 램디스크”(initramfs)와 함께 부팅됩니다(그래서 “램디스크”라는 용어가 붙었습니다). 이를 통해 부팅 프로세스를 초기화하고 커널이 작업을 수행할 수 있도록 준비합니다.

Nvidiawayland Mkinitcpio

이 초기 램디스크 내에서, 우리는 Nvidia의 다양한 구성 요소를 로드해야 하며, 커널에서 디스플레이 해상도를 로드하는 방법도 포함됩니다. 이는 Wayland가 프레임 버퍼를 간소화하고 커널과 더 가까이 통신하기 때문에 중요합니다.

우분투나 페도라와 같은 인기있는 배포판에서는 Nvidia는 이미 initramfs에서 로드할 모듈을 선택하는 방식으로 설정되어 있어 문제를 겪지 않아야 합니다. 하지만 Arch의 모듈식 구조는 특정 모듈을 수동으로 로드하도록 요구할 것입니다.

이 과정은 들리는 것만큼 어렵지 않습니다. 다음 단계를 주의 깊게 따라 하십시오:

  1. 초기 램디스크 구성 파일을 편집합니다(먼저 백업을 만드는 것을 잊지 마세요):
sudonano/etc/mkinitcpio.conf
  1. MODULES=() 줄 아래 괄호 안에 다음을 추가합니다:
nvidia nvidia_modeset nvidia_uvm nvidia_drm

괄호 안에 이미 다른 모듈이 있다면, 이 모듈들을 마지막에 추가하세요. Nvidia 모듈이 이미 보인다면, 목록에서 누락된 것을 추가합니다.

  1. 모든 initramfs 이미지에 대해 초기 램디스크를 재생성합니다(-P 플래그가 필요합니다):
sudo mkinitcpio -P

“누락된 펌웨어”에 대한 무시무시한 경고가 많이 표시됩니다. 이를 무시하세요. 대개 이런 일이 발생하며, 걱정할 필요는 없습니다. 이는 사용 불가능한 하드웨어에 대한 펌웨어 패키지가 누락된 경우에만 유용합니다.

팁: 일부 게임이 CPU를 과도하게 사용할 수 있지만, 리눅스에서 CPU 사용량이 높아지는 문제를 빠르게 수정할 수 있습니다.

3. 직접 렌더링 관리자 활성화하기

리눅스의 직접 렌더링 관리자(DRM)는 커널이 GPU와 작업을 수행할 수 있도록 합니다. Nvidia와 Wayland가 원활하게 작동하도록 하려면, 부트로더의 커널 매개변수에서 Nvidia의 DRM 모드 설정이 사용되도록 해야 합니다:

  1. 기본 GRUB 구성 파일을 편집합니다(다시 한번, 항상 백업이 있는지 확인하세요):
sudonano/etc/default/grub
  1. GRUB_CMDLINE_LINUX_DEFAULT로 시작하는 줄을 찾습니다. 이 줄이 없다면(예를 들어, Fedora에서는 보이지 않음), 다음과 같이 새로 작성합니다: GRUB_CMDLINE_LINUX_DEFAULT="".
  2. 큰따옴표 안에 다음을 추가합니다:
nvidia-drm.modeset=1
  1. Grub의 구성을 업데이트합니다:

Ubuntu/Debian/Mint 기반의 모든 배포판에서:

sudo update-grub

Fedora/RHEL에서는:

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

Arch 기반에서는:

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

모든 작업이 완료되면, 시스템은 Nvidia 하드웨어에서 Wayland를 실행하는 데 훨씬 더 수월하게 될 것입니다!

다음 단계: 이제 Wayland가 작동하므로, 그래픽 카드를 스트레스 테스트할 수 있습니다.

배포판의 Wayland 지원

우분투, 페도라 및 몇몇 선택된 배포판에서는 소프트웨어를 최신 버전으로 업그레이드하면 Nvidia 그래픽 카드에서 Wayland의 작동을 지원받을 수 있습니다. 우분투는 22.04 버전부터 수정된 GNOME 데스크탑을 기본 세션으로 제공하고 있으며, 페도라도 그보다 훨씬 더 오랫동안 이를 수행해왔습니다. 배포판의 최신 버전을 실행하고 있는지 확인하는 것을 고려해보세요.

Nvidiawayland Sddm

리눅스 민트와 같은 다른 배포판은 기본적으로 제공하는 데스크탑 환경을 대대적으로 개편하는 것이 우선이 아니기 때문에 Wayland를 실행하는 데 어려움을 겪을 수 있습니다. 그러나 대안 운영 체제를 설치하는 데는 제약이 없습니다. GNOME은 기본적으로 지원을 제공하며, KDE Plasma는 추가 패키지가 필요할 수 있습니다.

Debian 기반/Ubuntu 기반 시스템

시스템이 GNOME을 실행 중이라면, 최신 상태라면 Wayland 지원이 이미 포함되어 있습니다. GNOME이 없는 경우 설치하려면:

sudo apt install gnome

KDE Plasma의 경우, 데스크탑 환경과 Wayland 컴포지터를 별도로 설치해야 합니다:

sudo apt install kde-standard plasma-workspace-wayland

이게 전부입니다! 재부팅하면 디스플레이 관리자에서 Wayland를 사용할 수 있습니다.

Arch 기반 시스템

GNOME 데스크탑 환경을 제공하는 다른 배포판들과 마찬가지로 Arch Linux에 설치하면 자동으로 Wayland를 지원합니다:

sudo pacman -S gnome

KDE Plasma 설치도 상당히 간단합니다:

sudo pacman -S plasma-meta plasma-wayland-session

이 명령어 중 어느 것이든 디스플레이 관리자(로그인 화면으로 잘 알려져 있습니다)에 Wayland를 포함하게 됩니다.

또한 XWayland도 설치하는 것을 잊지 마세요:

sudo pacman -S xorg-xwayland

모든 것을 설치한 후 재부팅하고, 로그인 화면에서 설치한 데스크탑 환경의 Wayland 지원 버전을 선택하면 됩니다.

자주 묻는 질문

Wayland는 정말 가치가 있나요?

모든 변경을 거쳤음에도 불구하고 일부 기능이 제대로 작동하지 않을 수 있습니다. Nvidia와 관련된 많은 문제는 해결되었지만, 많은 애플리케이션은 Wayland와의 호환성 문제로 짜증나는 작은 문제들을 계속 가지고 있습니다. Wayland와 익숙한 많은 애플리케이션은 지속적인 개발이 이루어지고 있음을 주목할 필요가 있습니다. 이러한 문제는 대개 결국 사라집니다.

Wayland에 너무 좌절감을 느끼면 X로 다시 전환하세요. 그러나 Wayland 패키지를 삭제하지 않는 것을 권장합니다. X는 날로 더 많은 애플리케이션 개발자들에게 버려진 소프트웨어로 인식되고 있기 때문입니다. 가끔씩 문제들이 사라졌는지 확인해보세요.

제 디스플레이 관리자가 Wayland 옵션을 보여주지 않으면 어떻게 하나요?

대부분의 디스플레이 관리자가 좋아하는 데스크탑 환경의 Wayland 프로토콜 구현을 표시해야 하지만, 항상 그런 것은 아닙니다. 이를 해결하기 위한 방법은 다른 디스플레이 관리자를 사용해보는 것입니다. KDE Plasma(SDDM)와 GNOME(GDM)와 함께 제공되는 것들은 문제가 없이 작동합니다. LightDM도 완벽하게 잘 작동하는 것으로 알려져 있습니다.