而安裝 Steam 最直覺的方法,當然是直接把它安裝在系統裡了。
有部份的 Linux 發行版直接提供 steam 讓使用者安裝。
像 Debian,您可以在 non-free 類的套件中找到 steam。
註:在很舊的 Debian Lenny 檔案庫裡有另一個套件也叫 steam。請不要裝錯個了 XD
Debian 版的 steam 和原生版並不完全一樣。
主要差別是 Debian 版的 steam 會把檔案都裝在 $HOME/.steam 下;
而原生版主要是放在 $HOME/.local/share/Steam 下。
然後兩者還有些其它細微差異,建議不要共用。
另,就如上文所說的,
其實 SteamOS 上在跑的是個名為 steamcompmgr 的 Window Manager,
和桌面版的 steam 又有一些些差別...
在安裝 steam 的同時,應該會因為相依性然後裝了一堆套件進來。
除此之外,建議再安裝以下套件:
libc6-i686 libva1:i386 dbus-x11
libgl1-mesa-glx:i386 libgl1-mesa-dri:i386
libtxc-dxtn-s2tc0 libtxc-dxtn-s2tc0:i386
另,請將使用者加入以下群組:
audio dip video plugdev netdev input
但因為 steam 基本上是特用於 SteamOS 的應用程式,
所以硬在其它的系統下面跑難免有些水土不服。
比如說,在開啟 steam 時,可能會顯示以下錯誤訊息:
libappindicator-WARNING **: Unable to get the session bus: Command line ...
然後 Steam 的 System Tray Icon 出不來,
BigPicture 模式和遊戲也都慢到吐血。
我們可以猜到的,大概是因為 steam 內建的 dbus 和系統正在跑的版本不符的關係。
而解決方案很簡單,就是把以下刪除或更名,讓 steam 使用系統函式庫即可:
.steam/ubuntu12_32/steam-runtime/amd64/lib/x86_64-linux-gnu/libdbus-1.so.3
.steam/ubuntu12_32/steam-runtime/amd64/lib/x86_64-linux-gnu/libdbus-1.so.3.5.8
.steam/ubuntu12_32/steam-runtime/i386/lib/i386-linux-gnu/libdbus-1.so.3
.steam/ubuntu12_32/steam-runtime/i386/lib/i386-linux-gnu/libdbus-1.so.3.5.8
而其實這個位於 /usr/bin/steam 的只是個 Bash Script。
它的功能大概就是檢查環境後,再另外下載並執行 steam 的用戶端程式。
您可以用 bash -x /usr/bin/steam 來看看 steam 在跑些什麼指令。
因為 steam 本身用的都是很舊的函式庫,
(理論上是 Ubuntu 12.04 LTS,大概是 5 年前的函式庫)
所以可能有些遊戲在比較新的 Linux 發行版上跑會有些小問題。
您可以參考以下資料然後希望瞎貓能碰著死耗子:
https://wiki.debian.org/Steam
https://wiki.archlinux.org/index.php/steam
不過,Ubuntu 12.04 LTS 支援只到 2017-04-28。(就是今天)
很好奇之後 Steam 會怎麼做。
大改版搞不好會看到一堆遊戲適應不良... XD
《待續...》