Dortania、OpenCore Legacy Patcherを使用した一部のAMD GPUを搭載したMacで発生する描画の不具合に対応するパッチを緊急リリース

Dortania、OpenCore Legacy Patcherを使用した一部のAMD GPUを搭載したMacで発生する描画の不具合に対応するパッチを緊急リリース

ありがとうございます!

ツイートする

OpenCore Legacy Patcher」(OCLP)を開発するDortaniaチームは、AMD GCN (Graphics Core Next)アーキテクチャのGPUを搭載したMacで、Google ChromeやElectronベースのアプリケーション (例: Discord)で発生する描画の不具合をGitHub上で報告、このに対応するための方法を紹介した上で、緊急パッチをリリースしました。

この記事は「あのかぼ」で投稿した「OpenCore Legacy Patcher、一部のMacでGoogle ChromeやDiscordに問題発生 実験的なelectron_patcherが爆誕」のダイジェスト版です。さらに詳しい情報はあのかぼ版をご覧ください。

関連> OpenCore Legacy PatcherのプロジェクトリーダーMykola Grymalyuk氏がMacDevOpsYVR 2024でElectronのセキュリティについて講演
動画> 最新のmacOSがサポートされない古いMacにOpenCore Legacy Patcherを使用してインストールする方法

問題の概要

この問題は、AMD GCN 1.0ベースのGPUを搭載したMacで、Google Chromeのバージョン125以降や一部のElectronベースのアプリケーションを使用する際に発生します。具体的には、以下のような症状が報告されています。

  • UIのグリッチ: ユーザーインターフェースに視覚的な乱れが生じ、正常に操作できなくなる。
  • アプリケーションのフリーズ: アプリケーションが完全にフリーズし、操作を受け付けなくなる。
GitHubより

影響を受ける主なハードウェアは以下の通りです。

  • AMD HD 7000シリーズ
  • FirePro D300/D500/D700(MacPro6,1)
  • R9 M370X(MacBookPro11,5)

対応策とパッチの詳細

Dortaniaチームはこの問題の暫定的な回避方法と、発表の翌日(12日)には問題に対応するための緊急パッチをリリースしました。このパッチは、影響を受けるシステムにOpenGLレンダリングを強制することで、問題を回避する仕組みとなっています。

対応策

影響を受けているユーザーは、以下の手順に従うことで問題を回避することができます。

▼ Google Chromeの修正 (パッチを使用しない方法)

  1. Google Chromeを(Terminal)から次のコマンドで起動します。
    • open /Applications/Google\ Chrome.app --args --use-angle=gl
  2. Google Chromeの起動を確認し、不具合が発生しないことを確認したらGoogle Chromeのアドレスバーに「chrome://flags/#use-angle」と入力します。
  3. “Choose ANGLE graphics backend”のプルダウンメニューから「OpenGL」に切り替えます。

▼ Discord およびその他の Electron アプリケーション (パッチを使用しない方法)

Electronベースのアプリケーションの場合にはUIを操作できなくなる問題が発現される可能性があることがあります。

ただしDiscord やその他の Electron ベースのアプリケーションはGoogle Chromeのようなフラグの設定をサポートしていない可能性があるためmacOSに搭載されている「Automator」を使用して操作を自動化する方法が紹介されています。

Automator

Automatorを使用した主な作業

「Automator」で適切なパス (この場合は Discord) を使用してシェル スクリプトを作成し、アプリを保存して、作成したアイコンを使用して起動します。

open /Applications/Discord.app --args --use-angle=gl

▼ 実験的なパッチ (スクリプト)を使用して解決する方法

  • 準備
    1. MacにPython 3.11以降をインストール
    2. スクリプトをダウンロード (electron_patcher.py)
  • 使用方法
    1. ターミナル(Terminal)を開く
    2. ターミナルで以下を実行(electron_patcher.py存在する場所に合わせて調整します。例
      ~/Downloads/electron_patcher.py)
      • python3 electron_patcher.py
GitHubより

調査は継続

Dortaniaチームは、この問題について引き続き調査を行っていますが、完全な修正には時間がかかる可能性があります。現在のところ、正式な修正パッチのリリース時期については明確な見通しは立っていません。

なお、現在OpenCore Legacy Patcherを開発するDortaniaは今年秋に公開予定のmacOS Sequoiaのサポートに向け開発を進めていることも明らかにしています。

弊サイト(おんかぼ)と姉妹メディア(あのかぼ)では引き続き、OpenCore Legacy Patcherの最新情報やmacOS Sequoia関連のニュースを紹介していきます。記事の更新については、かぼしーのTwitterアカウントHumin.meで紹介しますので、ぜひフォローいただけると幸いです。