notify-send有哪些替代方案?

我使用notify-send来进行桌面通知,我可以得到预期的摘要和正文通知。然而,notify-send有一些限制,所以我想了解一些替代notify-send的建议。
我希望有以下额外功能:
  1. 过期时间。
  2. 大小自定义(气泡的大小)。
  3. 位置修改(气泡的位置)。
  4. 气泡外观(颜色、透明度、阴影)(如果可能的话)
我知道有python-notify,但由于我不熟悉Python,所以犹豫是否使用它。我希望有一个完整的独立程序。有什么建议吗?
3个回答

我的建议是使用yad,它是Zenity的一个分支。
安装方法如下:
sudo apt install yad

如果您的版本没有此功能,请先运行以下命令:
sudo add-apt-repository ppa:webupd8team/y-ppa-manager
sudo apt update

了解yad的相关信息:
man yad

这不是一个理想的解决方案,但yad功能强大且灵活,并且它具有超时选项。


1yad不按照我想要的方式工作。它提供窗口式通知。虽然很好,但我想要像notify-send那样的非窗口式通知。另外,系统在尝试获取通知气泡时崩溃了。 - VedVals

我按照Paddy Landau的建议查看了yad。它允许我显示一个没有窗口边框的通知,不会抢占焦点,并在1秒后自动关闭。我找不到改变窗口背景颜色的方法,但我可以使用Pango文本属性标记语言更改文本颜色和大小。以下脚本将音量增加3%,然后使用yad显示当前音量级别:
#!/bin/bash

amixer -q -D pulse sset Master 3%+
VOLUME=`awk -F"[][]" '/Front Left.*Playback/ { print $2 }' <(amixer -D pulse sget Master)`
yad --timeout 1 --skip-taskbar --center --no-buttons --text="Volume:" --width=200 --text-align=center --undecorated --text="<span color=\"#ffffff\" bgcolor=\"#000000\" font_size=\"large\" font_weight=\"heavy\">      Volume: $VOLUME      </span>"

在Unity或任何其他使用Ubuntu的notify-osd的桌面上,您没有选项可以更改通知气泡的大小、位置、外观或显示时间。

1如果有其他可定制的守护进程可用,是否可以替换notify-osd - VedVals
只要他们使用相同的XDG API,很可能可以。 - mhall119
3我是在要求替换,而不仅仅是可能性。 - VedVals
@mhall119,我明白了,但是是否可以发送类似声音/亮度通知那样的通知呢?我在网上找不到相关的信息。 - AliNajafies
1@VedVals 是的,你可以替换它,尽管它并不总是看起来很好。据我所知,gnome-notification-daemon 是一个选项。 - Seth