世界を動かす技術を、日本語で。

F-Droidのビルドサーバーは、古いCPUのために最新のAndroidアプリをビルドできません

2025年8月13日

概要

  • 2025年8月7日以降、F-Droid上の多くのAndroidアプリでビルド問題が発生
  • 原因はAndroid Gradle Plugin(AGP)8.12.0のaapt2バイナリが新しいCPU命令を必須化
  • F-Droidのビルドファームがこれら命令に非対応で、数百のアプリに影響
  • ダウングレードやプロファイル無効化など回避策が必要
  • ユーザー・開発者双方に混乱と負担が発生

F-DroidにおけるAndroidアプリのビルド問題(2025年8月)

  • 2025年8月7日、 F-Droid 上の多くの Androidアプリ でビルド不可問題が発生

  • Android Gradle Plugin(AGP)8.12.0 または Gradle 9.0 を利用するアプリが主な対象

  • 原因は、 Google製aapt2バイナリSSE4.1SSSE3 などのCPU命令を必須化

  • F-Droidの ビルドファームのハードウェア が、これらCPU命令に非対応

  • 過去(2021年)にも AGP 4.1.0 で同様の問題が発生した前例

具体的な影響事例

  • オープンソースアプリ MBCompass で同様のビルド失敗を確認
  • AGP 8.11.1Gradle 8.13 へダウングレードで一時的にビルド可能
  • それでも AGPのbaseline profile再現性バグ でF-Droid側はビルド失敗
  • 最終的な回避策は baseline profilesの無効化 と再リリース
  • この対応により、短期間で複数の「メンテナンス」版リリースが必要
  • ユーザーの混乱、開発者の工数増加

問題の本質と今後の課題

  • インフラ側の制約 による開発・リリースフローの複雑化
  • アプリ開発者が ハードウェア非依存 でビルドできる仕組みの必要性
  • F-DroidGoogle による協調的な対応策の模索
  • ユーザー・開発者双方が安心して利用・開発できるエコシステムの維持

Hackerたちの意見

参考リンク: F-Droidの管理者問題: https://gitlab.com/fdroid/admin/-/issues/593 Catimaの例: https://github.com/CatimaLoyalty/Android/issues/2608 MBCompassのケース: https://github.com/CompassMB/MBCompass/issues/88

Catimaのスレッドを見てると、F-Droidってすごく扱いづらいコミュニティみたいに感じるね。これは一人のコメントと他の人たちの同意を基にしてるだけで、実際の知識や経験からじゃないけど。 >「でも、F-Droidに関してはいつもそうなんだ。何を言っても無駄な耳に届かない。」だから、もう無駄に時間を費やしたくないな。もし問題を提起して解決策を話し合うことでF-Droidが改善できると思ってたら、何年も時間とエネルギーを注いだ後にフラストレーションでプロジェクトを去ることはなかっただろうな。

これはかなり心配だね。特に今のところ、FDroidは非GoogleのAndroidストアの中で圧倒的に大きいから、Googleに対する気持ちに関係なく、これは本当に必要だと思う。これを解決するための計画を知ってる人いる?FDroidはサーバーを更新するのかな?Googleは要件を撤回する方向で動いてる?(これに関してはちょっと難しそうだけど)

確かにちょっと心配だけど、F-Droidはボランティアで運営されてるコミュニティプロジェクトだってことを忘れないでね。特にEUのいくつかの国がオープンソースソフトウェアに移行してるから、F-Droidのようなプロジェクトに公的資金が見られるといいな。

「FDroidは現在、非GoogleのAndroidストアの中で圧倒的に大きい。」サムスンのギャラクシーストアの方がずっと大きいよ。

「FDroidは現在、非GoogleのAndroidストアの中で圧倒的に大きい。」トップ10に入ってるかすら疑わしいね。

もしf-droidが大事なら、寄付して新しいビルドサーバーを買えるようにしたら?

F-Droidが実際にその命令セット拡張が登場する前のハードウェアで動いているのはかなり信じがたいね。最近は、そういうハードウェアが非常に稀になってきてるから、デフォルトで広く採用されてるんだよ。F-Droidがその命令をサポートしていないように設定されたVMを使ってるだけじゃないか、確かにそれはないの?

https://en.wikipedia.org/wiki/Streaming_SIMD_Extensions#Late... 私の最後の、かなり古いデスクトップでもこれをサポートしてたし、ほぼ10年使ってから交換されたんだ。でも同時に、非アセンブリでのフォールバックパスも提供しないの?

でも同時に、非アセンブリでフォールバックパスすら提供しないの? ここで問題になってるのは手書きのアセンブリじゃなくて、x86_64-v2をターゲットにしたコンパイラのことだと思う。RHEL 9やその派生版は、そういうオプションでビルドされてるし。(RHEL 10では最低スペックがx86_64-v3に引き上げられて、AVXが使えるようになった。)

問題を見てみると、彼らのビルダーはOpteron G3(K10?)みたいだね。[0] https://en.wikipedia.org/wiki/AMD_10h

フォールバックを提供する問題はテストだね。使える合理的なハードウェアがないから、全部古くて遅いって言ってる通りだよ。

Hacker Newsで議論の続きを見る