[心得] Linux 与 Steam(三):直接安装 steam 套件

楼主: Tetralet (Tetralet)   2017-04-28 21:42:47
而安装 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
《待续...》
作者: onegaisimasu (Onegaisimasu)   2017-04-28 22:23:00
bump
作者: penguinfuko (企鹅)   2017-04-28 22:27:00
好文推
作者: x52013 (想不到要取什么)   2017-04-28 22:34:00
不过我还挺好奇,既然装SteamOS游戏效能没有提升,能玩的游戏也变少,除了系统本身(好像)免费以外还有什么好处吗?
作者: attis   2017-04-28 22:49:00
Debug能力大幅提升
作者: Bencrie   2017-04-29 00:06:00
因为 OS 太边缘人,所以病毒木马之类的攻击几乎没有
作者: CP64 (( ̄▽ ̄#)﹏﹏)   2017-04-29 00:07:00
个人是装 archlinux 提供的就是了 该顺的都会顺
作者: Bencrie   2017-04-29 00:07:00
盗帐号机会大幅降低。不过还是防不了社交工程
作者: CP64 (( ̄▽ ̄#)﹏﹏)   2017-04-29 00:08:00
不过是用 native 不是用 steam 里面自带的
作者: Bencrie   2017-04-29 00:09:00
~/.local/share/Steam 没有人装这里吧?从 squeeze 自己包的到 stretch 都没看过 XD
作者: CP64 (( ̄▽ ̄#)﹏﹏)   2017-04-29 00:19:00
官方的 bootstrap 脚本是塞那边没错啊 ' A')
作者: acidjazz (...........)   2017-04-29 00:22:00
推推!其实那些建议安装套件好像默认也会一并安装我用过ubuntu14.04跟16.04,只要显卡驱动有装,要做的其实只有两件事:下载官方deb、点两下安装个人经验是觉得很easy,但相信也有人搞到头很大的QQ
作者: CP64 (( ̄▽ ̄#)﹏﹏)   2017-04-29 00:28:00
最头大的是在笔电的 arch 上装 因为不能用 native libs但是 arch 提供的默认是用 native libs (没记错的话后来发现只要下个环境变量就好 (抹脸
作者: TFreeman (Freeman)   2017-04-29 00:56:00
以后可以用SSH随时购买游戏了(X)
作者: kaito12 (哈士奇)   2017-04-29 00:58:00
“因为爱”给推!!!
作者: justin761002 (JiMing)   2017-04-29 01:35:00
Ubuntu用户路过,回答前面推文的问题,选用Linux的最主要理由就是因为我不想花钱买 Windows而且其实现在很多游戏(尤其是小品)都有支援跨平台大作的话,文明帝国、边缘禁地系列都可以在Steam上游玩,大部分 HB 包的游戏也是跨平台的说实在,真的没遇过那种为了玩它非买Windows不可的游戏接下来因为工作需要,可能要组一台新的Windows电脑有机会体验到两者的差异再来跟大家分享
作者: ug945 (ug945)   2017-04-29 02:24:00
当你有一台跑深度学习机器的时候就很需要了
作者: sarsman (DeNT15T♠)   2017-04-29 04:57:00
justin用ubuntu跑TESV?
作者: LoserPenguin (鲁蛇企鹅)   2017-04-29 10:48:00
优质文推
作者: e04su3no (钢铁毛毛虫)   2017-04-29 11:16:00
可以打出这篇然后觉得WINDOWS复杂也是蛮神奇的
作者: justin761002 (JiMing)   2017-04-29 11:26:00
2013年的上古卷轴V是用家里电脑玩的,是Windows搬出来住以后是用笔电(Ubuntu)
作者: jerry92277 (幻月之刃)   2017-04-29 11:53:00
在linux底下光"灌好显示驱动"就可以搞的不要不要的ubuntu 16.04 LTS,还超挑nv驱动版本,要找特定某几版的驱动才能正常开xorgsteam装好还不提,安装好游戏之后游戏会不会动还要另外debug找缺什么,只要其中哪一个lib版本不对(太高太低都一样),lib安装位置不对,都是直接闪退的概念
作者: tonyian (巨水瓶)   2017-04-29 14:18:00
我等主流游戏都支援linux 我再换好了
作者: Bencrie   2017-04-29 14:34:00
我还以为 nv driver 是最好装的耶 XD除了硬件太旧要装 legacy 版,xserver ABI 太新还没支援不然装最新的通常不会有问题
作者: acidjazz (...........)   2017-04-30 11:00:00
我有装过nv fx5900、amd 7770 rx460,驱动都蛮简单说可能真的运气很好吧
作者: Davinais (水灵流喵)   2017-04-30 14:21:00
mint用户给推,不过我是把steam的所有东西都放在家目录底下(茶想当初家里电脑帐户还没有sudo权限时chroot可帮了大忙(X
作者: Bencrie   2017-04-30 16:40:00
chroot 要 root 权限吧 XD
作者: Davinais (水灵流喵)   2017-04-30 22:46:00
你可以拿一只live usb用他开机啊www

Links booklink

Contact Us: admin [ a t ] ucptt.com