며칠 전, Alpine Linux 배포판 개발팀은 Wayland 인프라 에서 X11 기반 데스크톱 환경을 실행하도록 설계된 프로젝트의 첫 번째 실험 버전 인 Wayback 0.1 을 출시 했다고 발표했습니다.
이 제안은 기존 X.org 서버에서 보다 현대적이고 경량화된 아키텍처로의 전환을 촉진하여 저장소에 별도의 X 서버를 유지 관리할 필요성을 없애고 레거시 애플리케이션의 유지 관리 비용을 절감하는 것을 목표로 합니다.
Wayback 은 최소한의 기능만 지원하는 Wayland 복합 서버로 , Xwayland를 통해 전체 화면 X11 세션을 실행하는 데 필요한 핵심 기능만 지원합니다. Xwayland는 X11 애플리케이션이 Wayland 환경에서 실행될 수 있도록 하는 DDX 구성 요소입니다.
tinywl에서 잠재적인 Xorg 대체품으로
Wayback 의 핵심은 wlroots 라이브러리의 참조 컴포지터 인 tinywl에서 영감을 받았지만 , Xwayland가 자율적으로 작동하는 데 필요한 최소한의 기능만 갖추고 있습니다 . 이 프로젝트의 목표는 분명합니다. 미래에 Wayback은 Xorg 실행 파일(/usr/bin/X)을 완전히 대체하여, X11 데스크톱 환경과의 호환성을 유지하면서 Wayland 기반 위에 구축될 수 있을 것입니다.
Alpine Linux의 목표는 Wayland와 Xwayland의 핵심 구성 요소만 유지하고, 그 위에 X11 환경을 직접 실행하여 별도의 X.org 서버를 없애는 것입니다.
Wayback은 처음 발표된 이후 상당한 발전을 거듭해 왔습니다 . 프로젝트의 아키텍처는 세 가지 주요 구성 요소로 재구성되었습니다.
- wayback-compositor, 그래픽 구성 관리를 담당
- 컴포지터와 함께 Xwayland를 시작하기 위한 Xorg 호환 명령줄 인터페이스를 제공하는 Xwayback
- startx와 비슷한 인터페이스를 갖춘 세션 관리자 역할을 하는 wayback-session.
중앙 집중식 로깅 시스템, getopt에서 영감을 받은 새로운 옵션 파서, clang-format을 사용한 표준화된 코딩 스타일 도 도입되었습니다 . 또한, 프로젝트는 GitHub에서 freedesktop.org 인프라로 이전하여 개발 커뮤니티와의 통합을 강화했습니다.
현재 상태 및 제한 사항
Wayback은 이미 일상적인 간단한 환경에서 사용할 수 있지만 , 여전히 알파 버전이며 일부 기능은 구현되지 않았습니다 . 멀티 모니터 설정과 DPMS를 통한 전원 관리 기능이 부족하고, 많은 기존 Xorg 옵션은 아직 자리 표시자에 불과합니다. 특정 비디오 게임이나 XScreenSaver와 같은 보안 애플리케이션에서 필수적인 마우스 포인터 캡처 기능도 아직 지원되지 않습니다.
이러한 한계에도 불구하고, 저희 팀과 여러 기여자들은 이미 이 기능을 정기적으로 사용하여 오류를 감지하고 수정하고 있습니다. 커뮤니티에서는 이 기능을 테스트하고, 버그를 보고하고, 기여를 제출하여 개발 과정을 더욱 공고히 하고자 합니다.
또 다른 새로운 기능은 Wayback에 X.org 엠블럼에서 영감을 받은 공식 로고가 생겼다는 점입니다. 이는 Wayback 이 X.org의 계승자이자 기술적 가교 역할을 한다는 것을 시각적으로 보여주는 요소입니다. 또한 Libera.Chat의 IRC 채널과 연결된 Matrix 채널이 개설되어 개발자들과 직접 협업할 수 있게 됨으로써 프로젝트 소통도 개선되었습니다.
마지막으로, Wayback은 모든 상황에서 Xorg를 즉시 대체하기 위한 것이 아니라 , X11 환경을 계속 사용해야 하는 사용자를 위해 가볍고 현대적이며 유지 관리가 간편한 대안을 제공하기 위한 것임을 언급할 가치가 있습니다 . 모듈식 접근 방식과 Wayland 및 Xwayland와의 직접적인 통합은 X11 레거시와의 호환성을 유지하면서 Wayland 도입을 가속화하는 데 중요한 요소입니다.
Wayback을 사용해보고 싶은 분들을 위해 알려드리자면, Wayback은 Alpine Linux, Nix, Arch Linux (AUR), Fedora, T2, ALT Linux 등 여러 배포판용 패키지로 제공되므로 다양한 환경에서 쉽게 설치하고 테스트할 수 있습니다. 설치 방법은 이 페이지에서 확인하실 수 있습니다.
마지막으로, 모든 코드는 C 언어로 작성되었으며 MIT 라이선스 하에 배포되므로 개방성과 다양한 시나리오에 대한 적용 가능성을 보장한다는 점을 언급할 가치가 있습니다 . 더 자세한 내용을 알고 싶으시면 다음 링크에서 확인하실 수 있습니다.