Hacker News

F-Droid 2.0

F-Droid 2.0 출시 — 검색·설치 경험을 다시 설계했습니다

F-Droid가 10년 만에 가장 큰 업데이트인 2.0을 공개합니다. Kotlin과 Jetpack Compose로 앱을 다시 만들고 탐색·검색·필터 기능과 Android 설치 흐름을 개선했으며, 일부 개인정보 보호 기능과 기존 설치 방식에는 변경이 있습니다.

AI 요약

F-Droid가 1년 넘게 개발한 Android 앱 마켓의 2.0 버전을 공개합니다. 10년 만에 가장 큰 업데이트로, 새 인터페이스뿐 아니라 앱의 구조와 설치 흐름도 손봤습니다. 14차례 테스트 릴리스 뒤 몇 주에 걸쳐 순차 배포할 예정입니다.

탐색과 검색을 개선했습니다

기본 탐색 메뉴를 Discover, Search, My Apps 세 영역으로 단순화했습니다. 카테고리는 Discover에 통합하고, My Apps에서는 설치된 앱과 업데이트, 발생 가능한 문제를 관리합니다. 설정과 Nearby Swap은 상단 바에서 열 수 있습니다.

Discover 화면에는 새로 추가되거나 최근 업데이트된 앱뿐 아니라 저장소에서 가장 많이 다운로드된 앱도 표시합니다. 카테고리를 세분화해 VPN, 방화벽, 비밀번호 관리자 같은 앱을 찾기 쉽게 했습니다. 관련 카테고리를 묶는 상위 카테고리도 도입했습니다. 게임은 하나로 묶지 않고 17개 장르로 나눴습니다.

검색은 앱 이름뿐 아니라 설명, 카테고리, 번역된 콘텐츠까지 살펴봅니다. 중국어·일본어·한국어(CJK) 검색 지원을 강화했고, 최근 검색어도 저장합니다. 카테고리, 기기 호환성, anti-feature 조건을 함께 적용하는 필터도 추가했습니다. 예를 들어 특정 장르 중 기기와 호환되는 앱만 보거나, 비자유 네트워크 서비스에 의존하는 앱을 제외할 수 있습니다. 앱 안에서 기능을 안내하는 온보딩 화면도 제공합니다.

설치와 업데이트 방식이 달라집니다

Android의 session installer와 사전 승인 API를 활용해 설치 과정을 통합했습니다. 지원 기기에서는 앱을 내려받은 뒤가 아니라 설치를 선택한 직후 확인할 수 있습니다. Android 최신 버전에서는 F-Droid Privileged Extension(FPE) 없이도 백그라운드 업데이트를 지원합니다. F-Droid 2.0은 FPE가 설치된 기기에서도 이를 사용하지 않습니다. 개발팀은 session installer가 FPE 기능 대부분을 대체한다고 보고 개발을 중단했지만, 완전히 대체하지는 못해 개발 재개도 검토한다고 설명합니다.

업데이트 확인과 설치는 기본적으로 자동 실행합니다. 기존 설정은 유지됩니다. 당겨서 새로고침하는 동작은 스크롤에만 쓰며, 수동으로 저장소를 확인하려면 My Apps 화면의 더보기 메뉴를 이용합니다. 데이터 사용 설정도 다시 정리해 네트워크 사용량이나 백그라운드 작업을 직접 조정하기 쉽게 했습니다.

보안 기능과 지원 범위도 바뀝니다

Tor 관련 설정에서는 신뢰하기 어려워진 자동 감지를 제거했습니다. 기존 ‘Use Tor’ 설정은 일반 프록시 설정으로 옮기며, 간편한 Tor 사용 방식으로 Tor VPN을 권장합니다. 긴급 상황에서 민감한 정보를 지우는 panic 기능은 유지합니다. 다만 F-Droid를 계산기처럼 보이게 하던 위장은 앱 아이콘과 이름만 바꾸도록 단순화했습니다. 앱 설정 화면이나 포렌식 검사로 앱을 알아낼 수 있다는 한계를 드러내려는 변경입니다.

panic 앱을 작동시켜 앱을 삭제하고 데이터를 지우는 기능은 2.0에 포함되지 않았습니다. 유지 비용이 크고 사용하는 사람이 적어 다른 개선을 막지 않도록 제외했다고 설명합니다. 이 기능에 의존하는 사용자는 복귀 여부를 검토하는 동안 2.0 업데이트를 미룰 수 있습니다. Android 6 지원도 중단합니다. 새 기능에 필요한 Android 수정 사항이 7에 들어갔기 때문입니다. 기존 F-Droid 버전은 구형 Android에서 계속 작동합니다.

Kotlin과 Compose로 기반을 다시 만들었습니다

새 코드는 Kotlin과 Jetpack Compose로 작성했습니다. Compose를 활용해 Material Design에 맞춘 화면을 만들고, 코드를 유지·테스트·확장하기 쉽게 정리했다는 설명입니다. Android 개발 경험이 있는 새 기여자의 참여 장벽도 낮추려는 목적이 있습니다. 프로젝트는 사용자 조사와 디자인, 테스트, 문서화, 보안 검토에 여러 단체와 자원봉사자가 참여했다고 밝혔습니다. Open Technology Fund의 Security Lab과 Convocation이 독립 보안 검토를 진행했고, 관련 결과를 처리했으며 보고서는 공개 승인을 기다리고 있습니다.

