---
title: "Zig로 처음부터 새로 짠 X 서버 'Phoenix' — Wayland 대신 X11을 택한 이유"
published: 2025-12-24T22:43:53.000Z
canonical: https://jeff.news/article/1179
---
# Zig로 처음부터 새로 짠 X 서버 'Phoenix' — Wayland 대신 X11을 택한 이유

Xorg를 포크하지 않고 Zig로 처음부터 새로 작성한 X 서버 Phoenix가 공개됨. 아직 초기 단계이지만, 앱 격리 보안, HDR/VRR 지원, 내장 컴포지터 등 현대적 기능을 목표로 함. 제작자는 Wayland의 근본적 한계를 지적하며 X11 프로토콜 확장을 선택함.

## Zig로 처음부터 새로 짠 X 서버 'Phoenix'

- Xorg를 포크한 게 아니라 Zig로 처음부터 새로 작성한 X 서버임. 제작자는 GPU Screen Recorder로 유명한 dec05eba
- 아직 초기 단계로, 기존 X 서버 위에서 nested 모드로 간단한 GLX/EGL/Vulkan 앱만 렌더링 가능한 수준임
- GPL-3.0 라이선스이고 현재 개발은 비공개로 진행 중

## 핵심 목표

- **단순함**: X11 프로토콜의 부분집합만 지원. 최근 ~20년 내 작성/업데이트된 앱이면 다 돌아감 (gtk2 포함)
- **보안**: 앱 간 기본 격리, 다른 앱 접근 시 GUI 권한 프롬프트 필요. 클립보드는 포커스된 앱만 읽을 수 있어서 Wayland 컴포지터보다도 안전하다는 주장
- **현대 하드웨어**: 멀티 모니터 개별 주사율, VRR, HDR 지원
- **내장 컴포지터**: 기본적으로 티어링 없음. picom 같은 외부 컴포지터 실행 시 자동 비활성화
- **X11 프로토콜 확장**: HDR 같은 새 기능이 필요하면 X11 프로토콜 자체를 확장할 예정

## 비목표 (Non-goals)

- Xorg를 대체하려는 게 아님. Xorg가 항상 더 많은 X11 기능과 오래된 하드웨어를 지원할 것
- 레거시 비주얼 미지원 (TrueColor만), 복수 X11 스크린 미지원, GrabServer 무시
- 간접(원격) GLX도 미지원 — 요즘은 원격 스트리밍이 더 효율적이라는 입장

## Wayland를 안 쓰는 이유 — 가장 흥미로운 부분

- 제작자의 GPU Screen Recorder UI가 Wayland에서 제대로 동작할 수 없는 게 직접적 동기임
- Wayland 프로토콜만으로는 아예 불가능하고, Xwayland를 써도 각 컴포지터의 미정의 동작에 의존해야 함
- **글로벌 단축키 문제**가 대표적: XDG desktop portal의 글로벌 단축키 프로토콜이 사실상 KDE Plasma에서만 쓸만하고, Hyprland에서는 GUI 앱에서 못 쓰는 방식으로 구현됨. 많은 Wayland 컴포지터에선 아예 미구현
- 이 글로벌 단축키 프로토콜이 Hyprland과 GNOME desktop portal 모두 크래시시킨 적 있음 (제작자가 Hyprland 쪽 수정 PR까지 날림)
- **근본 철학 차이**: X11은 "mechanism over policy" (단순하지만 강력한 기본 도구 제공), Wayland는 "policy over mechanism" (컴포지터 개발자가 의도한 것만 가능)
- Wayland에서는 범용 소프트웨어를 만들 수 없고, 실질적으로 KWin/Wlroots/Mutter 중 특정 컴포지터 타겟으로 개발해야 함
- Wayland 프로토콜 결정에 수년이 걸리는 반면 X11은 ~2개월이면 됨. 그 결과물도 덜 유연하고 구현 복잡도가 1000배 높다는 주장
- 자기 Wayland 컴포지터를 만들어도, X11처럼 동작하게 만들어야 하니 결국 X11 서버 만드는 것과 다를 바 없음. 게다가 그 컴포지터에서만 동작하는 앱이 되어버림
- Wayland 호환은 12to11 같은 브릿지 앱을 통해 지원할 예정

## 기술 스택

- Zig 0.15.2 필요, libxkbcommon 의존
- 백엔드: X11 (nested), Wayland (미지원), DRM (미지원) 선택 가능
- 빌드: `zig build -Doptimize=ReleaseSafe`로 빌드

## 핵심 포인트

- Xorg 포크가 아닌 Zig로 처음부터 작성한 새 X 서버
- 앱 간 격리, 안전한 클립보드 등 보안 강화가 핵심 목표
- Wayland의 'policy over mechanism' 철학이 비표준 앱에 치명적이라는 주장
- GPU Screen Recorder UI의 글로벌 단축키 문제가 프로젝트의 직접적 동기

## 인사이트

X11 vs Wayland 논쟁에서 실제 앱 개발자가 겪는 고통을 생생하게 보여주는 프로젝트. Wayland 전환이 늦어지는 진짜 이유를 이해하는 데 도움이 됨.
