GNOME開発者でRedHatエンジニアリングマネージャーのJiriEischmannによって発見された、最近のFedora Workstationのクラッシュや、GNOME Shellに関するその他の問題は、JavaScriptで記述されたGNOMEShell拡張機能にまでさかのぼります。
JavaScriptでGNOMEシェル拡張機能を記述できることは、参入障壁の低い興味深い概念と見なされてきましたが、実際にはGNOMEデスクトップ環境内のユーザーに問題を引き起こしているようです。さらに悪いことに、現在のGNOME Shell環境はデフォルトでMutterコンポジターを使用してWaylandになっているため、画面が空白になるなどの問題が発生するGNOME X.Orgセッションと比較すると、かなりハードなクラッシュが発生します。
幸い、Jiri Eischmannには、この状況を改善するためのいくつかのアイデアがあります。これは、次のように要約できます。
- シェルが激しくクラッシュしたとき(再起動できなかったとき)、拡張機能は無効にされていました。 Waylandではすべてのクラッシュの結果であるため、GSがクラッシュするたびにそれを行う必要があります。また、ユーザーがGNOME Tweak Toolに戻って拡張機能を再度有効にすると、デスクトップがクラッシュしたのはサードパーティの拡張機能の1つである可能性が高いことを伝え、有効にする場合は注意が必要です。
- GNOME ShellとMutterの分離、またはXorgと同じ動作を取り戻すその他の手順:GSのクラッシュによってすべてが停止するわけではありません。これにはアーキテクチャの大幅な変更と多くの作業が必要であり、GNOME Shell andMutter開発者コミュニティはすでに多くのことを行っています。
- 無制限の拡張機能を廃止し、GSコード自体にホットパッチを適用する代わりに使用できる制限付きAPIを導入します。これは、既存の拡張機能の多くを再度実装することが不可能になることを意味するため、非常に人気のない手順になります。しかし、それは将来避けられなくなるかもしれません。