毫无疑问,steamdeck是一台游戏机,但是因为完全自由的硬件设计,来到爱折腾的朋友手里,花样就会变多了。
我个人在买steamdeck之前,完全不了解Linux。买了之后,因为要折腾一些除了steam之外的应用商店,所以学了一些Linux的知识。
随着学习的深入,我发现可以折腾的越来越多,导致我用steamdeck的时间,80%的时间在研究一些稀奇古怪的东西,20%的时间在打游戏。
所以,steamdeck真是一台优秀的游戏(xuexi)机啊。
steamdeck是通过proton兼容层来运行windows的游戏,这个项目也是开源的,所以会有人对官方的兼容层做一些改进。
更换不同的游戏兼容层,可以让原本不能在官方兼容层运行的游戏运行,或是获得更好的性能。
然后呢,折腾模拟器,将模拟器游戏放进steamdeck的游戏库里,添加封面,相同平台的游戏分到一个组里。看起来像是一个收藏柜一样,很酷!
模拟器能折腾的就多啦:
pcsx2->ps2
ppsspp->psp
deckstation->ps1
dolphin->wii,gamecube
mgba->gba,gbc
xemu->OG xbox
……
valve给steamdeck提供了插件的功能,这样很多开发者可以给steamdeck开发一些非常酷的插件。例如:
vibrantDeck:调整steamdeck-lcd屏幕颜色
SteamGridDB:可以给库里游戏更换封面,或者给自己添加的游戏补充封面。
CSS Loader:给steamdeck的UI更换主题
Bash Shortcuts:用于在游戏模式运行命令行的命令,我主要用于同步无法云存档的游戏存档[2]。
……
steamdeck的桌面模式是一个使用x11协议的kde桌面,我们可以在里面做很多事情,例如写稿子,写代码,看视频……。(这篇文章就是用steamdeck写的)
kde的自定义功能非常强大,你甚至可以把他定义到很像Macos的样子,当然只是外面的一层皮。我没有定义,我还挺喜欢桌面的阀门壁纸的。
在这个过程中,我知道了steamdeck的游戏模式其实本质上也是一个桌面环境[1]——valve开源的gamescope。它之所以会开机就会进入,是因为在登陆管理SDDM中配置了它的的开机自动登陆。
也就是说,只要是linux系统,只要安装了gamescope这个软件,也可以使用steamdeck游戏模式一样的界面。
steamdeck的系统分区是很有趣的,是一个ab分区的设计。
简单来说,就是玩家在使用的是A区,而系统更新的是B区,系统更新完成后,玩家会切换到B区,实现系统的无缝更新。
这样的设计,可以让所有玩家更新系统后,都获得一样的体验。
但是,也有一个缺点,对于爱折腾的人,你在A区做的修改,在系统更新后就全没了。
但是flatpak的商店里原本需要存在于根分区的文件为什么可以保存下来呢?
他们被藏在/home中的一个叫.steamos的隐藏文件夹里。
进入这个文件夹的offload文件夹,我们可以看到这些这些文件夹。
nix opt root srv var
这些本需要存在根分区的数据。,通过--bind绑定的方式,绑定到了对应的文件夹,每次更新完系统后,会重新绑定。
发展到后来,我开始给steamdeck折腾一些其他系统。例如:
manjaro
arhclinux[3]
ubuntu
fedora
windows11
刚开始的时候,我是给steamdeck的硬盘分了另一个区,但是呢,会导致一个问题,就是原本的steamos安装游戏的空间不够了。
我试过使用挂载另一个系统分区的方案,但是呢?系统更新后还得再来一遍,不够优雅。
装到sd卡里?不行,sd卡的速度有点慢,日常使用倒是无影响,但是有点不爽。
最后,我发现了ventoy提供的一项功能。ventoy有一项功能vdisk boot,也就是说,可以从虚拟硬盘启动一个Linux系统。
所以我创建了一个vdisk文件,把这个文件放在steamdeck装游戏的分区,我需要的Linux系统就装在这个文件里,从此steamdeck不用分区了,一直保持着出厂以来分区。
用steamdeck视频硬件编解码——也许会用到?
有人说steamdeck不支持硬件编码h265的视频,其实是错误的。
只要安装了ffmpeg就可以使用vaapi在steamdeck上进行视频硬件编码。
你只需要使用如下命令,就可以使用steamdeck的进行视频硬件编码:
ffmpeg -vaapi_device /dev/dri/renderD128 -i input.mp4 -vf 'format=nv12,hwupload' -c:v hevc_vaapi output.mp4
可以看到,进行编码的时候,系统监视软件Resource显示,gpu的硬件编码被调用了。
这个命令使用软件解码,硬件编码,对于支持的格式也可以使用软件解码,但我发现这会降低编码的性能。
把steamdeck变成一台软路由
把steamdeck变成一台媒体服务器
为何浅尝则止?一个手持移动游戏机在家里当服务器?闹呢?
steamdeck的官方系统steamos就基于archlinux创造。↩︎
使用git命令↩︎
此说法不严谨,更准确的说应该是,一套专门由于游戏的UI环境↩︎
评论区
共 7 条评论热门最新