当我按下硬件电源按钮和登录屏幕(或统一)正在运行,我收到一条很好的“您确定要关机吗”消息。
当我运行 fluxbox 时,软件关闭,但没有消息/确认。
有什么办法可以改变这种情况吗?我不介意编写 zenity 脚本/程序,我只是需要一个地方来放置它。
答案1
Fluxbox 没有提供一些好看的方法来关闭您的计算机。但是,如果您使用 GDM 登录,您也可以告诉它关闭。为了方便使用,可以使用一个脚本为您提供一些确认对话框。
首先,我们创建一个对话框:
xmessage -nearmouse -buttons No:1,Yes:0 "Really shutdown?"
还有其他方法可以做到这一点,我们不必xmessage
在这里使用。不过,这是一种简单的方法。
如果用户点击“否”按钮,则无需执行任何其他操作,除了可能向他提供一些有关使用鼠标的建议。如果他点击“是”,我们将关闭他的计算机。
为此,我们首先要告诉GDM
我们要在 fluxbox 退出时关闭:
gdmflexiserver -a -c 'SET_LOGOUT_ACTION HALT'
然后,我们终止 fluxbox:
kill -TERM $(xprop -root _BLACKBOX_PID | awk '{print $3}')
一些绳子和胶带加起来就是一个可以添加到菜单中的脚本:
#!/bin/sh
if xmessage -nearmouse -buttons No:1,Yes:0 "Really shutdown?"; then
gdmflexiserver -a -c 'SET_LOGOUT_ACTION HALT'
kill -TERM $(xprop -root _BLACKBOX_PID | awk '{print $3}')
else
xmessage -nearmouse "Then why did you press that big red button?"
fi
警告:我不用 Fluxbox。任何关于其 Wiki 页面上材料的澄清都必须向他们询问。我复制了上述网站说明后,已经清理了一些语法,但仍然不完美。
你可以在以下网址找到用户和 Fluxbox(开发者?)之间关于“关闭按钮”的激烈争论:源头锻造。在争论的最后,有人发布了源代码,它似乎/usr/bin/shutdown
可能就是您想要放入钩子的地方。即创建您自己的,/usr/bin/shutdown
调用/usr/bin/shutdown2
原始副本。