在某些情况下,我不希望我的屏幕锁定。(通常情况下:当计算正在运行时,我会离开办公桌,但我不会离开房间并且仍然关注它为什么处于活动状态;有时,我会将更多任务添加到队列中,所以它不是“完成后完成”)
是否有机制告诉 GNOME 会话或 ~ 屏幕保护程序不要锁定?我期待有一个聪明的 DBUS API,但 GNOME 的文档似乎依赖于删除它的人的私人主目录:https ://wiki.gnome.org/Projects/SessionManagement/GnomeSession#D-Bus_API链接到 404 https://www.gnome.org/~mccann/gnome-session/docs/gnome-session.html。
更好的是:是否有用于此的 Freedesktop 标准化 API?我主要使用很棒的 WM 处理 Cinnamon 会话,但我遇到的这个问题主要是在我只能访问 Gnome 会话的机器上;但是,如果有一个万能的解决方案,我会非常喜欢。
至少在 X 下,
xdg-screensaver
只要存在给定的窗口,您就可以使用它来禁止兼容的屏幕保护程序:有一个用于屏幕保护程序的 Freedesktop D-Bus 界面,您可以使用类似的方式调用它
但这不起作用,
dbus-send
因为它与调用者相关联——从长时间运行的 Python 脚本中调用它应该可以解决问题。(
--print-reply
包含在内是因为返回值很重要——它是一个用于取消禁止屏幕保护程序的 cookie。)另请参阅防止系统进入睡眠/挂起 - Xviewer/VLC 如何做到这一点