Hacker News 반응

  • @zephiel7 — 반갑습니다. 기존 F-Droid는 적어도 일주일에 한 번은 저장소 업데이트에 실패하는 것 같았습니다.
    • @RicoElectrico — 저장소 타임스탬프 때문이라고 어쩌고저쩌고 하던데, 불쑥 토스트를 띄우는 건 정말 나쁜 설계입니다. 몇 MB짜리 인덱스를 반드시 내려받아야 하는 구조도 그렇습니다.
  • @Scene_Cast2 — 공식 페이지에서는 아직 1.23.2를 내려받습니다. 언제 배포되는지, 기존 앱이 자동 업데이트되는지 궁금합니다.
    • @radicality — 공지를 보고 F-Droid 앱을 열어 업데이트하려고 눌러봤는데, 어디서 업데이트하는지 몰라 한참 헷갈렸습니다.
  • @outadoc — 시각적 개편이 꼭 필요했습니다. 한동안 Droid-ify를 썼는데 공식 앱으로 돌아가겠습니다. 기여자들에게 축하를 보냅니다.
  • @zb3 — “유지·테스트가 쉽고 확장하기 좋은 코드베이스가 됐다”는 말은 아닙니다. 시스템 전체 복잡도만 커집니다. Android가 언젠가 자체 무게를 못 견디고 무너지길 바랍니다.
  • @mzajc — F-Droid Privileged Extension(FPE)이 2.0에서 지원되지 않는다는 점은 아쉽습니다. 유지보수 부담이 큰가요?
    • @someonebaggy — Google이 일반적으로 잠가 둔 session installer에 어떻게 접근했는지 궁금합니다. EU 규정 때문에 Google이 공개한 건가요? 그럴 것 같지는 않습니다.
    • @izacus — 해당 지원은 Android 14에 2023년 추가됐습니다. F-Droid가 이제 그 API를 사용하기 시작한 겁니다.
    • @eighthave — AOSP에 session installer가 들어왔을 때 FPE를 대체하리라 보고 개발을 멈췄습니다. 지금 보니 대부분은 대체하지만 전부는 아닙니다. 개발 재개를 살펴보고 있습니다.
  • @silverbluep — GrapheneOS에서 몇 년 동안 Droid-ify를 썼습니다. F-Droid UI가 좋지 않았고, 이전 LineageOS 휴대전화에서는 권한 확장 기능을 설정하고 안정적으로 쓰기가 번거로웠습니다. 이번 개편은 반갑고 FPE 지원이 끝나는 것도 좋습니다.
    • @eighthave — 여러 클라이언트가 각자 다른 사용 경험을 제공하는 건 좋습니다. 다만 F-Droid와 같은 보안·개인정보 보호 기준을 구현했는지도 살펴보세요. 제가 마지막으로 확인했을 때 제3자 클라이언트들은 SHA-1로 서명된 index-v1을 사용했습니다. NeoStore가 index-v2로 바꿨는지는 모르겠습니다. F-Droid에는 클라이언트 라이브러리도 있습니다.
    • @epihelix — 새 업데이트를 써본 뒤 F-Droid를 삭제하고 1.x로 되돌렸습니다. Material UI 전체를 적용한 방식은 제 취향이 아닙니다. 업데이트를 고르려면 2.0이나 Droid-ify에서는 앱마다 눌러 들어가야 합니다. 좋은 인터페이스를 왜 계속 단순하게 만든다는 이유로 나쁘게 바꾸나요?
  • @aorth — 1년쯤 전에 Obtainium으로 바꿨습니다. 이제 개발자 GitHub 릴리스에서 앱을 직접 받습니다.
    • @szszrk — 앱 세 개에 써봤는데 문제가 바로 생겼습니다. 개발자가 버전 번호 방식을 바꿨는데 Obtainium이 예상하지 못해 오래된 버전을 계속 제시했고, 수정까지 꽤 걸렸습니다.
    • @yjftsjthsd-h — 저는 바로 그 방식이 싫어서 F-Droid를 씁니다. 업데이트를 받기 전에 기본적인 검토를 해주길 바랍니다. 중간 단계를 없애는 건 제가 원하는 것과 반대입니다.
    • @eighthave — Obtainium의 사용 경험이 마음에 든다면 F-Droid 저장소 서명 검증 구현에 참여해 주세요.
  • @magnat — 여전히 인기 평점이나 다운로드 수, 사용자 리뷰 기능이 없습니다.
    • @Velocifyer — 2.0에는 인기 앱 섹션이 있습니다.
  • @rom1v — 기기에서 쓰는 F-Droid 앱 말고도, 컴퓨터에서 ADB로 Android 앱을 설치하는 패키지 관리자 클라이언트가 있으면 좋겠습니다. 저장소 갱신, 업그레이드, 검색, 설치, APK 다운로드, 삭제를 명령줄에서 하고 서명도 검증하면 좋겠습니다.
    • @yjftsjthsd-h — fdroidcl 같은 도구 말인가요?
  • @AdmiralAsshat — Nvidia Shield Pro나 Onn 4K TV에서 TV 리모컨으로 F-Droid를 쓰기는 여전히 어렵습니다. 포커스가 자주 사라지고, 확인 버튼을 누를 때 어느 항목이 선택됐는지 보이지 않을 때가 많습니다.
    • @NewJazz — 버그를 신고하셨나요? 이런 사례는 범위가 좁아서 개발자가 테스트하지 않았을 수도 있습니다.
  • @amiga386 — 왜 기존 기기에 2.0이 자동 설치되지 않나요? 업데이트 화면에는 앱이 최신이라고 나오고, F-Droid 앱을 직접 검색해도 Android API 제한 때문에 자동 업데이트할 수 없다는 메시지가 나옵니다. 수동 업데이트를 안내할 수는 없나요?
    • @luoc — 공지에 따르면 이제 막 순차 배포를 시작한 것 같습니다.

원문: F-Droid / 번역·요약: Trawling