# Steam/Wine (日本語)

関連記事

- Steam
- Steam/ゲーム別のトラブルシューティング

この記事では Linux ネイティブの Steam で動かないゲームを遊ぶために、Wine で Steam を動かす方法を説明しています。

## インストール

まず Wine のページに記述されているようにして Wine をインストールしてください。

必要なマイクロソフトフォント ttf-microsoft-tahoma と ttf-ms-fonts を AUR からインストールしてください。Winetricks を使ってこれらのフォントをインストールすることも可能です: `winetricks corefonts`。

Note: Windows ディスクにアクセスできる場合、代わりに ttf-ms-win8 か ttf-win7-fonts をインストールするといいかもしれません。

Steam インストーラを steampowered.com からダウンロードして起動します。`.msi` ファイルなので `msiexec` で起動してください:

    $ msiexec /i SteamInstall.msi

## Steam を起動

x86 環境:

    $ wine ~/.wine/drive_c/Program\ Files/Steam/Steam.exe

x86_64 環境:

    $ wine ~/.wine/drive_c/Program\ Files\ \(x86\)/Steam/Steam.exe

Note:

- 文章が（正しく）表示されない場合は、このコマンドに `-no-dwrite` を追加してください。詳細は #文字が表示されない問題 を見て下さい。
- Bumblebee を通して Nvidia カードを使っている場合は、コマンドの前に `optirun` を付けて下さい。

エイリアスを作って Steam を簡単に起動できるようにする（そしてそれをシェルの rc ファイルに記述する）のもよいかもしれません、例:

    alias steam-wine='wine ~/.wine/drive_c/Program\ Files\ \(x86\)/Steam/Steam.exe >/dev/null 2>&1 &'

## Tips

### パフォーマンス

シェルのrcファイルに次のように記述することで wine のデバッグ出力を無効にできます:

    export WINEDEBUG=-all

もしくは `steam-wine` エイリアスに付け加えることで Steam だけ無効化:

    alias steam-wine='WINEDEBUG=-all wine ~/.wine/drive_c/Program\ Files\ \(x86\)/Steam/Steam.exe >/dev/null 2>&1 &'

また、Source のゲームはページプールメモリ量によってオーディオが異なり、WINE はデフォルトでは値を設定しません。設定するには:

    $ wine reg add "HKLM\\System\\CurrentControlSet\\Control\\Session Manager\\Memory Management\\" /v PagedPoolSize /t REG_DWORD /d 402653184 /f

### Source エンジン起動設定

"プロパティ" の "起動設定" から設定します。例えば:

    -console -dxlevel 90 -width 1280 -height 1024

- `console`

  アプリケーションの設定を変更できるアプリケーション内コンソールを有効にします。

- `dxlevel`

  アプリケーションの DirextX のレベルを設定します、例えば 90 は DirectX バージョン 9.0 です。クラッシュを防ぐためビデオカードにあった DirectX のバージョンを使って下さい。公式 Valve Software Wiki https://developer.valvesoftware.com/wiki/DirectX_Versions に詳しく書かれています。

- `width` と `height`

  スクリーン解像度を設定します。アプリケーションからグラフィック設定が保存されず、起動毎にデフォルトの解像度に戻ることがあります。

全ての起動オプションのリストは https://developer.valvesoftware.com/wiki/Command_Line_Options を参照してください。

### すでにインストール済みの Steam を利用する

Windows とドライブを共有していて、どこかに Steam をインストールしている場合、Steam ディレクトリから `~/.wine/drive_c/Program Files/Steam/` へシンボリックリンクを作成できます。ただし、この wiki にある上の手順を全て実行しておく必要があります。Steam が起動してアカウントにログインできることを確認してから、以下を行なって下さい:

    $ cd ~/.wine/drive_c/Program\ Files/
    $ mv Steam/ Steam.backup/   (or you can just delete the directory)
    $ ln -s /mnt/windows_partition/Program\ Files/Steam/

Note:

