我想为 Steam 游戏应用程序构建信息亭。
我的系统信息:- 操作系统 - Ubuntu 20.04、Gnome、GDM
到目前为止,我确实创建了一个文件
/usr/share/xsessions/游戏账户
包含
[Desktop Entry]
Exec=game-session --session gameaccount
Type=Application
会话文件位于
/usr/share/gnome-session/sessions/gameaccount.session
[GNOME Session]
RequiredComponents=steam;
但用户仍然需要密码才能登录,仍然可以使用 Firefox 等外部应用程序。如何解决?
我想要这里有一个 steam,并且任何人都可以登录这里并玩游戏。
顺便说一句,我刚刚学习 Linux。
答案1
我仍在研究细节,但这应该适用于 Ubuntu 20.04,尽管您甚至不需要 Gnome。
请注意,我针对浏览器(Chromium)而不是 Steam 执行了此操作,因此如果您从服务器映像开始,则可能需要安装其他软件包。您仍然可以使用桌面映像执行此操作,只是对于信息亭来说似乎有点过头了(您需要卸载一堆软件包)。
# I started with just Ubuntu Server, so I first installed basic Xorg packages
apt-get install xserver-xorg-core -y
# next install openbox, it is pretty basic window manager
apt-get install openbox -y
# install xinit and Steam
apt-get install xinit -y
apt-get install steam -y
# setup autologin so it acts as a kiosk
mkdir /etc/systemd/system/[email protected]/
nano /etc/systemd/system/[email protected]/override.conf
[Service]
Type=simple
ExecStart=
ExecStart=-/sbin/agetty --autologin YourUsername --noclear %I 38400 linux
# create or modify .profile script in your /home/YopurUsername to start X on login
nano .profile
#Startx Automatically
if [[ -z "$DISPLAY" ]] && [[ $(tty) = /dev/tty1 ]]; then
. startx
logout
fi
# in same location create or edit .xinitrc which will start your app, eg, Steam
nano .xinitrc
#!/bin/sh
xset -dpms
xset s off
xset s noblank
# the following starts Steam, you may look up if you can start it in Big Screen mode automatically
steam
reboot
我发现的是:
- 这将自动以 YourUser 身份登录
- 将启动 Xorg 并初始化 openbox,几乎不需要任何额外操作
- 将启动你的应用程序(Steam)
- 如果有人关闭应用程序,它将立即重新启动(将看到短壳,但不足以进行交互)
- 如果您想从屏幕上移除鼠标光标(或在空闲=x 秒后隐藏它),请使用 unclutter
这几乎不是一个完整的解决方案,但它是一个好的开始。由于您没有说明要启动哪个游戏,我只能说也许您可以使用一些标志启动 Steam,直接以全屏方式启动游戏,找不到 Linux 客户端的官方文章,但这是 Windows 的链接: https://support.steampowered.com/kb_article.php?ref=5623-QOSV-5250