myexentension@me.com
将文件夹复制到后,.../gnome-shell/extensions/
我在终端上执行此命令:
gnome-shell-extension-tool -e myexentension@me.com
Alt然后,我用+F2和 execute重新启动我的会话r
,一切正常。
但是我只能通过命令行启动我的扩展程序吗?没有Alt+ F2+ r
?无需重新启动我的 gnome-shell 会话?
myexentension@me.com
将文件夹复制到后,.../gnome-shell/extensions/
我在终端上执行此命令:
gnome-shell-extension-tool -e myexentension@me.com
Alt然后,我用+F2和 execute重新启动我的会话r
,一切正常。
但是我只能通过命令行启动我的扩展程序吗?没有Alt+ F2+ r
?无需重新启动我的 gnome-shell 会话?
根据互联网上的一些答案,向gnome-shell
进程发送 SIGHUP 会重新启动它(即killall -HUP gnome-shell
),但我无法找到明确的来源,也无法在代码中找到信号处理。我所知道的是,这应该完全等同于Alt+F2 r
:
busctl --user call org.gnome.Shell /org/gnome/Shell org.gnome.Shell Eval s 'Meta.restart("Restarting…")'
因为除了对消息的 gettext 调用之外,这正是Alt+F2 r
绑定的内容(请参阅runDialog.js
- 搜索_restart
)。
2022 年 1 月更新:自 Gnome 41 起,调用 Eval 受到限制并且需要启用“不安全模式”,因此默认情况下这将不再起作用。我目前不知道这种特殊用途的替代品。
就个人而言,我更喜欢坚实的Alt+ F2,r+Enter但也许尝试禁用和启用:
gnome-shell-extension-tool -d myexentension@me.com && gnome-shell-extension-tool -e myexentension@me.com
或者
gnome-shell-extension-tool -r myexentension@me.com
这可能会做同样的事情。您还gnome-shell-extension-prefs
可以使用它来做同样的事情(并且由于某种原因通常隐藏在 Gnome 中)。