无法在 Fedora 36 - GNOME 42 中自动启动 Conky

无法在 Fedora 36 - GNOME 42 中自动启动 Conky

所以:我刚刚安装了Conky,它看起来非常好。但启动时不断手动打开很烦人。所以我正在寻找一种自动启动Conky的方法

我试过了:

  • 制作一个 .desktop 文件并将其放入 中/home/<username>/.config/autostart/,但即使我添加了 30 秒的延迟,它也无法打开。
[Desktop Entry]
Type=Application
Exec=/usr/bin/conky -p 30
Hidden=false
NoDisplay=false
X-GNOME-Autostart-enabled=true
Name=conky
Comment=conky
  • 创建一个用户服务,在启动时启用它并尝试重新启动。但是当我检查日志时,它返回了一个错误conky: can't open display:,即使我添加了 30/60 秒的延迟。
$ systemctl --user status conky.service
conky.service - Conky autostart
     Loaded: loaded (/home/<username>/.config/systemd/user/conky.service; enabled; vendor preset: disabled)
     Active: failed (Result: exit-code) since Fri 2022-05-20 16:47:00 +07; 4s ago
    Process: 1568 ExecStart=/usr/bin/conky --config=/home/anhquan/.conkyrc --daemonize --pause=60 (code=exited, status=1/FAILURE)
        CPU: 18ms

May 20 16:46:00 fedora systemd[1550]: Starting conky.service - Conky autostart...
May 20 16:47:00 fedora conky[1568]: conky: can't open display:
May 20 16:47:00 fedora systemd[1550]: conky.service: Control process exited, code=exited, status=1/FAILURE
May 20 16:47:00 fedora systemd[1550]: conky.service: Failed with result 'exit-code'.
May 20 16:47:00 fedora systemd[1550]: Failed to start conky.service - Conky autostart.

它似乎对其他人有效,但不适用于 Fedora 36 / GNOME 42。这可能是 OS / DE 的错误,或者是我不知道的 Conky 的一些更改,或者可能是 Wayland 的问题。那么在 F36 / G42 中是否有不同的方式来自动启动它?

压力/压力:这是强制Xwayland启动时的新日志:

○ conky.service - Conky autostart
     Loaded: loaded (/home/anhquan/.config/systemd/user/conky.service; enabled; vendor preset: disabled)
     Active: inactive (dead) since Fri 2022-05-20 17:38:23 +07; 17s ago
    Process: 1575 ExecStartPre=Xwayland (code=exited, status=1/FAILURE)
        CPU: 56ms

May 20 17:38:23 fedora systemd[1556]: Starting conky.service - Conky autostart...
May 20 17:38:23 fedora systemd[1556]: conky.service: Control process exited, code=exited, status=1/FAILURE
May 20 17:38:23 fedora systemd[1556]: conky.service: Failed with result 'exit-code'.
May 20 17:38:23 fedora systemd[1556]: Failed to start conky.service - Conky autostart.

PSS:运行strace后,systemctl报告如下(找不到写入/tmp目录的日志)

conky.service - Conky autostart
     Loaded: loaded (/home/anhquan/.config/systemd/user/conky.service; enabled; vendor preset: disabled)
     Active: inactive (dead) since Fri 2022-05-20 18:04:11 +07; 21s ago
    Process: 1578 ExecStart=strace -f /tmp/conky.log /usr/bin/conky --config=/home/anhquan/.conkyrc -p 30 (code=exited, status=203/EXE>
        CPU: 1ms

May 20 18:04:11 fedora systemd[1560]: Starting conky.service - Conky autostart...
May 20 18:04:11 fedora systemd[1578]: conky.service: Failed to locate executable strace: No such file or directory
May 20 18:04:11 fedora systemd[1578]: conky.service: Failed at step EXEC spawning strace: No such file or directory
May 20 18:04:11 fedora systemd[1560]: conky.service: Control process exited, code=exited, status=203/EXEC
May 20 18:04:11 fedora systemd[1560]: conky.service: Failed with result 'exit-code'.
May 20 18:04:11 fedora systemd[1560]: Failed to start conky.service - Conky autostart.

答案1

-您需要将条目放入主目录中的文件中,该文件。轮廓 在文件末尾有一行启动 conky 的命令,如下所示:

 /usr/bin/conky -q -d -a tm -c $HOME/.conkyrc

在此示例中,命令仅使用“点”启动 conky, .conkyrc 用户,进行一个小测试,确定后你验证你的 conky 工作得非常完美,你只需将重定向到空设备文件就不会得到如下命令的输出:

 /usr/bin/conky -q -d -a tm -c $HOME/.conkyrc > /dev/null & 

有了这个,你的 conky 就能完美地工作了。因为命令行中的选项会:

**> -q , --quiet - 将 conky 置于安静模式。

   -d , --daemonize - put the conky in daemonize mode, fork to background

   -a , --alignment=ALIGNMENT - put the conky alignment on the screen, {top,bottom,middle}_{left,right,middle} you can use the

首字母来定义对齐方式,例如 tm 到 {top}_{middle}。

   -c , --config=FILE - just point the configuration file conkrc, where the file stay.**

重定向“>/dev/null "只是向黑洞发出任何消息和“”信号&,将 conky 置于循环中。

答案2

因此,在查看了 Conky 的 GitHub 存储库中的问题后,更具体地说:https://github.com/brndnmtthws/conky/issues/869

并且还查看日志:May 20 16:47:00 fedora conky[1568]: conky: can't open display

我在服务文件中添加了一个新配置:Environment="DISPLAY=:0"

现在它工作得很好,甚至延迟更低了!

相关内容