web-dev-qa-db-ja.com

電話で実行されている真のオープンソースのみのOSを入手しますか?アンドロイド?

私はたくさん読んで、両方の意見を聞きましたが、Androidに関してはまだ少しクラウドにあります。 AndroidはオープンソースのOSですが、携帯電話を購入すると、明らかにオープンソースではないGoogleサービスやアプリがプリロードされており、そのようなレベルで統合されているため、削除できません。それらを「無効にする」だけです。

Androidが本当にオープンソースである場合、モバイルプラットフォームで100%オープンソースコードのOSを実行するように、独自のイメージをコンパイルして携帯電話にフラッシュできますか?

(私は、すべてのコードがオープンソースであり、エンドユーザーが利用できるDebianの考え方を考えています)

3
TrevorKS

はいといいえ。

https://www.lineageos.org/ を実行して、完全にFOSSオペレーティングシステムを作成できます。あなたはまだある種のアプリマーケットプレイスが欲しいでしょう。 LineageOS電話に「ギャップ」を置くか、 https://f-droid.org/ を使用できます。

ただし、「Debianの考え方を考える」と、これは2001年にラップトップでLinuxを実行するようなものです。ファームウェアまたはハードウェアドライバー用のクローズドソースコンポーネントが必要になる場合があります。

2
Jon Wolski

考慮すべきいくつかの側面があります...

  1. はい、Androidはオープンソースです。少なくとも Androidオープンソースプロジェクト によって提供されます。しかし、あなたがますます言及するようにプラットフォームの機能の一部は、Googleサービスでは非オープンソースコンポーネントegとして提供されています。これには、スワイプキーボードなどの基本的な機能が含まれます。 Android Autoなどの複雑なサブシステム。ほとんどの電話のカーネルには、ソースコードが利用できない独自のモジュールが含まれています...

  2. はい、Androidの独自のバージョンを再構築できます。たとえば、 LineageOSビルド手順 を参照してください(サポートされているデバイスを検索すると、ビルド手順が見つかります)。

  3. ビルドを電話にフラッシュできるかどうかは、使用している電話の特定のモデルによって異なります。多くの携帯電話は、オペレーティングシステムがメーカーによって署名されていない画像に置き換えられるのを防ごうとしています。それらを点滅させることは、誰かがハックを見つけることに依存しています。 LineageOSにも手順があります サポートされているデバイスについては、Androidフォーラムで他のデバイスを見つけることができます。

結果が完全にオープンソースになることはめったにありません。前述のように、カーネルには通常、プロプライエタリブロブが含まれています。つまり、メーカーが出荷したバージョンに固執することが多く、通常、プロプライエタリファームウェア(ブートファームウェアを含む)が多数あります。 レプリカント (自由とセキュリティに重点を置いたAndroidバリアント)および postmarketOS ()など、これに対処しようとするプロジェクトがあります。 Alpine Linuxベースの電話に最適化されたディストリビューションで、驚くほどの量のハードウェアをリバースエンジニアリングでサポートしています。これらはどちらも古い電話を対象としているため、関係がない可能性があります。

アプリケーション側では、F-Droid すべてのホストアプリケーションを構築する方法を文書化しています

したがって、多くの電話で大部分がオープンソースのシステムを実行することは確かに可能ですが、ほとんどの場合、それでも妥協点です。特に、電話のセキュリティストーリーは本当に悪いです。 LineageOSは、サポートされているデバイスで関連するCVEを追跡しようとしていましたが、数千あり、 当面は停止しています

2
Stephen Kitt