- Steam フォルダ全体にシンボリックリンクを張った後 Steam の起動に問題が起こる場合は、代わりに wine の steam フォルダにある `steamapps` サブディレクトリだけにリンクしてみて下さい。
- まだゲームの起動に問題がある場合は、`# mount --bind /path/to/SteamApps ~/.local/share/Steam/SteamApps -ouser=your-user-name` を使って下さい。TF2 でこれが機能することを確認しています。

### Firefox, Chrome などの Steam リンク

ブラウザ内の `steam://` URL を Wine の Steam に接続するために、複数の方法を使うことができます。gconf で steam の url-handler キーを作ったり、KDE のプロトコルファイルを作ったり、デスクトップファイルや chromium の Local State ファイルを編集するなど。これらは firefox や特定のデスクトップ設定のもとでのみ使えます。パソコン全体で動くようにする方法に、Xyne (Arch TU の一人) によって作成されたツール mimeo を使う方法があります。他に使える侵略的でない (ただし firefox 限定の) 方法は、ここ の最初の投稿を見て下さい。

- あなたのお好きなエディタで `/usr/bin/steam` を作って以下を貼り付けて下さい:

    #!/bin/sh
    #
    # Steam wrapper script
    #
    exec wine "c:\\program files\\steam\\steam.exe" "$@"

- 実行可能にしてください:

    # chmod +x /usr/bin/steam

- AUR から mimeo と xdg-utils-mimeo をインストールしてください。既存の xdg-utils を置き換える必要があります。XFCE では、xorg-utils も必要です。

- あなたのお好きなエディタで `~/.config/mimeo.conf` を作って以下を貼り付けて下さい:

    /usr/bin/steam %u
      ^steam://

- 最後に、エディタで `/usr/bin/xdg-open` を開いて下さい。`detectDE()` セクションまで行き以下のように変更してください:

    detectDE()
    {
        #if [ x"$KDE_FULL_SESSION" = x"true" ]; then DE=kde;
        #elif [ x"$GNOME_DESKTOP_SESSION_ID" != x"" ]; then DE=gnome;
        #elif $(dbus-send --print-reply --dest=org.freedesktop.DBus /org/freedesktop/DBus org.freedesktop.DBus.GetNameOwner string:org.gnome.SessionManager > /dev/null 2>&1) ; then DE=gnome;
        #elif xprop -root _DT_SAVE_MODE 2> /dev/null | grep ' = \"xfce4\"$' >/dev/null 2>&1; then DE=xfce;
        #elif [ x"$DESKTOP_SESSION" == x"LXDE" ]; then DE=lxde;
        #else DE=""
        #fi
        DE=""
    }

- ブラウザを再起動したら動くようになっているはずです。chromium では、firefox のように url ボックスに `steam://` リンクを入力することはできません。必要ならば上のフォーラムにある `steam://open/friends` リンクを試して下さい。

Note:

- If you have any problems with file associations after doing this, simply revert to regular xdg-utils and undo your changes to `/usr/bin/xdg-open`.
- Those on other distributions that stumble upon this page, see the link above for firefox specific instructions. No easy way to get it working on Chromium on other distros exists.

### 文字が表示されない問題

もし steam を起動した時、文字が表示されない場合、`-no-dwrite` パラメータをつけて steam を起動してください。詳しくはこの問題についてのスレッドを見て下さい。

    wine ~/.wine/drive_c/Program\ Files\ \(x86\)/Steam/Steam.exe -no-dwrite

Note: Although this method does currently work, It is not persistent if Steam relaunches automatically (i.e. update), or if you follow a URL link.

- This can be achieved by going through winecfg > Libraries and setting the "dwrite" override to "disable"

Or

- `$ wine reg add 'HKCU\Software\Valve\Steam' /v DWriteEnable /t REG_DWORD /d 00000000`

### プロクシー設定

`[protocol]_proxy` という形の環境変数を使うことにより Steam は HTTP/HTTPS でプロクシーを利用することができます。

    $ export http_proxy=http://your.proxy.here:port
    $ export https_proxy=$http_proxy

## 参照

- Wine アプリケーションデータベース

Categories:

- Gaming (日本語)
- Wine (日本語)