Steam Deck は、ゲームパッドを内蔵した小型ゲーミング PC です。従来の PC のような “Desktop Mode” に加え、ゲーム機に近い体験を提供する “Gaming Mode” を備えています。しかし、Steam 以外で購入したゲームや、SteamOS 標準の Proton レイヤーではまだ動作しないゲームをまったく使わずに済ませるのは難しいでしょう。そのため、2 つのモードを頻繁に行き来することになります。小さな 7 インチ画面で Desktop Mode を操作するのは快適とは言えず、画面の半分を占有する仮想キーボードを避けるなら物理キーボードも必要です。ゲームをするだけにしては、ずいぶん手間がかかります。
幸い SteamOS 3.x は Arch Linux をカスタマイズしたものなので、既存の Linux ツールを使い、普段のコンピュータからリモート操作することで作業を楽にできます。
Desktop Mode に切り替える
Steam 以外のソフトウェアをインストールするには、Desktop Mode に切り替える必要があります。Steam Deck の ボタンを押し、メニューから “Power > Switch to Desktop” を選択します。
ボタンを押し、Power > Switch to Desktop を選択します。
ユーザーパスワードを設定する
Desktop Mode の標準ユーザーアカウント(deck)にはパスワードが設定されていません。後の手順で必要になるため、先に設定します。SteamOS のグラフィカルインターフェース(GUI)から設定できます。この作業には外付けキーボードがあると便利ですが、なければゲームパッドの +
ボタンでスクリーンキーボードを表示できます。
“Application Launcher > Settings > System Settings > Users > Your Account > Change Password” からパスワードを設定します。
CLI を使いたい場合は、Konsole(”Application Launcher > System > Konsole“)で passwd コマンドを実行しても設定できます。入力中のパスワードは画面に表示されません。入力し終えたら [Enter] キーを押してください。
(deck@steamdeck ~)$ passwd
New password:
Retype new password:
passwd: password updated successfully
Secure Shell(SSH)を有効にする
Wikipedia では次のように説明されています。
Secure Shell(SSH)プロトコルは、安全でないネットワーク上でネットワークサービスを安全に利用するための暗号化ネットワークプロトコルです。代表的な用途は、リモートログインとコマンドラインの実行です。
SteamOS には SSH サービスが組み込まれていますが、セキュリティ上の理由から初期状態では無効です。コンピュータから CLI で Deck をリモート操作したい場合は有効にできます。この手順は任意です。
有効にするには Konsole で次のコマンドを実行し、求められたら前の手順で設定したパスワードを入力します。
(deck@steamdeck ~)$ sudo systemctl enable sshd.service
Created symlink /etc/systemd/system/multi-user.target.wants/sshd.service → /usr/lib/systemd/system/sshd.service.
(deck@steamdeck ~)$ sudo systemctl start sshd.service
“enable” は次回の起動時からサービスを自動起動する設定で、”start” は現在のセッションでサービスを起動する操作です。無効化または停止するには、コマンドの enable/start をそれぞれ disable/stop に置き換えます。セキュリティのため、使用しないときは無効にしておくことを勧めます。
Decky Loader
SteamOS を更新すると /home 以外のシステム変更は元に戻るため、更新のたびに設定をやり直す必要があります(参考までに、SteamOS は最初の 1 年間で 90 回更新されました)。繰り返し作業を避けたい場合は、”Decky Loader” と “System Toolbox” プラグインを導入すると、Gaming Mode から直接 SSH のオン/オフを切り替えられ、システム更新を気にせずに済みます。
Decky Loader の System Toolbox プラグイン。
Virtual Network Computing(VNC)を設定する
Wikipedia では次のように説明されています。
Virtual Network Computing は、Remote Frame Buffer プロトコルを使って別のコンピュータを遠隔操作する、グラフィカルなデスクトップ共有システムです。キーボードとマウスの入力を一方のコンピュータからもう一方へ送り、画面の更新をネットワーク経由で転送します。
つまり、コンピュータから Steam Deck の Desktop Mode の画面をリモート操作できます。現在の SteamOS には VNC サーバーが組み込まれておらず、Flathub のアプリストアでも提供されていません。そのため、Arch Linux のパッケージマネージャである pacman を使ってインストールします。
この作業は手間がかかり、システム更新のたびに繰り返す必要があるため、専用のスクリプトを用意しました。次のコマンドを Konsole にコピー&ペーストして実行してください(インターネット接続が必要です。GitHub の URL は長いので、Steam Deck のブラウザでこの記事を開いてコピーするか、SSH 経由で実行すると便利です)。
sh -c "$(curl -fsSL https://gist.githubusercontent.com/x43x61x69/9a5a231a25426e8a2cc0f7c24cfdaed9/raw/vnc_install.sh?$RANDOM)"
スクリプトは再インストール用のショートカットを作成するため、次回からこのコマンドを貼り付ける必要はありません。完了するとデスクトップに新しい “VNC” フォルダが現れ、必要な機能のショートカットが格納されます。必要なものをダブルクリックして使います。たとえば “Start VNC” をダブルクリックすると VNC サーバーが起動します(画面には何も表示されませんが、バックグラウンドで動作しています)。続いて、コンピュータの VNC クライアントから Steam Deck の IP アドレスへ接続します。macOS には “Screen Sharing” という VNC ビューアが標準搭載されています。
macOS の Screen Sharing から Steam Deck をリモート操作。
このスクリプトが行うこと
- SteamOS のシステム読み取り専用保護を自動的に有効化/無効化
pacmanキーの初期化- x11vnc サーバーのインストール
- VNC を有効化/無効化するショートカットの作成
- VNC パスワードをリセットするショートカットの作成
- システム更新後に x11vnc を簡単に再インストールするショートカットの作成
- ログイン時に VNC サーバーを自動起動するスクリプトの作成
このスクリプトは安全に再実行できます。最初の試行で成功しなくても心配はいりません。
起動時に自動実行する
VNC サーバーを起動時に自動実行するため、システムサービスの作成を勧める人もいます。ただし、より簡単な GUI での設定をお勧めします。
- Application Launcher > System > System Settings > Startup and Shutdown > + Add… > Login Script.
- デスクトップの VNC フォルダ内にある “
vnc_startup.sh” を選択します。

もちろん、この設定は任意です。ショートカットを使って VNC サーバーを手動で起動/停止することもできます。