DevOps

Flatpak의 미래 – 성숙기 진입인가, 정체기인가?

파파누보 2025. 5. 24. 15:45
728x90
반응형

 

Flatpak

당신도 느꼈을 거다. Flatpak을 처음 썼을 때의 그 깔끔함. 시스템을 더럽히지 않으면서 앱을 설치하고, 의존성을 따로 신경 쓸 필요 없이 바로 실행할 수 있다는 점은 정말 매력적이었다. 그런데 요즘 들어 뭔가 이상하다. 새 기능이 잘 안 나온다. 몇몇 앱은 여전히 권한 설정이 복잡하고, 오디오 같은 기본 기능도 제대로 다뤄지지 않는다.

Flatpak이 인기 있는 건 분명한데, 내부는 조용하다. 왜 그럴까?

이 글에서는 Flatpak의 현재 개발 상황과 기술적 병목을 살펴보고, 미래의 가능성과 위기를 짚어본다. Rust 기반 재작성, OCI 이미지 전환 같은 제안들이 어떤 의미를 가지는지, 당신이 Flatpak을 계속 써도 괜찮을지를 현실적으로 판단할 수 있게 도와줄 것이다.

반응형

1. Flatpak, 어디까지 왔나

Flatpak은 2007년 유사 프로젝트에서 시작해, 2015년 XDG-App으로 첫 출시된 후 2016년에 현재의 이름으로 바뀌었다. 앱을 컨테이너 안에 가두고, 시스템과 격리된 상태로 실행하는 구조는 리눅스 데스크탑 사용자에게 신뢰성과 간편함을 동시에 제공했다.

OSTree 기반의 배포, 샌드박싱, 그리고 Flathub의 성장은 Flatpak의 빠른 대중화를 이끌었다. Fedora 같은 주요 배포판에서 기본 지원되며, GIMP, Spotify, Zoom 같은 앱들도 Flathub를 통해 쉽게 배포되고 있다.

하지만 프로젝트 내부를 들여다보면 상황은 다르다. 신규 기능의 도입은 지연되고 있고, 개발자들의 이탈이 늘어나며 코드 리뷰조차 몇 달씩 밀리는 일이 벌어지고 있다.


2. 왜 지금 문제가 되는가

Flatpak의 개발은 현재 사실상 정체 상태다. 유지보수나 보안 패치 같은 기본적인 작업은 지속되고 있지만, 대규모 기능 추가나 아키텍처 개선은 거의 진행되지 않고 있다.

핵심 기여자였던 Alexander Larsson의 활동이 줄어들면서 리뷰어가 크게 부족해졌다. 새로운 개발자가 참여하고 싶어도 리뷰 속도가 너무 느리니 자연스럽게 관심을 잃는다. Red Hat이 제안한 사전 설치 기능도 리뷰가 수개월씩 지연되며 아직 통합되지 않았다.

결국 Flatpak은 성장 중단에 가까운 상황에 접어들고 있다. 문제는 이런 내부 상황이 외부에서는 잘 보이지 않는다는 것이다.


3. 기술적 과제들: 권한·네트워크·드라이버

Flatpak은 사용자 앱을 시스템으로부터 격리하는 데에 중점을 두고 있다. 그러나 이 샌드박싱 모델은 여전히 해결되지 않은 기술적 과제들을 안고 있다.

권한 세분화 문제

예전보다 권한 관리가 세분화되었지만, 여전히 부족하다. 특히 오디오 관련 권한은 PulseAudio의 구조적 한계로 녹음과 재생 권한을 분리할 수 없다. PipeWire를 도입하면 나아질 수 있지만, 아직 완전한 전환은 이루어지지 않았다.

네트워크 샌드박싱 미흡

Flatpak 앱끼리 localhost 포트를 통해 의도치 않게 통신하는 사례도 있었다. 네트워크 네임스페이스 구현이 미비하기 때문이다.

드라이버 업데이트 문제

NVIDIA 같은 드라이버는 각 런타임에 따로 포함되다 보니 업데이트가 번거롭고 트래픽도 많아진다. Valve는 이를 해결하기 위해 드라이버를 호스트와 공유하거나 정적으로 컴파일하는 방법을 도입 중이다.


