나의 접근성 스택과 Wayland에서의 미래
2 hours ago
2
- Wayland 전환은 X11 기반 입력 접근성 도구를 끊어, 일부 사용자에게 컴퓨터와 직업 생활 자체에 접근하는 수단을 잃게 만듦
- Talon Voice는 음성 인식, 스크립팅, Python으로 앱 전환·받아쓰기·브라우저 조작·스크롤을 손 없이 가능하게 함
- gaze_ocr와 Cursorless는 OCR·시선 추적·구문 트리 참조를 결합해, 앱 협조 없이 화면 조작과 코딩 범위를 넓힘
- Wayland에는 Talon이 필요한 윈도 관리, 입력 자동화, 마우스 위치 지정, 클립보드, 화면 읽기를 위한 공통 표준 API가 부족함
- Talon 주 개발자는 공개 릴리스의 Linux 지원 제거를 예고했고, GNOME·KDE·wlroots 전반의 API 구현은 커뮤니티 과제로 남음
Wayland 전환이 입력 접근성을 끊는 문제
- KDE Plasma는 2027년 초 X11 지원 제거를 발표했으며, X11에 의존하는 접근성 도구 사용자는 약 9개월 뒤 현재 데스크톱 환경을 계속 쓰기 어려워짐
- 접근성 논의는 시각 제한이나 실명 사용자를 위한 출력 접근성에 집중되기 쉽지만, 컴퓨터에 명령을 전달하는 입력 접근성도 동등하게 중요함
- Ehlers-Danlos Syndrome 진단 이후 손목과 손가락을 쓰는 작은 근육들이 손상되어 키보드와 마우스 사용이 어려워졌고, 전문 물리치료로 손 사용 일부를 회복했지만 전체 근무일을 버티기엔 부족함
- Linux 데스크톱이 Wayland 전용으로 이동하면, 손을 거의 쓰지 않고 컴퓨터를 조작하게 해주는 현재 도구들이 필요한 수준의 시스템 통합을 얻지 못함
- Wayland 전환은 단순한 디스플레이 서버 교체가 아니라, 일부 사용자에게 컴퓨터와 직업 생활에 접근할 수단을 잃게 만드는 변화가 됨
Talon Voice가 제공하는 손 없는 입력 환경
- Talon Voice는 빠르고 정확한 음성-텍스트 ML 모델, 전용 스크립팅 언어, Python을 결합해 사용자가 애플리케이션 조작 방식을 직접 확장할 수 있게 함
- Talon은 애플리케이션이 접근성 통합을 제공하지 않아도 우회적으로 조작할 수 있게 하며, 이런 방식은 적대적 접근성(adversarial accessibility) 으로 표현됨
- talonhub/community 스크립트 모음은 Talon을 실용적으로 만들기 위해 먼저 설치하는 핵심 구성요소이며, 사용자의 필요에 맞춰 손으로 작성된 수만 줄의 코드로 구성됨
- Talon으로 가능한 작업:
- 작업 표시줄에서 마우스로 고르는 대신 애플리케이션 포커스를 음성으로 전환함
- Dictation Mode로 텍스트를 작성하며, 원문 대부분도 Talon으로 작성됨
- 브라우저용 Rango extension을 사용해 브라우저를 완전히 손 없이 조작함
- 긴 산문 작성 시 D-Bus를 통해 외부 음성-텍스트 프로그램인 dsnote를 호출하는 자체 스크립트를 사용함
- 어떤 입력 장치를 써도 스크롤 동작이 지속적으로 아프기 때문에, 쉿 하는 소리로 스크롤함
- 향후 Talon에 발 페달을 통합하는 방안도 고려됨
gaze_ocr와 화면 직접 조작
- gaze_ocr는 OCR로 화면 내용을 읽고, 화면 위 객체를 직접 클릭할 수 있게 하는 Talon 확장임
- Linux에서는 OCR 백엔드가 기본 제공되지 않지만, RapidOCR을 연결해 사용할 수 있었음
- 시선 추적기를 함께 사용하면 사용자가 실제로 보고 있는 위치를 바탕으로 화면의 텍스트를 구분할 수 있음
- 60초 소개 영상은 https://youtu.be/qkFy66WF3bU에서 볼 수 있음
- gaze_ocr는 애플리케이션 쪽 통합이 전혀 없어도 상호작용할 수 있어, 애플리케이션 비협조 환경에서도 작동하는 접근성의 대표적인 예가 됨
Cursorless와 음성 기반 코딩
- Cursorless는 Visual Studio Code 확장으로, 소스 코드의 구문 트리를 인식한 표현과 각 토큰 위의 hat을 사용해 음성으로 토큰을 참조하게 함
- 텍스트 데모는 Xe Iaso의 Cursorless 설명에서 볼 수 있음
- talonhub/community의 여러 프로그래밍 언어 음성 작성 지원과 결합하면, 완전히 손을 쓰지 않고 코드를 작성할 수 있음
- 예를 들어 문장의 시작으로 이동하려면 “Cursorless” 위의 hat 색상과 문자 위치를 보고 “pre pink cap”처럼 말해 해당 문자를 참조함
- 이 방식은 Talon의 음성 철자 체계를 사용함
- Cursorless는 기존 키보드 기반 편집기나 음성 기반 편집기보다 강력한 작성 방식을 제공하며, 업무에서 쓰는 소프트웨어를 위해 별도 구현까지 작성할 정도로 핵심 도구가 됨
- Talon 전체의 가치는 장애를 보완하는 수준을 넘어, 컴퓨터와 상호작용하는 더 새롭고 강력한 방법을 제공하는 데 있음
Wayland에서 Talon이 깨지는 이유
- Linux 데스크톱은 40년 이상 된 X11에서 Wayland로 이동 중이며, FOSS 데스크톱 커뮤니티는 Wayland를 미래로 선택함
- Talon은 기본 작업을 수행하기 위해 윈도 매니저와 컴포지터에 깊게 통합되어야 하지만, Wayland는 이 동작들을 수행할 표준 수단을 제공하지 않음
- 가장 기본적인 텍스트 입력 자동화조차 “진짜 Wayland 방식”으로는 불가능해 보이며, X11의 사실상 표준 입력 자동화 도구인 xdotool의 관리자가 이를 조사했지만 혼란스러운 결론에 이르렀음
- Talon에 필요한 범위는 텍스트 입력을 넘어 윈도 관리, 마우스 위치 지정, 클립보드 관리, 화면 읽기까지 확장됨
- GNOME에서는 가능하지만 KDE에서는 아니거나, wlroots에는 이미 구현되어 있다는 식의 답은 충분하지 않음
- 교차 플랫폼 개발자가 GNOME, KDE, wlroots, Smithay 기반 Niri 같은 여러 컴포지터를 대상으로 별도 구현을 작성해야 하는 것은 비현실적임
- 어떤 컴포지터도 Talon에 필요한 전체 API 표면을 구현하지 않는다는 점이 핵심 제약임
Talon의 Linux 지원 제거 방향
- Talon의 주 개발자인 Aegis는 X11이 사라지고 사용자가 작동하지 않는 환경으로 전환되는 상황에서, 공개 릴리스에서 모든 Linux 지원을 곧 제거하겠다고 선언함
- Talon은 무료와 유료 계층으로 나뉘며, 유료 계층은 당분간 X11 지원을 유지함
- 공개 릴리스에서 Linux 지원을 제거하는 결정은 무료 사용자가 설치 후 Wayland 환경에서 작동하지 않는다는 사실에 놀라는 부담을 줄이려는 목적과 연결됨
- 이 결정은 악의가 아니라 2027년 Linux 데스크톱을 지원할 수단이 없다는 실용적 판단에 기반함
- Linux 데스크톱을 지원할 방법이 없으면, 가능한 답은 Linux 데스크톱 지원 자체를 제거하는 것이 됨
커뮤니티가 맡아야 하는 과제
- Aegis가 Linux에서 Talon을 살리고 싶은 사용자들에게 요구한 조건:
- 어떤 이유로도 Aegis와 Wayland 지원을 논의하지 않음
- 커뮤니티가 모여 Talon에 필요한 전체 API 표면을 GNOME, KDE, wlroots에서 성공적으로 구현함
- 그 이후에 Talon의 새 Wayland 백엔드가 검토될 수 있음
- 이 과제는 커뮤니티가 접근하기 어려운 문제로 남아 있으며, Wayland 생태계는 사용자가 겪는 문제에 친절하지 않은 것으로 묘사됨
- xdg-session-management protocol은 최초 풀 리퀘스트부터 완료까지 6년이 걸림
- 최근 병합된 ext-zones protocol은 병합까지 2년 이상이 걸렸고, 초기 개념을 만들기 위한 여러 해의 연구개발 기간은 여기에 포함되지 않음
- 처음에는 유지보수자들이 입력 접근성 요구를 알지 못해 해결이 지연된다고 봤지만, 과거 메일링 리스트와 논의 기록을 읽은 뒤에는 “아무도 이야기하지 않는다”는 상태 자체가 자기충족적 결과처럼 보이게 됨
Wayland 생태계 참여의 어려움
- 과거 논의에서 두 가지 대응이 특히 문제로 남음:
- Nate Graham의 응답은 애플리케이션 개발자가 Wayland 업스트림에 기여해야 하는 현실을 다룸
- Talon을 이름으로 언급하지는 않은 Fedora DEI 접근성 스레드에서 GTK 유지보수자의 응답은 논의 참여를 거부하고, 사용자를 “accessibility maximalists”라고 부르며, 입력 접근성과 직접 관련 없는 자료를 참조함
- 이러한 대응과 wayland-protocols의 상태는 추가 소통만으로 해결될 수 있다는 기대를 크게 약화시킴
- Wayland 생태계는 참여를 요구하면서도, 접근성 요구를 무시하거나 작은 진전을 위해 수년의 전일제 노동을 요구하는 구조처럼 보임
- 입력 접근성 문제가 공개적으로 충분히 논의되지 않는 이유는, 시도해도 의미가 없어 보이기 때문이라는 결론에 가까워짐
- Talon 개발자가 Linux 데스크톱을 가망 없는 대상으로 보고, 살릴 가능성을 커뮤니티에 넘긴 배경도 이런 맥락에서 이해됨
Linux 데스크톱을 떠나고 싶지 않은 이유
- Linux 데스크톱은 계속 사용하고 싶은 환경이며, Plasma 데스크톱, 원하는 게임 지원, 필요한 개발 도구, 새 하드웨어 블록을 위한 최신 도구 등을 제공함
- 광고, 나쁜 UI 재설계, 곳곳에 주입된 AI가 없는 깨끗한 경험도 Linux 데스크톱을 유지하고 싶은 이유임
- Fireborn의 지난해 글처럼, Wayland는 성장했고 이제 기여하려고 노력할 수밖에 없음
- 필요한 것은 접근성 요구, Talon이 그 요구를 어떻게 채우는지, Wayland 전용 미래가 왜 이를 충족하지 못하는지를 명확히 알리는 것임
- 앞으로 나아갈 방법을 아는 사람이 있다면, 입력 접근성 사용자를 도울 수 있는 상황임
인간 입력 장치의 가능성과 한계
- Talon과 관련 기술을 6개월 동안 사용하면서, 전통적인 키보드와 마우스를 쓸 수 없는 상황에서도 생활과 작업을 이어갈 수 있었음
- 키보드와 마우스 중심 사고에서 벗어나자 인간 입력 장치의 가능성이 훨씬 넓다는 점이 드러남
- 현대 컴퓨터는 화면의 모든 문자를 ML 모델로 스캔하고, 사용자가 어떤 문자를 보고 있는지 추적해, 1초 안에 해당 텍스트를 직접 클릭하는 수준의 입력 방식을 가능하게 함
- 특수 키보드인 Svalboard도 곧 별도 글로 다룰 예정이며, 이 장치는 3년 전에는 존재하지 않았음
- Talon은 계속 개선되고 있으며 이미 매우 많은 명령이 제공되고, 충분하지 않을 때 직접 명령을 작성하는 방법도 마련되어 있음
- 이런 새로운 입력 방식을 직접 시도하려면 현재로서는 Wayland를 사용하지 않아야 함
-
Homepage
-
Tech blog
- 나의 접근성 스택과 Wayland에서의 미래