라즈베리파이 공식 홈페이지에 2023년 10월 11일자 Simon Long에 의해 게시된 글입니다. 원문은 아래 링크입니다. https://www.raspberrypi.com/news/bookworm-the-new-version-of-raspberry-pi-os/ 번역기 번역이니 감안하고 봐주세요.
#######################################################
올해는 홀수해이기 때문에 새로운 메이저 데비안 릴리스가 나왔고, 이제 우리는 해당 버전의 Raspberry Pi OS를 릴리스하고 있습니다.
올해 데비안 릴리스는 Bookworm이라고 합니다. (여러분도 아시다시피 데비안 릴리스는 디즈니/픽사의 Toy Story 프랜차이즈에 있는 캐릭터들의 이름을 따서 명명되었습니다. 그러나 이제는 릴리스가 너무 많아서 여러분이 들어봤을 모든 캐릭터가 이미 사용되었을 것입니다. Bookworm은 Toy Story의 작은 캐릭터였습니다.)
그렇다면 Bookworm의 새로운 기능은 무엇입니까? 글쎄요, 그다지 많지는 않지만… 하지만 거의 모든 것을 설명해 드리겠습니다.
데비안 Bookworm 자체는 대부분 이전 데비안 Bullseye 릴리스에 있던 소프트웨어의 점진적인 업데이트로 이루어져 있습니다. 몇 가지 작은 변경 사항이 있습니다. 아래에서 목록을 확인하세요. 그러나 대부분 라즈베리파이 사용자에게는 영향을 미치지 않습니다. 따라서 Bookworm 자체는 실제로 많은 변화를 가져오지 않았습니다. https://wiki.debian.org/NewInBookworm
하지만 지난 몇 년 동안 우리는 라즈베리파이 데스크탑의 몇 가지 주요 아키텍처 변경 작업을 진행해 왔으며 이는 Bookworm 릴리스에서 처음으로 출시되었습니다. 여기서 약간의 차이점을 발견할 수 있습니다.
Wayland
이 중 가장 중요한 것은 디스플레이 시스템으로 X11이 아닌 Wayland를 사용하려는 움직임입니다. https://wayland.freedesktop.org/
지난 35년 동안 라즈베리파이 데스크탑을 포함한 대부분의 Unix 데스크탑 환경은 X11 윈도우 시스템을 기반으로 했습니다. 그러나 수십 년 된 소프트웨어의 경우 그다지 놀라운 일이 아니지만 X11은 최신 컴퓨터에서 사용할 때 다양한 제한 사항을 가지고 있습니다. 이러한 문제를 해결하기 위해 대부분의 Linux 배포판은 Wayland를 사용하려는 움직임을 보이고 있습니다. 아직 그렇게 하지 않은 배포판들도 미래에 그렇게 할 계획입니다.
Wayland의 주요 장점은 성능입니다. X11에는 창 그리기와 관련된 두 개의 별도 응용 프로그램이 있습니다. 디스플레이 서버는 화면에 창을 만들고 애플리케이션에 콘텐츠를 그릴 수 있는 장소를 제공하는 데 사용됩니다. 창 관리자는 창을 서로 상대적으로 배치하고 제목 표시줄과 프레임으로 창을 장식하는 데 사용됩니다. Wayland 시스템에서는 이 두 기능이 컴포지터(compositor)라는 단일 애플리케이션에 결합되므로 애플리케이션은 창을 그리기 위해 두 개가 아닌 한 개와만 통신하면 됩니다.
이는 또한 보안상의 이점을 제공합니다. X11에서는 모든 응용 프로그램이 디스플레이 서버와 통신하고 이 통신은 양방향이었기 때문에 모든 응용 프로그램이 서로 정보를 교환할 수 있었습니다. Wayland에서는 애플리케이션이 모두 컴파일러 레벨에서 서로 격리되어 있으므로 어떤 애플리케이션도 다른 애플리케이션이 무엇을 수행하는 작업을 볼 수 없습니다.
Wayland 자체는 프로토콜에 불과합니다. 사용하기 위해서는 Wayland를 지원하는 컴포지터가 필요합니다. 이전 Raspberry Pi OS 릴리스에서는 Wayland 컴포지터 역할을 할 수 있는 Mutter 창 관리자를 사용했습니다. 그러나 이는 잘못된 선택임이 드러났습니다. 상대적으로 느리고 번거로웠으며 약간 구식이었습니다. 이것이 바로 우리가 Bullseye에서 실험적으로 Wayland 지원을 제공한 이유입니다.
Bookworm의 경우 Wayfire라는 합성기를 사용하고 있습니다. 이는 여러 최신 Wayland 컴포지터에서 사용되는 wlroots라는 표준 Wayland 라이브러리를 사용합니다. 그리고 Wayfire는 Mutter보다 라즈베리파이의 Wayland 컴포지터로서 훨씬 더 잘 작동하기 때문에 이제 Wayland가 데스크탑의 기본 작동 모드입니다. (한 가지 주의할 점이 있습니다. 현재 Wayland는 라즈베리파이 4 및 5의 기본값일 뿐입니다. 이전 플랫폼에서 Wayfire의 성능은 여전히 최적화 중이므로 지금은 이전 X11 디스플레이 서버와 Openbox 창 관리자를 계속 실행할 것입니다. , 그러나 어느 시점에는 이러한 플랫폼도 Wayfire로 전환될 것입니다.)
라즈베리파이 4 또는 5에서 Raspberry Pi OS를 부팅하면 이제 Wayfire 데스크탑이 제공됩니다. Bullseye에서 익숙한 데스크톱과 거의 동일해 보이지만 외관상 그렇게 보일 뿐입니다. 두 데스크톱 환경이 동일하게 보이는 하기 위해서는 많은 작업이 필요합니다!
화면 상단에는 애플리케이션을 실행하고 다양한 시스템의 상태를 확인할 수 있는 작업 표시줄이 여전히 있지만 이는 완전히 새로운 애플리케이션입니다. Bullseye에서는 lxpanel이라는 애플리케이션이었는데 이제는 wf-panel-pi(“wayfire panel for Raspberry Pi”의 약자)로 대체되었습니다.
이는 Wayfire 작성자의 예제 패널 애플리케이션인 wf-shell을 기반으로 했지만 lxpanel처럼 보이게 작동하도록 광범위하게 수정했습니다. 이 작업의 가장 큰 부분은 기존의 모든 lxpanel 플러그인(볼륨, 네트워크, Bluetooth 등을 제어하는 아이콘)을 포팅하여 wf-panel-pi에서 작동하도록 하는 것이었습니다.
데스크탑 배경 자체는 여전히 Bullseye에서 사용되었던 이전 pcmanfm 파일 관리자에 의해 그려지지만 X11이 아닌 Wayland를 디스플레이 프로토콜로 사용하도록 수정되었으므로 이제 기본 Wayland 응용 프로그램이 됩니다.
Wayland 환경에서 개별 애플리케이션이 작동하는 방식은 애플리케이션 작성 방식에 따라 다릅니다. GTK 및 Qt와 같은 표준 그래픽 툴킷은 이제 Wayland와 호환됩니다. 이를 사용하는 애플리케이션이 Wayland 환경에서 실행 중일 때 이를 감지한 다음 기본 Wayland 애플리케이션으로 실행되는 Wayland 프로토콜을 통해 모든 그래픽 호출을 라우팅할 수 있습니다. Raspberry Pi Desktop의 일부로 사전 설치된 대부분의 애플리케이션은 이러한 툴킷 중 하나를 사용하므로 이제 Wayland 애플리케이션으로 실행됩니다.
일부 응용 프로그램은 Wayland와 호환되지 않는 툴킷을 사용하거나 X11을 직접 호출하여 툴킷을 완전히 우회합니다. 이러한 애플리케이션이 Wayland에서 작동하지 않는 것처럼 보이지만 이에 대한 변경 사항이 있습니다. Wayland 구현에는 XWayland라는 소프트웨어가 포함되어 있습니다. 이는 Wayland 위에 위치하는 X11 디스플레이 서버입니다. X 자체의 모든 비그래픽 부분을 처리하고 모든 그래픽 부분을 기본 Wayland 구현에 전달합니다. XWayland는 애플리케이션이 X에 무엇이든 요청하자마자 자동으로 실행되도록 설계되었으므로 이 모든 것이 원활하게 작동해야 합니다.
이것이 바로 Wayland입니다. 기본적으로 데스크탑에서 보는 모든 것은 이제 Bullseye에서 그린 방식과 완전히 다르게 그려지고 있습니다. 하지만 제가 일을 올바르게 잘 수행했다면 여러분들은 큰 차이점을 발견할 수 없을 것입니다! 여러분이 알아차릴 수 있는 한 가지는 Wayland가 멋진 눈요기를 추가할 수 있도록 허용한다는 것입니다. 이제 창에는 은은한 그림자가 있으며 단순히 나타나고 사라지는 것이 아니라 애니메이션으로 열리고 닫힙니다.
또한 몇 가지 새로운 플러그인도 추가했습니다. "Power" 플러그인은 기본적으로 활성화되어 있으며 낮은 전원 공급 전압이나 과도한 USB 전류와 같은 전원 공급 문제를 모니터링합니다. 두 가지 중 하나라도 발생하면 무슨 일이 일어났는지 알려주는 알림이 표시되고 작업 표시줄에 아이콘이 표시됩니다. 이를 클릭하면 문제 및 가능한 해결 방법에 대한 자세한 정보가 포함된 웹 페이지로 이동합니다.
또 다른 새로운 플러그인은 "GPU"로, 기존 CPU 플러그인이 CPU에 대해 표시한 것과 유사하게 라즈베리파이의 GPU 부하 그래프를 표시합니다. 기본적으로 활성화되어 있지 않지만 작업 표시줄을 마우스 오른쪽 버튼으로 클릭하고 "플러그인 추가/제거"를 선택하여 추가할 수 있습니다.
위에서 언급했듯이 Wayland / Wayfire에 대한 작업은 진행 중입니다. 우리는 여전히 이전 라즈베리파이 모델의 하드웨어를 최적화하고 있으며 적절한 시기에 모든 라즈베리파이 모델에 대한 Wayland 데스크톱 환경을 출시할 수 있기를 바랍니다.
PipeWire
그래서 우리는 모든 그래픽을 그릴 때 사용하는 것을 바꿨습니다. 그에 맞춰 사운드를 조절할 때 사용하는 것도 바꿨습니다.
원래 데스크탑은 Linux ALSA 사운드 인터페이스를 사용하여 오디오 하드웨어와 통신했습니다. 이것은 효과가 있었지만 매우 원시적이었고 많은 제한이 있었습니다. 몇년전 우리는 하위 수준 ALSA 레이어 위에 있는 PulseAudio 인터페이스를 사용하도록 전환했습니다. 이로 인해 훨씬 더 많은 유연성이 추가되었습니다. Bluetooth 오디오 장치와 같은 항목을 더 쉽게 관리할 수 있게 되었고, 여러 응용 프로그램의 오디오를 함께 혼합할 수 있었으며, 재생 중에 오디오를 출력 간에 쉽게 전환할 수 있었습니다.
이번 릴리스에서는 PulseAudio가 최신 PipeWire 오디오 시스템으로 교체되었습니다. 이는 PulseAudio가 제공하는 기능을 기반으로 하며, 가장 중요한 것은 비디오와 함께 제공되는 오디오에 대한 더 나은 지원을 제공한다는 것입니다. 이는 많은 애플리케이션에서 중요한 대기 시간을 줄여줍니다. Bluetooth 오디오 장치를 더 잘 관리하여 전원이 꺼질 때 어떤 장치가 사용 중이었는지 기억하고 부팅 시 자동으로 다시 연결합니다. 마지막으로, 애플리케이션이 서로 격리되어 있는 보다 안전한 Wayland 환경에서 더 잘 작동하도록 설계되었습니다.
사용자 관점에서 PipeWire는 PulseAudio를 제어하는 모든 응용 프로그램으로 제어할 수 있으므로 작업 표시줄의 볼륨 및 마이크 컨트롤은 PulseAudio에서와 동일하게 작동하지만 Bookworm에서는 PulseAudio가 아닌 PipeWire와 통신합니다.
Networking
GUI와 오디오 모두 달라진 부분입니다. 그 밖에 어떤 것들이 있을까요?
Bullseye 릴리즈에서 우리는 NetworkManager를 raspi-config에서 옵션으로 선택할 수 있게 출시했습니다. 이것은 이제 대부분의 Linux 배포판에서 네트워킹을 위한 표준 제어 메커니즘이며 이전 시스템인 dhcpcd를 대체하는 Bookworm의 기본 네트워크 컨트롤러입니다. NetworkManager는 dhcpcd가 수행했던 모든 작업을 수행하며 숨겨진 무선 네트워크에 연결하거나 VPN(가상 사설망)에 연결하거나 라즈베리파이를 무선 핫스팟으로 사용하는 기능을 포함한 다양한 기능을 추가합니다. 또한 네트워크 연결의 여러 상세설정을 조정하려는 사용자를 위한 훨씬 더 많은 사용자 정의 옵션도 포함되어 있습니다.
작업 표시줄의 네트워킹 플러그인은 Bullseye에서 dhcpcd를 제어하는 것과 거의 동일해 보이지만 이제 하단에 "고급 옵션" 항목이 있습니다. 이를 통해 NetworkManager가 제공하는 새로운 기능에 접근할 수 있습니다.
Firefox
또 하나의 중요한 변화는 우리가 이제 두 번째 브라우저 옵션으로 라즈베리파이에 최적화된 Mozilla Firefox 버전을 출시했다는 것입니다.
Firefox를 공식적으로 지원하는 것은 이번이 처음입니다. 이전에는 Debian의 예전 버전만 사용할 수 있었지만 이제는 라즈베리파이에서 최신 버전의 Firefox를 실행할 때 최상의 경험을 보장하기 위해 많은 작업을 수행했습니다. 우리는 Mozilla 및 Firefox 커뮤니티와 긴밀히 협력해 왔으며 모든 플랫폼의 Firefox 사용자에게 혜택을 제공하기 위해 업스트림 작업에 기여하고 있습니다.
핵심 기능 중 하나는 Firefox가 라즈베리파이에서 하드웨어 h.264 디코더를 활용할 수 있도록 V4L2 코덱 지원을 활성화하는 것입니다. 예전(오래된) 라즈베리파이 모델에서는 HD 비디오를 재생할 때 성능이 크게 향상되고 CPU 부하가 줄어듭니다. 우리는 다양한 비디오 스트리밍 서비스에서 사용되는 Widevine DRM에 대한 지원을 활성화했으며 저전력 장치에서 다양한 웹 사이트의 성능을 향상시키는 그래픽 최적화에 기여했습니다. 화상 통화를 위해 우리는 Raspberry Pi OS의 Firefox가 CSI 카메라(libcamera 사용) 및 Wayland의 데스크톱 공유와 함께 즉시 작동하는지 확인했습니다.
Documentation
이러한 대대적인 변화를 통해 예상하셨듯이, 당사의 문서화에는 엄청난 연쇄적인 효과가 있었고, 문서화 팀은 새로운 세계의 상황을 반영할 수 있도록 막후에서 노력해 왔습니다. 특히 파이썬 모듈 설치 방식에 대한 변화와 같이 여기서 언급할 공간조차 갖지 못했던 것들에 대해서는 더욱 그렇습니다.
전체 문서에 걸쳐 많은 변경이 이루어지면서 엄청난 노력이 들었습니다. 혹시 Bookworm에 대한 문서가 업데이트되지 않은 곳을 발견했다면 문서 저장소에 문제를 제기해 주세요!
무엇이 빠졌나요?
이처럼 중요한 변경 사항이 있으면 이전 버전의 모든것이 새 버전에서도 작동하는지 확인하기 어려울 수 있습니다. 이러한 사항을 최소화하기 위해 매우 열심히 노력했지만 이번 릴리스에는 포함되지 않은 몇 가지 기능이 있습니다.
- 웨이랜드에서는 오버스캔을 사용하는 디스플레이에 대한 보상이 까다롭고, 아직 제대로 작동하지 않아 일단 이 부분은 제거했습니다. 요즘 대부분의 디스플레이에는 필요가 없지만, 가장 좋은 방법을 찾은 후에 다시 적용 할 것입니다!
- 시스템 트레이(응용프로그램이 작업 표시줄에 아이콘을 넣을 수 있는 영역)는 Wayland의 보안 모델과 함께 작동하려면 완전히 새로운 메커니즘을 사용해야 합니다. 즉, 일부 응용프로그램이 아이콘을 표시하려면 업데이트가 필요할 수도 있습니다.
- 마찬가지로 Wayland 보안 모델은 전통적인 원격 데스크톱 액세스를 방지하기 때문에 RealVNC 대신 wayvnc라는 새로운 VNC 서버가 사용되고 있습니다. 이 서버에 연결할 수 있는 클라이언트 애플리케이션 측면에서는 좀 더 제한적입니다. TigerVNC 클라이언트를 사용하면 좋은 결과를 얻을 수 있습니다.
- 또한 현재 RealVNC 서버 자체에 대한 회귀 현상이 있으며, 이는 아직 Wayland를 실행하지 않는 구형 Raspberry Pi 모델의 Bookworm에서 여전히 사용됩니다. 64비트 버전은 잘 작동하지만 32비트 버전은 현재 Bookworm과 호환되지 않습니다. RealVNC의 업데이트를 기다리고 있습니다. 그동안 Raspberry Pi Zero, 1, 2, 3에서 원격 데스크톱 액세스가 필요한 경우 당분간 Bullseye를 사용하는 것이 좋습니다.
일부 프로그램은 권장 소프트웨어 및 전체 이미지에서 제거되었습니다.
- SenseHAT 에뮬레이터는 현재 Bookworm과 호환되지 않습니다. 현재 작업 중이며 몇 주 후에 다시 사용할 수 있기를 바랍니다. - 돋보기 접근성 도구(Magnifier accessibility tool)는 Wayfire에서 작동하지 않지만 Wayfire에는 이미 자체적인 (더 나은) 돋보기가 내장되어 있습니다. ctrl-alt-M을 눌러 켜고 끕니다. - BlueJ 및 Greenfoot Java IDE는 Wayland와 호환되지 않으며 Sonic Pi는 PipeWire와 호환되지 않습니다. 이러한 프로그램은 타사 프로그램이므로 개발자가 업데이트할 때까지 제거되었습니다.
혹시라도. . .
이러한 모든 변경 사항은 Raspberry Pi OS를 다른 Linux 배포판이 수행하는 작업과 더 일치하도록 설계되었습니다. 많은 사람들이 Wayland, PipeWire 및 NetworkManager로 전환하고 있거나 이미 전환했습니다. 이는 데스크탑이 나머지 데스크탑 Linux 생태계의 대부분과 동일한 기본 구성 요소에 있다는 확신과 함께 향후 개발을 위한 좋은 플랫폼을 제공합니다.
우리는 내부적으로 Wayland와 PipeWire를 거의 1년 동안 사용해 왔지만 변경 규모가 너무 커서 일부 특정 사용 시나리오에서는 둘 중 하나가 문제를 일으킬 수 있습니다. 이러한 이유로 raspi-config의 고급 설정 메뉴에는 이전 X11/Openbox 디스플레이 시스템 및 PulseAudio를 다시 활성화하는 옵션이 포함되어 있습니다. 꼭 사용할 필요는 없지만 만일을 대비해 옵션이 있습니다!
얻는 방법
우리는 메이저 버전 업그레이드의 경우 SD 카드의 이미지를 다시 만들고 깨끗한 이미지로 다시 시작해야 한다고 항상 말해왔습니다. 과거에는 기존 이미지를 새 버전으로 업데이트하는 절차를 제안했지만 권장하지 않으며 이를 수행하는 데 따른 책임은 사용자에게 있다는 점을 항상 주의해야 합니다.
이번에는 기본 아키텍처의 변경 사항이 너무 크기 때문에 Bullseye 이미지를 Bookworm으로 업그레이드하는 절차를 제안하지 않습니다. 이를 시도하면 거의 확실하게 데스크톱이 부팅되지 않고 데이터가 손실될 것입니다. Bookworm을 얻는 유일한 방법은 Raspberry Pi Imager를 사용하여 SD 카드를 만들거나 선택한 도구를 사용하여 여기에서 Bookworm 이미지를 다운로드하고 플래시하는 것입니다.
|