4. 대안의 실체: Rust 재작성과 OCI 전환

개발자 커뮤니티는 지금의 Flatpak 구조가 유지보수에 너무 많은 부담을 준다고 보고 있다. 그 대안으로 떠오른 것이 Rust 기반 재작성OCI 이미지 포맷 전환이다.

Rust는 안전성과 유지보수성이 뛰어난 언어로, Flatpak의 내부 구성 요소를 더 견고하게 만들 수 있다. 실제로 포털 API나 dbus-proxy 개선에 Rust 전환이 논의되고 있다.

OCI(Open Container Initiative)는 도커 이미지로 대표되는 컨테이너 표준이다. 이미 도구 생태계가 풍부하고, 유지보수 부담을 줄일 수 있어 Flatpak을 이 표준 위에 다시 짜는 방안이 유력하게 검토 중이다.


5. Flathub와 사용자 경험: 유지 or 전환?

많은 사용자는 Flatpak이라기보다 Flathub을 통해 앱을 접한다. 따라서 Flatpak 구조가 바뀌더라도 Flathub이 정상적으로 운영된다면 큰 문제는 없다고 느낄 수 있다.

다만, Flatpak이 새로운 구조로 전환되면 앱 빌드와 배포 방식도 바뀔 수 있다. 현재 Flathub은 자동화된 빌드 시스템을 운영하고 있어, 새로운 구조에도 비교적 쉽게 적응할 수 있다는 전망이 많다.

하지만 이 과정에서 앱별로 생길 수 있는 문제나, 과도기적인 혼란은 피하기 어렵다. 사용자의 불편이 생기지 않도록 신중한 전환이 필요하다.


6. Flatpak-next의 시나리오

Flatpak의 미래는 세 가지 시나리오로 정리할 수 있다.

  • 최악의 시나리오: 리뷰 병목과 개발 정체가 계속돼 프로젝트가 사실상 중단된다.
  • 현실적 시나리오: 일부 핵심 기능은 유지되나, 생태계 전체가 OCI와 Rust 기반의 Flatpak-next로 전환된다.
  • 이상적 시나리오: Rust 재작성과 OCI 전환이 성공하고, 개발자 커뮤니티가 재활성화되며, Flatpak은 더 나은 구조로 진화한다.

현재로선 두 번째 시나리오, 즉 점진적인 전환이 가장 현실적이다.


7. 지금 내가 할 수 있는 선택은?

Flatpak은 아직 충분히 쓸 만하다. Flathub도 활발히 운영되고 있고, 보안 업데이트나 앱 빌드도 잘 유지되고 있다. 하지만 핵심 구조의 변화가 예고된 이상, 장기적으로는 변화에 대비해야 한다.

개발자라면 새로운 구조나 빌드 시스템에 미리 익숙해지는 것이 좋다. 사용자라면 Flatpak이 아닌 다른 포맷(AppImage, Snap, native)도 함께 고려하는 것이 좋다.

무엇보다 중요한 건, Flatpak을 맹신하지 않는 것이다. 지금까지 Flatpak이 많은 문제를 해결해 준 건 분명하지만, 앞으로를 위해선 그 대안과 변화도 함께 이해하고 있어야 한다.


728x90

Flatpak은 지금 중요한 갈림길에 서 있다. 사용자에게는 편리하고 안전한 앱 배포 시스템이지만, 내부적으로는 병목과 정체, 기술적 한계가 쌓이고 있다.

Rust 기반 재작성과 OCI 전환은 단순한 개선이 아니라, Flatpak이 살아남기 위한 생존 전략이다. 이 변화가 성공하려면 개발자와 커뮤니티 모두의 의지와 협력이 필요하다.

지금 Flatpak을 쓰고 있다면, 안심할 수는 있지만 안주할 수는 없다.

https://lwn.net/Articles/1020571/

 

The future of Flatpak

At the Linux Application Summit (LAS) in April, Sebastian Wick said that, by many metrics, Flat [...]

lwn.net

728x90
반응형