人気のパッチ適用プラットフォームFlexの開発者であり、脱獄コミュニティでも高い評価を得ているジョン・コーツ氏が今週、新たな取り組み「Limitless」の初公開を発表しました。現在ベータ6となっているこの野心的なオープンプロジェクトは、Cydiaの従来の機能に新機能を追加することを目指しており、従来のパッケージインストーラーが直面する制約(例えば、iOS 2.0まで遡るすべてのiOSのバージョン互換性など)の一部をCydiaから解放することを目指しています。
最近では、Cydiaのインターフェースと機能セットが時代遅れになりつつあると指摘し、アプリケーションに追加できる点を提案する人が増えています。しかしながら、いくつかの注目すべき例外を除き、Cydiaの開発者であるジェイ・フリーマン氏(Saurik氏)は、これらの機能の追加を概ね拒否しています。
上記は、リクエストに応じて Cydia に統合された変更の例です。最初の画像は、iOS 6 以降の美観に合わせて UI が更新された Cydia のホームページのビフォーアフターです。2 番目の画像は、同じ新しいデザイン言語を示す Cydia インストール ページのビフォーアフターです。この 2 番目の画像では、Saurik が Cydia に加えたもう 1 つの大きな変更、つまりプログラムがルートではなくモバイルとして実行されるという証拠も示されています。この結果、Cydia アプリケーション自体に初めて調整を加えることができました。最後のスクリーンショットに表示されている半透明のインストール画面は、調整 Pheromone によるものです。したがって、Cydia の開発が完全に停止しているわけではなく、ユーザーのリクエストが満たされることもありましたが、私の経験では、これは多くの場合例外でした。
Saurik氏は、コミュニティに対し、この決定を様々な理由から幾度となく正当化してきました。主な理由は、脱獄エコシステムの合法性維持への懸念と、Cydiaが脱獄可能なあらゆるデバイスと完全に同時に互換性を保つことへの要望です。これらの目標は一見すると称賛に値するものであり、Cydiaが脱獄において中心的かつ永続的な役割を果たしてきたことに貢献してきましたが、前者を強制する理由と後者を強制する必要性については議論が続いています。
議論されているように、Saurik氏は、Cydia開発用の自作ツールチェーンは本質的に時代遅れであり、Appleの特定のソフトウェアライセンス制限よりも古いものとなっているため、Appleとのソフトウェアに関する法的契約違反を回避できていると考えている。この契約違反は、アプリケーションとしてのCydia、そしてジェイルブレイク全般に対するAppleの反対の根拠となる。一方で、Saurik氏自身も、近年この考え方は「理論上」というより「実際」になっていることを認めており、Xcodeツールは利便性のためにCydia開発に使用されてきたが、少しの手間をかけなければ実現できないような成果が得られなかったと述べている。Coates氏はまた、iOSデバイスを使用することでiOSソフトウェアライセンス契約に同意したことになる ので、この論理は意味をなさないかもしれないと指摘している。なぜなら、既に関連規約に違反している可能性があり、Xcodeを使用して開発してもAppleの規約違反には何の影響も及ぼさないからだ。これは、Cydia開発の合法性に関する彼らの議論における現状を要約している。
この点に関しては、個人的にはコーツ氏の主張に賛同します。その理由は以下のとおりです。彼が述べているように、iOSデバイスの使用に関する包括的な契約は、サウリック氏が回避しようとしている行為を既に制限しています。さらに、AppleはジェイルブレイクのDMCA適用除外資格についてあらゆる機会に異議を唱えてきました(いずれの訴訟でも敗訴し、ジェイルブレイクの基本的な合法性は確保されています)。しかし、ジェイルブレイクを行う個人や、それを支援するソフトウェアの開発者に対して訴追された実績はありません。したがって、Appleのソフトウェアの最新バージョンを使用することで、法的に足かせをはめられるか、突然その運営を停止する能力と意志を持つかの違いが生じる可能性は低いでしょう。もしAppleが本当にCydiaの開発に終止符を打ちたいのであれば、その法的影響力と既存の利用方法だけで十分であり、コーツ氏が提案する利用方法の変更は、もはや歯止めとなるような決定的なものではないでしょう。
全体的に見て、Apple が伝統的に在宅勤務によるイノベーションに親和性があること、一部の熱狂的なファンを遠ざけたり批判を招いたりしたくないという願望があること、自社の標準 iOS に何度もジェイルブレイクのアイデアを移植していること、ジェイルブレイクが DMCA の適用除外となっていること、ジェイルブレイクのリリースによってバグが開示され OS が強化されることの価値、ジェイルブレイクされたデバイスのすべてのユーザーをシャットダウンするコストと困難さなど、漠然としたさまざまな要因が重なり、このアプローチを思いとどまらせるには十分であるように思われます。その代わりに、そして何年も前から、Apple は個別の個別のケースを法廷に持ち込むのではなく、発生するジェイルブレイクにパッチを当て、可能な限り最高レベルかつ最も広範な法的レベルで合法性を争うことを決定しているようです。
これは非常に複雑な問題であり、私は決して弁護士ではありませんが、このCydiaのフォークが現在のものよりも根本的な違反を犯したり、Appleのポリシーに影響を与えたりする可能性は低いように思われます。とはいえ、Saurik氏は長年にわたり、Jailbreakの存続に多大な時間と専門知識を費やしてきました。そして、Cydiaが存続するためには、Appleに「違法製品」であるという点で影響力を与えないようにしなければならないという彼の主張は、それ自体が理にかなっています。Coates氏の修正案がこの点で本当に違いを生むかどうかは、両者の相違点です。
2つ目のポイント、Cydiaの包括的な互換性については、理解がはるかに容易で、意見の相違に過ぎません。Saurik氏は、Cydiaがモノリシックであり、iOS 2.0以降のすべてのデバイスで1つのバージョンを実行することを望んでいます。これは、新しいiOSバージョンやデバイスでの機能セットを制限することになります。そのため、アプリケーションの3Dタッチサポートなど、必然的にこれを妨げる機能の要求は、これまで無視されてきました。Saurik氏がCydiaは新しいAPIを利用できることを強調し、iOS 2.0 SDKに基づくツールチェーンが新機能の追加不足の要因ではないと強調していることは興味深い点ですが、いずれにせよ、これらの機能のサポートがCydiaのロードマップに含まれていないという事実は変わりません。 Cydia は、おそらく古い iOS バージョン用のレガシー バージョンを保持し、最新の iOS リリースのみをサポートする新しいエディションが、より豊富な機能、更新された UI、再調整されたバックエンドを備えて成長し続けるように、断片化に備える必要があると考える人が増えています。
Limitlessはまさにこの精神に基づいて立ち上げられました。Coates氏はGitHubページでプロジェクトの目標を 以下のように定めています。
- コミュニティから要求された機能を導入します。
- 脱獄コミュニティの将来のビジョンを策定し、そのビジョンに基づいて実行します。
- Cydia コードベースをクリーンアップします。
- 統合する意味のある Cydia のバックポート機能。
現時点では、コーツ氏は既存のCydiaとの関係において、これらのアイデアを非常に慎重に実現しようとしている点に留意すべきです。彼の目的は、プロセスをよりアクセスしやすいものにすることでCydiaの開発を刺激し、成功した機能をサウリック氏の許可を得た場合にのみCydiaにバックポートすることです。また、コーツ氏は、前述の懸念事項に対処するため、サウリック氏に開発への積極的な参加を要請したようです。しかし、サウリック氏がこのプロジェクトを容認したり、参加したりする意思を示していないため、現時点では実現しそうにありません。コーツ氏は、サウリック氏が過去に意見の相違があった複数の開発者をコーツ氏が採用したと主張しており、サウリック氏はこれを個人的な侮辱と捉えているようです。サウリック氏は自分が望まない人とは仕事をしないかもしれませんが、これがコーツ氏に対する正当な批判かどうかは分かりません。コーツ氏自身が述べているように、このプロジェクトは貢献を希望するすべての人に開かれており、採用活動は一切行われていません。また、コーツ氏はプロセス全体を通してサウリック氏の足を引っ張らないよう、あらゆる努力を払ってきました。また、過去に Saurik 氏が意見の相違を抱いた開発者たちは、まさに Cydia の刷新に取り組む機会を喜んでいた人たちであり、それが彼らが意見の相違を抱いた理由である可能性もある。
Saurik氏の立場は難しい。長年にわたりコミュニティから多くの恩知らずな扱いを受けてきたSaurik氏は、Cydiaの法的立場を強固に保つよう常に気を配ってきた。その結果、彼はエコシステムの唯一のヒーローであると同時にスケープゴートにもなり、他の貢献者やコミュニティ全体に対しても警戒心を抱くようになったようだ。しかしながら、Coates氏の現在の動機は有益で善意に満ちており、彼のアプローチは敬意と礼儀正しさに満ち、その目的は控えめであるように思える。関係する開発者の個人的な経歴に焦点を当てるのではなく、両者の間である程度の協力関係が築かれなければ、それは残念なことである。この状況が、たとえ敵意のない均衡状態、たとえLimitlessが支障なく開発を進め、Saurik氏が費用や責任を負うことなく価値のあるバックポートを受け入れるような基本的なレベルまで、収束することを期待している。
Limitlessの現在の設計目標は、Cydiaとの機能の同等性を実現しつつ、より現代的なスタイルへのコードリファクタリングを完了することです。その後、機能追加を検討しますが、現時点では3D TouchのサポートとUIの再設計のみが予定されています。機能に関するリクエストはGitHubのIssueページで受け付けており、現在、興味深いリクエストが多数寄せられています。また、同じGitHubページでプロジェクトのコーディングに直接貢献することも可能です。チャットグループへの参加はこちらから可能です。
Limitlessの最新リリースをご覧になりたい方は、Coates氏のリポジトリからベータ版をダウンロードできます。重要な開発が進むにつれて、進捗状況をレポートしていきます。現時点では、アプリケーションの外観はCydiaとほぼ同じですが、ベータ版は定期的にリリースされているので、今後の開発にご期待ください。
Limitlessが脱獄体験にどのような変化をもたらすのか、今から楽しみです。長年見てきた類似の試みよりも、Limitlessはより有望だと考えているからです。常に開発が進められているiMods や有料サブスクリプションアプリのExtensifyは 、今のところあまり普及していないようですが、その理由も理解できます。ある意味、Saurik氏が開発したCydiaのモデルは他に類を見ないものです。Debianベースのパッケージインストーラーシステムは柔軟かつオープンで、開発者がホストしたいリポジトリを自由に追加できます。これこそがCydiaの成功の核心であり、Limitless(Cydiaのフォークとして当然ですが)が他のアプリにはない、あるいはむしろ排除しようとしている点です。このコア機能を維持しながら、開発をレガシーデバイスから切り離すことで、Limitlessが脱獄というコンセプトで何か面白いことを成し遂げ、よりモダンでパワフルなユーザーエクスペリエンスを生み出すことを期待しています。今後の展開は、時が経てば分かるでしょう。
Limitlessの目標についてどう思いますか?また、もう試してみましたか?この開発プロジェクトについてのご意見を、ぜひ下のコメント欄でお聞かせください。