「Wayland」の版間の差分
細 (文字列「[[zh-CN:」を「[[zh-hans:」に置換) |
(同期) |
||
11行目: | 11行目: | ||
{{Related|カーソルテーマ}} |
{{Related|カーソルテーマ}} |
||
{{Related articles end}} |
{{Related articles end}} |
||
− | '''Wayland''' は Linux の新しいウィンドウプロトコルです。Wayland |
+ | '''Wayland''' は Linux の新しいウィンドウプロトコルです。GNOME や KDE などの主要な Linux デスクトップは Wayland に対応しており、"Weston" という名前のコンポジタのリファレンス実装も存在します。Wayland で昔の X11 アプリケーションを動作させるための互換レイヤーとして [https://wayland.freedesktop.org/xserver.html XWayland] があります。 |
== 要件 == |
== 要件 == |
||
− | 今のところ Wayland は [[KMS]] を利用しているシステムでしか動作できません。 |
+ | 今のところ Wayland は [[KMS]] を利用しているシステムでしか動作できません。また、Wayland はただのライブラリなので、それだけでは使い物になりません。X サーバーを置き換えるには、([[#Weston|Weston]] などの) コンポジタが必要です。 |
− | == |
+ | === バッファ API のサポート === |
− | ほとんどの場合 {{pkg|gtk2}} や {{pkg|gtk3}} の依存パッケージとして既に間接的に Wayland がインストールされているはずです。インストールされていない場合、[[公式リポジトリ]]から {{pkg|wayland}} をインストールしてください。 |
||
+ | GPU ドライバーと Wayland コンポジタは同一のバッファ API に対応している場合に互換性があります。主要な API は2つ存在します: [[Wikipedia:Generic Buffer Management|GBM]] と [http://www.phoronix.com/scan.php?page=news_item&px=XDC2016-Device-Memory-API EGLStreams] です。 |
||
− | == 使用方法 == |
||
+ | |||
− | Wayland はただのライブラリなので、それだけでは使い物になりません。X サーバーを置き換えるには、([[#Weston|Weston]] などの) コンポジタが必要です。 |
||
+ | {| class="wikitable" |
||
+ | |- |
||
+ | ! バッファ API !! GPU ドライバーのサポート !! Wayland コンポジタのサポート |
||
+ | |- |
||
+ | | GBM || [[NVIDIA]] 以外の全てのドライバー || 全てのコンポジタ |
||
+ | |- |
||
+ | | EGLStreams || [[NVIDIA]] || [[GNOME]], [[Sway]], Grefsen |
||
+ | |- |
||
+ | |} |
||
== Weston == |
== Weston == |
||
+ | Weston は Wayland コンポジタのリファレンス実装です。 |
||
+ | |||
=== インストール === |
=== インストール === |
||
公式リポジトリから {{pkg|weston}} をインストールする必要があります。 |
公式リポジトリから {{pkg|weston}} をインストールする必要があります。 |
||
40行目: | 50行目: | ||
画面に花を散らすには: |
画面に花を散らすには: |
||
$ weston-flower |
$ weston-flower |
||
− | |||
− | フレームプロトコルをテストするには ({{ic|glxgears}} を実行): |
||
− | $ weston-gears |
||
画像を表示するには: |
画像を表示するには: |
||
49行目: | 56行目: | ||
=== 設定 === |
=== 設定 === |
||
− | キーボードレイアウト・モジュール・UI の設定ファイルの例です。詳しくは {{ic|man weston.ini}} を見て下さい。 |
+ | キーボードレイアウト・モジュール・UI の設定ファイルの例です。詳しくは {{ic|man weston.ini}} を見て下さい。Weston の出力設定は {{ic|xorg.conf}} のモニターと多少異なります: |
+ | |||
+ | $ ls /sys/class/drm |
||
+ | card0 |
||
+ | card0-VGA-1 |
||
+ | card1 |
||
+ | card1-DVI-I-1 |
||
+ | card1-HDMI-A-1 |
||
+ | card1-VGA-2 |
||
+ | |||
+ | {{ic|card0}} は使われていない内蔵ビデオアダプタです。追加アダプタ {{ic|card1}} は HDMI と DVI モニターに接続されており、出力名が {{ic|HDMI-A-1}} と {{ic|DVI-I-1}} です。 |
||
+ | |||
{{hc|~/.config/weston.ini|<nowiki> |
{{hc|~/.config/weston.ini|<nowiki> |
||
[core] |
[core] |
||
197行目: | 215行目: | ||
=== Qt5 === |
=== Qt5 === |
||
− | {{Grp|qt5}} パッケージは Wayland をサポートしています ({{Pkg|qt5-wayland}} のインストールが必要です)。Wayland プラグインを使って Qt 5 アプリケーションを動作させるには環境変数 {{ic|1=QT_QPA_PLATFORM=wayland-egl}} をセットして下さい。 |
+ | {{Grp|qt5}} パッケージは Wayland をサポートしています ({{Pkg|qt5-wayland}} のインストールが必要です)。Wayland プラグインを使って Qt 5 アプリケーションを動作させるには {{ic|1=-platform wayland}} を使用するか、環境変数 {{ic|1=QT_QPA_PLATFORM=wayland-egl}} をセットして下さい。 |
===Clutter=== |
===Clutter=== |
||
− | Clutter ツールキットには Wayland バックエンドがあり、Clutter を Wayland のクライアントとして動作させることが可能です。このバックエンドは |
+ | Clutter ツールキットには Wayland バックエンドがあり、Clutter を Wayland のクライアントとして動作させることが可能です。このバックエンドは {{Pkg|clutter}} パッケージで有効になっています。 |
Clutter アプリを Wayland 上で動作させるには、環境変数 {{ic|CLUTTER_BACKEND=wayland}} を設定する必要があります。 |
Clutter アプリを Wayland 上で動作させるには、環境変数 {{ic|CLUTTER_BACKEND=wayland}} を設定する必要があります。 |
||
213行目: | 231行目: | ||
=== GLFW === |
=== GLFW === |
||
+ | GLFW で Wayland バックエンドを使用するには、({{Pkg|glfw-x11}} の代わりに) {{Pkg|glfw-wayland}} パッケージをインストールしてください。 |
||
− | バージョン 3.1 から wayland を試験的にサポートしています。コンパイルフラグで有効にします。cmake のフラグに {{ic|-DGLFW_USE_WAYLAND=ON}} を追加してください。AUR からパッケージ {{AUR|glfw-wayland-git}} をインストールすることもできます。 |
||
===EFL=== |
===EFL=== |
||
228行目: | 246行目: | ||
Gnome Wayland セッションを起動するには、GDM ログインマネージャを使用する必要があります。ログインする前に "Gnome on Wayland" セッションを選択してください。 |
Gnome Wayland セッションを起動するには、GDM ログインマネージャを使用する必要があります。ログインする前に "Gnome on Wayland" セッションを選択してください。 |
||
− | |||
− | ===Hawaii=== |
||
− | [[Hawaii]] の記事を見て下さい。 |
||
===Enlightenment=== |
===Enlightenment=== |
||
256行目: | 271行目: | ||
[https://github.com/giucam/orbital Orbital] は Qt5 と Weston を使用する Wayland コンポジタ・シェルです。このプロジェクトではシンプルでありながら柔軟性のある見た目の良い Wayland デスクトップを作成することを目標としています。Orbital は完全装備の DE ではなく、どちらかと言えば [[Awesome]] や [[Fluxbox]] のような X11 におけるウィンドウマネージャに似ています。 |
[https://github.com/giucam/orbital Orbital] は Qt5 と Weston を使用する Wayland コンポジタ・シェルです。このプロジェクトではシンプルでありながら柔軟性のある見た目の良い Wayland デスクトップを作成することを目標としています。Orbital は完全装備の DE ではなく、どちらかと言えば [[Awesome]] や [[Fluxbox]] のような X11 におけるウィンドウマネージャに似ています。 |
||
− | === |
+ | === Liri Shell === |
− | [https://github.com/ |
+ | [https://github.com/lirios/shell Liri Shell] は [[Liri]] のデスクトップシェルであり、Wayland のコンポジタとして QtQuick と QtCompositor を使用して作られています。 |
=== Maynard === |
=== Maynard === |
||
270行目: | 285行目: | ||
=== Way Cooler === |
=== Way Cooler === |
||
{{AUR|way-cooler}} は Rust で書かれた (Lua の設定ファイルによる) 豊富な設定を持つ Wayland コンポジタです。i3 と awesome の影響を受けています。 |
{{AUR|way-cooler}} は Rust で書かれた (Lua の設定ファイルによる) 豊富な設定を持つ Wayland コンポジタです。i3 と awesome の影響を受けています。 |
||
+ | |||
+ | === Maze Compositor === |
||
+ | |||
+ | [https://github.com/capisce/mazecompositor Maze Compositor] は 3D の Qt ベースの Wayland コンポジタです。 |
||
+ | |||
+ | === Grefsen === |
||
+ | |||
+ | [https://github.com/ec1oud/grefsen Grefsen] はミニマルなデスクトップ環境を実現する Qt/Wayland コンポジタです。 |
||
==トラブルシューティング== |
==トラブルシューティング== |
||
+ | |||
+ | === root でグラフィカルアプリケーションを実行 === |
||
+ | |||
+ | Wayland セッションで [[su]], [[sudo]], [[polkit|pkexec]] を使って root でグラフィカルアプリケーション (例: [[GParted]] や [[Gedit]] など) を実行しようとした場合、以下のようなエラーが表示されます: |
||
+ | |||
+ | {{bc|$ sudo gedit |
||
+ | No protocol specified |
||
+ | Unable to init server: Could not connect: Connection refused |
||
+ | |||
+ | (gedit:2349): Gtk-WARNING **: cannot open display: :0 |
||
+ | }} |
||
+ | |||
+ | Wayland 以前では、特権による GUI アプリケーションの実行は [[Polkit]] ポリシーを作成して正しく実装するか、あるいはターミナルでコマンドの前に {{ic|sudo}} を付けて危なっかしく実行するようになっていましたが、(X)Wayland ではデフォルトでこのようなことはできなくなっています。クライアントの接続を許可されるのは X サーバーを起動したユーザーだけです ([https://bugzilla.redhat.com/show_bug.cgi?id=1266771 バグレポート] や [https://cgit.freedesktop.org/xorg/xserver/commit/?id=c4534a3] [https://cgit.freedesktop.org/xorg/xserver/commit/?id=4b4b908], [https://cgit.freedesktop.org/xorg/xserver/commit/?id=76636ac] を参照)。 |
||
+ | |||
+ | 回避策としては [[xhost]] を使うことで root ユーザーに対して一時的にローカルユーザーの X セッションへのアクセスを許可できます。非特権ユーザーで以下のコマンドを実行してください [https://bugzilla.redhat.com/show_bug.cgi?id=1274451#c64]: |
||
+ | $ xhost si:localuser:root |
||
+ | |||
+ | アプリケーションを閉じた後に許可を取り消すには: |
||
+ | $ xhost -si:localuser:root |
||
+ | |||
+ | {{Note|1=[https://bugzilla.gnome.org//show_bug.cgi?id=772875 GNOME のバグレポート] では他にも2つの方法が提案されており、片方はテキストファイルの編集で使えます。}} |
||
=== LLVM assertion failure === |
=== LLVM assertion failure === |
||
280行目: | 324行目: | ||
$ export EGL_DRIVER=/usr/lib/egl/egl_gallium.so |
$ export EGL_DRIVER=/usr/lib/egl/egl_gallium.so |
||
+ | === 動作が遅い、表示がおかしい、クラッシュする === |
||
− | === 1.7 にアップデートしてから Weston が起動しない === |
||
+ | Gnome-shell で X から Wayland に切り替えるとグラフィック表示に問題が発生することがあります。原因として Xorg ベースの gnome-shell 用に {{ic|1=CLUTTER_PAINT=disable-clipped-redraws:disable-culling}} が設定されている可能性があります。{{ic|/etc/environment}} などの rc ファイルから該当箇所を削除してみてください。 |
||
− | おそらく {{ic|weston.ini}} によって {{ic|desktop-shell.so}} モジュールがロードされているのが原因です。以前はこのモジュールが必要でしたが、現在は要らなくなっています。 |
||
− | |||
− | モジュールを削除するには、以下のようになっている行を探して: |
||
− | {{hc|~/.config/weston.ini| |
||
− | <nowiki>[core] |
||
− | modules=xwayland.so,desktop-shell.so</nowiki> |
||
− | }} |
||
− | 行から {{ic|desktop-shell.so}} を削除してください: |
||
− | {{hc|~/.config/weston.ini| |
||
− | <nowiki>[core] |
||
− | modules=xwayland.so</nowiki> |
||
− | }} |
||
− | |||
− | === weston+xwayland の chrome/chromium でマウスのクリックが効かない === |
||
− | Chrome/chromium は weston から起動することができますが、キーボードだけが動作し、マウスのクリックが動作しません。これは weston の [https://bugs.freedesktop.org/show_bug.cgi?id=89178 バグ] です。orbment など、他の wayland コンポジタなら Chrome は問題なく動作します。 |
||
==参照== |
==参照== |
||
+ | * [https://fedoraproject.org/wiki/How_to_debug_Wayland_problems Fedora Wiki の Wayland のデバッグに関する記事] |
||
* [https://bbs.archlinux.org/viewtopic.php?id=107499 Arch Linux forum discussion] |
* [https://bbs.archlinux.org/viewtopic.php?id=107499 Arch Linux forum discussion] |
||
− | * [http://wayland.freedesktop.org/docs/html/ Wayland |
+ | * [http://wayland.freedesktop.org/docs/html/ Wayland オンラインドキュメント] |
2017年7月25日 (火) 23:38時点における版
Wayland は Linux の新しいウィンドウプロトコルです。GNOME や KDE などの主要な Linux デスクトップは Wayland に対応しており、"Weston" という名前のコンポジタのリファレンス実装も存在します。Wayland で昔の X11 アプリケーションを動作させるための互換レイヤーとして XWayland があります。
要件
今のところ Wayland は KMS を利用しているシステムでしか動作できません。また、Wayland はただのライブラリなので、それだけでは使い物になりません。X サーバーを置き換えるには、(Weston などの) コンポジタが必要です。
バッファ API のサポート
GPU ドライバーと Wayland コンポジタは同一のバッファ API に対応している場合に互換性があります。主要な API は2つ存在します: GBM と EGLStreams です。
バッファ API | GPU ドライバーのサポート | Wayland コンポジタのサポート |
---|---|---|
GBM | NVIDIA 以外の全てのドライバー | 全てのコンポジタ |
EGLStreams | NVIDIA | GNOME, Sway, Grefsen |
Weston
Weston は Wayland コンポジタのリファレンス実装です。
インストール
公式リポジトリから weston をインストールする必要があります。
使用方法
Weston をインストールしたのなら Wayland をテストする環境が整っているはずです。
起動中の X セッションの中で Weston を実行することができます:
$ weston
もしくは、Weston をネイティブで起動するには、端末を切り替えて次を実行して見て下さい:
$ weston-launch
Weston の TTY からデモを実行できます。ターミナルエミュレータを起動するには:
$ weston-terminal
画面に花を散らすには:
$ weston-flower
画像を表示するには:
$ weston-image image1.jpg image2.jpg...
設定
キーボードレイアウト・モジュール・UI の設定ファイルの例です。詳しくは man weston.ini
を見て下さい。Weston の出力設定は xorg.conf
のモニターと多少異なります:
$ ls /sys/class/drm card0 card0-VGA-1 card1 card1-DVI-I-1 card1-HDMI-A-1 card1-VGA-2
card0
は使われていない内蔵ビデオアダプタです。追加アダプタ card1
は HDMI と DVI モニターに接続されており、出力名が HDMI-A-1
と DVI-I-1
です。
~/.config/weston.ini
[core] # xwayland support modules=xwayland.so [libinput] enable_tap=true [shell] background-image=/usr/share/backgrounds/gnome/Aqua.jpg background-color=0xff002244 panel-color=0x90ff0000 locking=true animation=zoom close-animation=fade focus-animation=dim-layer #binding-modifier=ctrl #num-workspaces=6 ### for cursor themes install xcursor-themes pkg from Extra. ### #cursor-theme=whiteglass #cursor-size=24 ### tablet options ### #lockscreen-icon=/usr/share/icons/gnome/256x256/actions/lock.png #lockscreen=/usr/share/backgrounds/gnome/Garden.jpg #homescreen=/usr/share/backgrounds/gnome/Blinds.jpg #animation=fade ### for Laptop displays ### #[output] #name=LVDS1 #mode=1680x1050 #transform=90 #[output] #name=VGA1 # The following sets the mode with a modeline, you can get modelines for your preffered resolutions using the cvt utility #mode=173.00 1920 2048 2248 2576 1080 1083 1088 1120 -hsync +vsync #transform=flipped #[output] #name=X1 #mode=1024x768 #transform=flipped-270 [input-method] #path=/usr/lib/weston/weston-keyboard [keyboard] keymap_rules=evdev #keymap_layout=gb,de #keymap_options=caps:ctrl_modifier,shift:both_capslock_cancel ### keymap_options from /usr/share/X11/xkb/rules/base.lst ### numlock-on=true [terminal] #font=DroidSansMono #font-size=14 [launcher] icon=/usr/share/icons/gnome/24x24/apps/utilities-terminal.png path=/usr/bin/weston-terminal [launcher] icon=/usr/share/icons/gnome/24x24/apps/utilities-terminal.png path=/usr/bin/gnome-terminal [launcher] icon=/usr/share/icons/hicolor/24x24/apps/firefox.png path=/usr/bin/firefox [launcher] icon=/usr/share/weston/icon_flower.png path=/usr/bin/weston-flower [screensaver] # Uncomment path to disable screensaver path=/usr/libexec/weston-screensaver duration=600
最小の weston.ini
:
~/.config/weston.ini
[core] modules=xwayland.so [keyboard] keymap_layout=gb [output] name=LVDS1 mode=1680x1050 transform=90 [launcher] icon=/usr/share/icons/gnome/24x24/apps/utilities-terminal.png path=/usr/bin/weston-terminal [launcher] icon=/usr/share/icons/hicolor/24x24/apps/firefox.png path=/usr/bin/firefox
XWayland
公式リポジトリから xorg-server-xwayland をインストールしてください。
Weston の中で X アプリケーションを動かすには、Xwayland を使ってリクエストを処理させます。以下の設定ファイルを作成してください:
~/.config/weston.ini
[core] modules=xwayland.so
スクリーンキャスト録画
Weston にはスクリーンキャスト機能が備わっており、Super+r
キーを押すことで録画を開始・停止することができます。スクリーンキャストは Weston のカレントディレクトリ内の capture.wcap
ファイルに保存されます。
WCAP ファイルは Weston 専用のロスレス動画フォーマットで、フレーム間の差異だけを記録しています。記録されたスクリーンキャストを再生するには、WCAP ファイルをメディアプレイヤーが再生できるフォーマットに変換する必要があります。まず、録画した動画を YUV ピクセル形式に変換してください:
$ wcap-decode capture.wcap --yuv4mpeg2 > capture.y4m
作成された YUV ファイルは FFmpeg を使うことで他のフォーマットに変換できます。
HiDPI ディスプレイ
Retina または HiDPI のディスプレイでは以下を使用してください:
~/.config/weston.ini
[output] name=... scale=2
シェルのフォント
Weston はウィンドウのタイトルバーや時計などにデフォルトの sans-serif フォントを使用します。フォントを変更する方法はフォント設定#フォントの置き換えを見て下さい。
GUI ライブラリ
公式ウェブサイト も参照してください。
GTK+ 3
公式リポジトリの gtk3 は Wayland バックエンドが有効になっています。
GTK+ 3.0 から、GTK+ は実行時に複数のバックエンドをサポートできるようになり、Qt の lighthouse と同じ方法でバックエンドを切り替えることができるようになりました。
Wayland と X 両方のバックエンドが有効になっているとき、GTK+ ではデフォルトで X11 バックエンドを使いますが、GDK_BACKEND=wayland
環境変数を設定することでこれを上書きできます。
Qt5
qt5 パッケージは Wayland をサポートしています (qt5-wayland のインストールが必要です)。Wayland プラグインを使って Qt 5 アプリケーションを動作させるには -platform wayland
を使用するか、環境変数 QT_QPA_PLATFORM=wayland-egl
をセットして下さい。
Clutter
Clutter ツールキットには Wayland バックエンドがあり、Clutter を Wayland のクライアントとして動作させることが可能です。このバックエンドは clutter パッケージで有効になっています。
Clutter アプリを Wayland 上で動作させるには、環境変数 CLUTTER_BACKEND=wayland
を設定する必要があります。
SDL
SDL 2.0.2 から実験的に wayland がサポートされており、Arch Linux ではデフォルトで有効になっています。
SDL アプリケーションを Wayland 上で動作させるには、環境変数 SDL_VIDEODRIVER=wayland
を設定する必要があります。
GLFW
GLFW で Wayland バックエンドを使用するには、(glfw-x11 の代わりに) glfw-wayland パッケージをインストールしてください。
EFL
EFL は Wayland を完全にサポートしています。Wayland で EFL アプリケーションを動かすには、Wayland の プロジェクトページ を見て下さい。
ウィンドウマネージャとデスクトップシェル
GNOME
バージョン 3.14 から、GNOME は Wayland を使ってデスクトップを動作させることができるようになりました。Gnome コンポジタは X を使用しなくても動かすことができ、Wayland のシステムコンポジタとして動作します。本番環境で使えるほど安定しているとされていますが、まだサポートされていない機能もいくつか存在します (Gnome のドキュメントを参照)。Gnome デスクトップでは、X を使用するアプリケーションは XWayland で動作します。
Gnome Wayland セッションを起動するには、GDM ログインマネージャを使用する必要があります。ログインする前に "Gnome on Wayland" セッションを選択してください。
Enlightenment
E19 から Wayland に対応していましたが、現在は削除されており、E20 以上が通常の利用に耐えうるほど Wayland で安定動作するとされています。詳しくは [1] を参照。
KDE
KDE#Wayland を見てください。
Loliwm
loliwm は Wayland 用のタイル型ウィンドウマネージャです。
sway
Sway は Wayland 用の i3 互換のウィンドウマネージャです。
Velox
Velox は swc ベースのシンプルなウィンドウマネージャです。dwm と xmonad の影響を受けています。
Orbital
Orbital は Qt5 と Weston を使用する Wayland コンポジタ・シェルです。このプロジェクトではシンプルでありながら柔軟性のある見た目の良い Wayland デスクトップを作成することを目標としています。Orbital は完全装備の DE ではなく、どちらかと言えば Awesome や Fluxbox のような X11 におけるウィンドウマネージャに似ています。
Liri Shell
Liri Shell は Liri のデスクトップシェルであり、Wayland のコンポジタとして QtQuick と QtCompositor を使用して作られています。
Maynard
Maynard は GTK ベースの Weston 用デスクトップシェルクライアントです。Tiago Vignatti によるプロジェクト、weston-gtk-shell に基づいています。
Motorcar
Motorcar は 3D ウィンドウを探検できる wayland コンポジタです。
Way Cooler
way-coolerAUR は Rust で書かれた (Lua の設定ファイルによる) 豊富な設定を持つ Wayland コンポジタです。i3 と awesome の影響を受けています。
Maze Compositor
Maze Compositor は 3D の Qt ベースの Wayland コンポジタです。
Grefsen
Grefsen はミニマルなデスクトップ環境を実現する Qt/Wayland コンポジタです。
トラブルシューティング
root でグラフィカルアプリケーションを実行
Wayland セッションで su, sudo, pkexec を使って root でグラフィカルアプリケーション (例: GParted や Gedit など) を実行しようとした場合、以下のようなエラーが表示されます:
$ sudo gedit No protocol specified Unable to init server: Could not connect: Connection refused (gedit:2349): Gtk-WARNING **: cannot open display: :0
Wayland 以前では、特権による GUI アプリケーションの実行は Polkit ポリシーを作成して正しく実装するか、あるいはターミナルでコマンドの前に sudo
を付けて危なっかしく実行するようになっていましたが、(X)Wayland ではデフォルトでこのようなことはできなくなっています。クライアントの接続を許可されるのは X サーバーを起動したユーザーだけです (バグレポート や [2] [3], [4] を参照)。
回避策としては xhost を使うことで root ユーザーに対して一時的にローカルユーザーの X セッションへのアクセスを許可できます。非特権ユーザーで以下のコマンドを実行してください [5]:
$ xhost si:localuser:root
アプリケーションを閉じた後に許可を取り消すには:
$ xhost -si:localuser:root
LLVM assertion failure
LLVM assertion failure になるときは、この問題が修正されるまで Gallium LLVM なしで mesa をリビルドする必要があります。
これは LLVM を必要とするドライバを無効にしてしまう可能性があります。ハードウェアドライバに問題が発生するときは、以下の export を試して下さい:
$ export EGL_DRIVER=/usr/lib/egl/egl_gallium.so
動作が遅い、表示がおかしい、クラッシュする
Gnome-shell で X から Wayland に切り替えるとグラフィック表示に問題が発生することがあります。原因として Xorg ベースの gnome-shell 用に CLUTTER_PAINT=disable-clipped-redraws:disable-culling
が設定されている可能性があります。/etc/environment
などの rc ファイルから該当箇所を削除してみてください。