如何使用 systemd 在启动时启用 guake

如何使用 systemd 在启动时启用 guake

我已尽我所能

/etc/systemd/system/guake.service 

包含

[Unit]
Description=Start guake 

[Service]
ExecStart=/bin/bash guake

[Install]
WantedBy=graphical.target

然后我就这么做了

systemctl start guake.service 
systemctl status guake.service

但我明白

● guake.service - 启动 guake 已加载:已加载(/etc/systemd/system/guake.service;已启用;供应商预设:已禁用) 活动:失败(结果:核心转储)自 2015-07-16 星期四 21:14:36 SAST;4 秒前 进程:10785 ExecStart=/bin/bash guake(code=dumped,signal=SEGV) 主 PID:10785(code=dumped,signal=SEGV)

7 月 16 日 21:14:36 tawanda-pc bash[10785]: /usr/lib/python2.7/site-packages/gtk-2.0/gtk/在里面.py:57: GtkWarning: 可能...显示 7 月 16 日 21:14:36 tawanda-pc bash[10785]: warnings.warn(str(e),_gtk.Warning) 7 月 16 日 21:14:36 tawanda-pc bash[10785]: /usr/lib/python2.7/site-packages/keybinder/在里面.py:26: GtkWarning: IA__gdk...失败 7 月 16 日 21:14:36 tawanda-pc bash[10785]: 从 _keybinder 导入 * 7 月 16 日 21:14:36 tawanda-pc bash[10785]: /usr/lib/python2.7/site-packages/keybinder/在里面.py:26: GtkWarning: IA__gdk...failed 7 月 16 日 21:14:36 tawanda-pc bash[10785]: 来自 _keybinder 导入 * 7 月 16 日 21:14:36 tawanda-pc systemd[1]: guake.service: 主进程已退出,代码=dumped,状态=11/SEGV 7 月 16 日 21:14:36 tawanda-pc systemd[1]: guake.service: 单元进入失败状态。 7 月 16 日 21:14:36 tawanda-pc systemd[1]: guake.service: 失败,结果为“core-dump”。 7 月 16 日 21:14:36 tawanda-pc systemd-coredump[10790]: 用户 0 的进程 10785(python2)已转储核心。提示:有些线条被省略了,使用 -l 可以完整显示。

我也尝试设置WantedBy=multi-user.target,但出现同样的错误

我正在运行 arch linux,如何让它启动,谢谢大家

答案1

首先,您可能希望将 Guake 作为用户会话内的应用程序运行,而不是作为根应用程序运行。因此,您应该查看systemd --user服务(ArchWiki:systemd/用户)。

然后,Guake 是一个 X11 应用程序,因此需要正在运行的 X11 会话。systemd 尚未处理 X11 会话,因此最好的选择是查看桌面环境提供的功能,以便在会话启动时自动启动程序。据我所知,这可以通过 KDE 和 GNOME 轻松实现。

相关内容