AI 요약
Rust 프로그래밍 언어로 밑바닥부터 새롭게 개발된 현대적인 X11 서버인 'yserver' 프로젝트가 공개되었습니다. 이 프로젝트의 핵심 목표는 기존 Xorg를 무조건 복제하는 대신, 멀티 스크린 지원, non-TrueColor 비주얼, 간접 GLX, DDX 드라이버 ABI 등 현대적인 컴퓨팅 환경에 불필요한 레거시 기술적 부채를 과감하게 제거하는 것입니다. 현재 yserver는 독립 실행형 DRM/KMS 상태에서 MATE, XFCE, Cinnamon 데스크톱 환경뿐만 아니라 FVWM3, e16, wmaker 등의 다양한 창 관리자(Window Manager)를 성공적으로 구동할 수 있는 단계에 이르렀습니다. 개발진은 AMD, Intel, Qualcomm Snapdragon X1, Apple Silicon(Asahi Linux) 하드웨어 등 광범위한 환경에서 테스트를 거쳤으나, NVIDIA 독점 드라이버 환경은 지원하지 않는다고 밝혔습니다.
핵심 인사이트
- 과감한 레거시 제거: 구형 시스템용 멀티 스크린 비주얼, non-TrueColor 지원, 간접 GLX 등을 배제하고 modern Linux 환경에 맞춰 설계되었습니다.
- 안전성과 이식성 확보: 메모리 안전성이 뛰어난 Rust 언어로 개발되었으며, AMD, Intel, Asahi Linux(Apple M1/M2), Qualcomm Snapdragon X1(Adreno X1) 등 광범위한 현대 아키텍처에서 구동을 검증했습니다.
- NVIDIA 독점 드라이버 배제: yserver는 NVIDIA 독점 드라이버 환경에서 작동하지 않으며, 오픈소스 누보(Nouveau) 드라이버 역시 현재 GTX 1050 카드 기준으로 정상 작동이 제한됩니다.
주요 디테일
- 데스크톱 및 창 관리자 호환: MATE, XFCE, Cinnamon 데스크톱을 원활하게 구동하며, 컴피즈(Compiz) 데모 비디오를 통해 실현 가능성을 입증했습니다.
- 주요 프로토콜 확장 기능 지원: DRI3, GLX, RANDR, RENDER, XInputExtension, XKEYBOARD, GLX_EXT_texture_from_pixmap 등 필수적인 X11 확장 기능 다수를 이미 구현했습니다.
- 시트 관리 및 디스플레이 매니저 연동: libseat를 활용한 시트 관리를 지원하며, 디스플레이 로그인 매니저인 lightdm의 xserver-command 설정을 통해 시스템 기본 X 서버로 손쉽게 등록해 활용할 수 있습니다.
- 빌드 및 시스템 요구사항: 컴파일을 위해 최근 안정 버전의 Rust 툴체인이 요구되며, 개발 환경 구성을 위해 Arch Linux의 경우 just, gcc, seatd, libxshmfence, libinput 등의 패키지 의존성을 가집니다.
향후 전망
- 웨이랜드(Wayland)가 대세로 자리 잡는 흐름 속에서도, 안정적인 레거시 X11 애플리케이션 수용 및 경량화 데스크톱 빌드를 원하는 개발자들에게 안전하고 효율적인 대안 서버 옵션이 될 것입니다.
- NVIDIA 드라이버 호환성 한계가 존재하는 만큼, 단기적으로는 오픈소스 그래픽 드라이버 진영(AMD, Intel, Apple Asahi, Qualcomm Snapdragon) 중심의 배포판과 특수 목적 기기 환경에서 우선 도입될 가능성이 높습니다.
출처:hackernews
