「Dunst」の版間の差分

提供: ArchWiki
ナビゲーションに移動 検索に移動
(翻訳)
 
(→‎通知の置き換え: 後者 => 前者)
 
(8人の利用者による、間の22版が非表示)
1行目: 1行目:
 
[[Category:X サーバー]]
 
[[Category:X サーバー]]
 
[[en:Dunst]]
 
[[en:Dunst]]
  +
[[pl:Dunst]]
  +
[[ru:Dunst]]
 
{{Related articles start}}
 
{{Related articles start}}
 
{{Related|デスクトップ通知}}
 
{{Related|デスクトップ通知}}
 
{{Related articles end}}
 
{{Related articles end}}
   
[http://knopwob.org/dunst/index.html Dunst] はデスクトップ環境に同梱されている通知デーモンを置き換える軽量な代替デーモンです。
+
[https://dunst-project.org/ Dunst] はデスクトップ環境に同梱されている通知デーモンを置き換える軽量な代替デーモンです。
   
 
== インストール ==
 
== インストール ==
   
[[公式リポジトリ]]から {{Pkg|dunst}} パッケージを[[インストール]]してください。
+
{{Pkg|dunst}} パッケージを[[インストール]]してください。
   
サンプル設定ファイルは {{ic|/usr/share/dunst/dunstrc}} に存在します。
+
サンプル設定ファイルは {{ic|/etc/dunst/dunstrc}} に存在します。
  +
ファイルを {{ic|~/.config/dunst/dunstrc}} にコピーして適宜編集してください。
   
  +
{{ic|/usr/bin/dunst}} を起動して、ウィンドウマネージャやデスクトップ環境がスタートアップ時やログイン時に起動できるようにしてください。
ファイルを {{ic|~/.config/dunst/dunstrc}} にコピーして適宜編集してください:
 
   
  +
{{Note|プログラムが D-Bus を通じて通知を送った時に dbus-daemon によって dunst は自動で起動されるので、手動で起動する必要はないこともあります。しかし、環境によっては通知サービスが複数インストールされていることがあり、その場合どのデーモンが自動で起動されるか知るすべはありません。dbus-daemon のメンテナは明示的に、複数のプロバイダサービスについて自動起動について警告しておきます。}}
$ cp /usr/share/dunst/dunstrc ~/.config/dunst/dunstrc
 
   
== 設定 ==
+
== 外観 ==
   
  +
Dunst では HTML のマークアップを使って通知を表示できます。例えば太字・斜体・取り消し線・下線のサンプルが存在します。完全なリファレンスは [https://developer.gnome.org/pygtk/stable/pango-markup-language.html] を参照してください。{{ic|markup}} を {{ic|none}} に設定することで、通知から HTML を取り除くこともできます。
=== 外観 ===
 
   
  +
通知のフォーマットを指定できます。使用できるオプションは以下の通りです:
Dunst では HTML を使って通知を表示できます。太字・斜体・取り消し線・下線のサンプルが存在します。詳しくは https://developer.gnome.org/pango/stable/PangoMarkupFormat.html を参照してください。{{ic|allow_markup}} を {{ic|no}} に設定することで、通知から HTML を取り除くこともできます。
 
 
また、通知のフォーマットを指定できます。使用できるオプションは以下の通り:
 
 
%a アプリ名
 
%a アプリ名
 
%s 概要
 
%s 概要
32行目: 33行目:
 
上記のオプションは HTML と組み合わせて使うことができます。例えば {{ic|format}} を {{ic|<nowiki><b>%s</b>\n%b</nowiki>}} と設定することで、太字の概要に、改行の後に本文を表示します。
 
上記のオプションは HTML と組み合わせて使うことができます。例えば {{ic|format}} を {{ic|<nowiki><b>%s</b>\n%b</nowiki>}} と設定することで、太字の概要に、改行の後に本文を表示します。
   
===アイコンセット===
+
=== アイコンセット ===
   
アイコンは {{ic|icon_folders}} オプションで設定できます。ステータスとデバイスアイコンです。
+
アイコンはオプション {{ic|icon_path}} で設定されます。 ステータスとデバイス、レガシーアイコンす。 デフォルトでは、 Dunst は {{Pkg|gnome-icon-theme}} アイコンを探します。たとえば、代わりに {{Pkg|adwaita-icon-theme}} (gnome-icon-theme の後継) を使用するには、次のようにします。
   
  +
icon_path = /usr/share/icons/Adwaita/16x16/status/:/usr/share/icons/Adwaita/16x16/devices/:/usr/share/icons/Adwaita/16x16/legacy/
# Paths to default icons.
 
icon_folders = /usr/share/icons/Arc/status/16/:/usr/share/icons/Arc/devices/16/
 
   
  +
アイコンフォルダーへのパスを指定する代わりに、設定ファイルの {{ic|global}} セクションでアイコンテーマを直接指定することもできます。この場合、テーマのメインフォルダーのサブフォルダーでの検索を有効にするために、{{ic|1=enable_recursive_icon_lookup=true}} を設定する必要があります。
=== ショートカット ===
 
   
  +
例:
ユーザーが何も操作しない状態で通知が画面に表示され続ける待機時間を設定できます。
 
   
  +
icon_theme = Papirus
タイムアウトする前に通知を閉じるには {{ic|Control + space}} を使います。また、{{ic|Control + Shift + Space}} で画面上の全ての通知を閉じることができます。
 
  +
enable_recursive_icon_lookup = true
   
  +
== ショートカット ==
{{Tip|通知を閉じたり再表示するコマンドは変更できます。アルファベット以外の記号は単語で指定する必要があります。例: period。}}
 
   
  +
Dunst は ''dunstctl'' で制御できます。[[キーボードショートカット]] を更新して、''dunstctl'' を呼び出すことができます。
履歴リストは {{ic|Control + grave}} でアクセスできます。コンテキストメニューは {{ic|Control + Shift + period}} で開くことができます。コンテキストメニューは dmenu を使って URL をフィルタリングして URL で開きます。デフォルトのブラウザは以下のように設定できます:
 
browser = /usr/bin/chromium
 
   
  +
例:すべての通知を閉じる
== Tips and tricks ==
 
  +
  +
$ dunstctl close-all
  +
  +
例:履歴リストを表示する
  +
  +
$ dunstctl history-pop
  +
  +
== ルール ==
  +
  +
特定の通知に一致するルールをdunstrcファイルに作成し、スクリプトの実行などのアクションを実行できます。
  +
  +
=== フィルタリング ===
  +
  +
新しいルールを作成するには、構成ファイルにカスタム名を使用して新しいセクションを作成します。
  +
そのセクションでは、属性 appname、 summary、 body、 icon、 category、 match_transient、および msg_urgency を使用して、
  +
notification、 Globbing がサポートされています。例については、 [[#Scripting|Scripting]] を参照してください。
  +
{{ic|-print}} オプションから始めて、適切なルールを作成するための通知に関する有用な情報を見つけてください。
  +
  +
=== 変更 ===
  +
  +
通知が一致すると、フォーマット文字列の変更など、特定のアクションを実行できます。これは特に
  +
特定の通知を完全に無視したい場合に便利です。
  +
その場合は、 {{ic|1=format=""}} 行をルールに追加するだけです。
  +
  +
もう1つの便利な機能は、たとえば、Dunst を使用している場合など、特定の通知を履歴から除外したい場合です。
  +
[[#dunstifyを音量/明るさレベルインジケーターとして使用|音量インジケーター]] として。
  +
これを実現するには、ルールに {{ic|1=history_ignore=yes}} を追加するだけです。
   
 
=== スクリプト ===
 
=== スクリプト ===
61行目: 88行目:
 
urgency = low
 
urgency = low
 
script = do_something.sh
 
script = do_something.sh
  +
  +
指定されたスクリプトには、appname、 summary、 body、 icon、 urgency の順にパラメーターが渡されます。
  +
  +
== Dunst を一時的に無効にする ==
  +
  +
Dunst を一時的に無効にするには、2つの方法があります。
  +
  +
;{{ic|dunstctl}} を使用します
  +
:{{ic|dunstctl set-paused true/false/toggle}} を使用して、一時停止通知を無効化/再有効化または切り替えることができます。 そして、{{ic|dunstctl is-paused}} を使用して、 dunst が現在実行中か一時停止中かを確認します。
  +
  +
;{{ic|killall}} を使用する
  +
:{{ic|killall -SIGUSR1 dunst}} を使用して無効にし、 {{ic|killall -SIGUSR2 dunst}} を使用して再度有効にします
  +
  +
一時停止すると、 Dunst はすべての通知を保留します。
  +
再び Dunst を有効にすると、すべての保留通知が表示されます。
  +
  +
== Dunstify ==
  +
  +
Dunstify は、 [[デスクトップ通知#プログラミングでの使い方|notify-send]] コマンドの代替手段です。
  +
これは notify-send と完全に互換性があり、一緒に使用できますが、さらにいくつかの機能を提供します。
  +
Dunstify は、 [[Dunst]] 通知デーモンでのみ機能します。
  +
  +
通知送信で利用可能なオプションに加えて、dunstifyはIDやアクションなどのいくつかの機能を提供します。
  +
  +
=== 通知の置き換え ===
  +
  +
{{ic|-r ID}} オプションを指定して dunstify を呼び出すことにより、通知に ID を割り当てることができます。ここで、{{ic|ID}}は整数である必要があります。
  +
そのIDの通知がすでに存在する場合は、新しい通知に置き換えられます。
  +
{{ic|1=dunstify -C ID}} を使用して通知を閉じることもできます。
  +
  +
ただし、ほとんどのユースケースでは、IDのマイクロ管理よりもタグの実装が推奨されます。前者のオプションには、多くの隠れた落とし穴があるためです [https://github.com/dunst-project/dunst/issues/672] ID の置き換えは、一般的な方法ではなく、デバッグや非常に複雑な通知送信者に対して検討される場合があります [https://github.com/dunst-project/dunst/issues/672#issuecomment-554530659]
  +
  +
同じタグ(この例では ''test'') を持つ通知は、 ID を気にすることなく置き換えられます。
  +
  +
$ dunstify -h string:x-dunst-stack-tag:test Test -A 'tested,default'
  +
$ dunstify -h string:x-dunst-stack-tag:test Testing
  +
  +
=== アクション ===
  +
  +
1つ以上の {{ic|1=--action=action,label}} パラメータを指定することにより、通知から直接呼び出すことができるアクションを定義できます。
  +
例えば:
  +
dunstify --action="replyAction,reply" "メッセージを受信しました"
  +
  +
その後、ユーザーは Dunst のコンテキストメニューから指定されたアクションにアクセスできます。 dunstify の呼び出しは、通知が消えるか、アクションが選択されるまでブロックされます。前者の場合、 dunstify は、通知がタイムアウトした場合は1を返し、手動で却下された場合は2を返します [https://developer.gnome.org/notification-spec/#signals]。 後者の場合、Dunst のコンテキストメニューで選択されたアクションを返します。
  +
  +
コンテキストメニューを使用してアクションを呼び出すことに加えて、マウスイベントがアクションを呼び出す方法を定義することもできます [https://github.com/dunst-project/dunst/blob/3f3082efb3724dc​​d369de78dc94d41190d089acf/dunstrc#L237] これにより、 [https://github.com/dunst-project/dunst/issues/163#issuecomment-573191650] で提案されているように、Dunstをインタラクティブに使用できます。通知にアクションが1つしかない場合、またはアクションの名前が ''default'' の場合、そのアクションは、通知をミドルクリックすることで呼び出すことができます(デフォルト、または {{ic|dunstrc}} が {{ic|<nowiki>mouse_middle_click = do_action</nowiki>}})。
  +
  +
{{bc|<nowiki>
  +
reply_action () {}
  +
forward_action () {}
  +
handle_dismiss () {}
  +
  +
ACTION=$(dunstify --action="default,Reply" --action="forwardAction,Forward" "メッセージを受信しました")
  +
  +
case "$ACTION" in
  +
"default")
  +
reply_action
  +
;;
  +
"forwardAction")
  +
forward_action
  +
;;
  +
"2")
  +
handle_dismiss
  +
;;
  +
esac
  +
</nowiki>}}
  +
  +
== ヒントとテクニック ==
  +
  +
=== ボリューム/明るさレベルのインジケーターとして dunstify を使用 ===
  +
  +
ID の置換機能を使用して、この画像 [https://i.postimg.cc/j2CDkS1H/screen1712.png] のような単純な音量または明るさインジケーターの通知を実装できます。
  +
  +
ボリュームインジケーターを実現するには、次のスクリプトを {{ic|PATH}} のどこかに配置します。
  +
  +
{{bc|<nowiki>
  +
#!/bin/bash
  +
# changeVolume
  +
  +
# Arbitrary but unique message id
  +
msgId="991049"
  +
  +
# Change the volume using alsa(might differ if you use pulseaudio)
  +
amixer -c 0 set Master "$@" > /dev/null
  +
  +
# Query amixer for the current volume and whether or not the speaker is muted
  +
volume="$(amixer -c 0 get Master | tail -1 | awk '{print $4}' | sed 's/[^0-9]*//g')"
  +
mute="$(amixer -c 0 get Master | tail -1 | awk '{print $6}' | sed 's/[^a-z]*//g')"
  +
if [[ $volume == 0 || "$mute" == "off" ]]; then
  +
# Show the sound muted notification
  +
dunstify -a "changeVolume" -u low -i audio-volume-muted -r "$msgId" "Volume muted"
  +
else
  +
# Show the volume notification
  +
dunstify -a "changeVolume" -u low -i audio-volume-high -r "$msgId" \
  +
-h int:value:"$volume" "Volume: ${volume}%"
  +
fi
  +
  +
# Play the volume changed sound
  +
canberra-gtk-play -i audio-volume-change -d "changeVolume"
  +
</nowiki>}}
  +
  +
{{ic|changeVolume 2dB+ unmute}} などをホットキーにバインドするだけで、完了です。また、 dunst に履歴内のこれらのタイプの通知を無視させることもできます。 [[#変更]] を参照してください。
  +
  +
=== 以前の通知を上書きする ===
  +
  +
一部の通知(音や明るさなど)では、前の通知を上書きしたい場合があります。より一般的な例については、 [[#通知の置き換え]] で Dunst メソッドを使用するか、 [https://wiki.archlinux.org/index.php/Desktop_notifications#Replace_previous_notification Replacepreviousnotification] を参照してください。
  +
  +
== トラブルシューティング ==
  +
  +
=== Dunst は systemd 経由で開始できません ===
  +
  +
ディスプレイマネージャなしで dunst を使用すると、 {{ic|DISPLAY}} 環境変数が正しく設定されない場合があります。 [https://github.com/dunst-project/dunst/issues/347]
  +
  +
これを修正するには、 {{ic|.xinitrc}} に以下を追加します。
  +
systemctl --user import-environment DISPLAY
  +
  +
{{Tip|これは、最近の [[systemd]] の機能によって、{{ic|/etc/X11/xinit/xinitrc.d/50-systemd-user.sh}} の一段階で自動的に行われます。}}
  +
  +
=== 一致しないフォントサイズ (テキストよりもはるかに大きい絵文字) ===
  +
  +
これは、{{Pkg|fontconfig}} がビットマップフォントを再スケーリングしないことが原因です。 これは通常、特定の絵文字フォントでのみ認識されます (例:{{Pkg|noto-fonts-emoji}})
  +
  +
解決するには、次のコマンドを実行します。
  +
# ln -s /etc/fonts/conf.avail/10-scale-bitmap-fonts.conf /etc/fonts/conf.d/
  +
  +
Dunst を再起動します。

2023年9月25日 (月) 17:07時点における最新版

関連記事

Dunst はデスクトップ環境に同梱されている通知デーモンを置き換える軽量な代替デーモンです。

インストール

dunst パッケージをインストールしてください。

サンプル設定ファイルは /etc/dunst/dunstrc に存在します。 ファイルを ~/.config/dunst/dunstrc にコピーして適宜編集してください。

/usr/bin/dunst を起動して、ウィンドウマネージャやデスクトップ環境がスタートアップ時やログイン時に起動できるようにしてください。

ノート: プログラムが D-Bus を通じて通知を送った時に dbus-daemon によって dunst は自動で起動されるので、手動で起動する必要はないこともあります。しかし、環境によっては通知サービスが複数インストールされていることがあり、その場合どのデーモンが自動で起動されるか知るすべはありません。dbus-daemon のメンテナは明示的に、複数のプロバイダサービスについて自動起動について警告しておきます。

外観

Dunst では HTML のマークアップを使って通知を表示できます。例えば太字・斜体・取り消し線・下線のサンプルが存在します。完全なリファレンスは [1] を参照してください。markupnone に設定することで、通知から HTML を取り除くこともできます。

通知のフォーマットを指定できます。使用できるオプションは以下の通りです:

%a  アプリ名
%s  概要
%b  本文
%i  アイコン名 (パスを含む)
%I  アイコン名 (パスは含まない)
%p  進捗率 ([  0%] から [100%])

上記のオプションは HTML と組み合わせて使うことができます。例えば format<b>%s</b>\n%b と設定することで、太字の概要に、改行の後に本文を表示します。

アイコンセット

アイコンはオプション icon_path で設定されます。 ステータスとデバイス、レガシーアイコンが必要です。 デフォルトでは、 Dunst は gnome-icon-theme アイコンを探します。たとえば、代わりに adwaita-icon-theme (gnome-icon-theme の後継) を使用するには、次のようにします。

icon_path = /usr/share/icons/Adwaita/16x16/status/:/usr/share/icons/Adwaita/16x16/devices/:/usr/share/icons/Adwaita/16x16/legacy/

アイコンフォルダーへのパスを指定する代わりに、設定ファイルの global セクションでアイコンテーマを直接指定することもできます。この場合、テーマのメインフォルダーのサブフォルダーでの検索を有効にするために、enable_recursive_icon_lookup=true を設定する必要があります。

例:

icon_theme = Papirus
enable_recursive_icon_lookup = true

ショートカット

Dunst は dunstctl で制御できます。キーボードショートカット を更新して、dunstctl を呼び出すことができます。

例:すべての通知を閉じる

$ dunstctl close-all

例:履歴リストを表示する

$ dunstctl history-pop

ルール

特定の通知に一致するルールをdunstrcファイルに作成し、スクリプトの実行などのアクションを実行できます。

フィルタリング

新しいルールを作成するには、構成ファイルにカスタム名を使用して新しいセクションを作成します。 そのセクションでは、属性 appname、 summary、 body、 icon、 category、 match_transient、および msg_urgency を使用して、 notification、 Globbing がサポートされています。例については、 Scripting を参照してください。 -print オプションから始めて、適切なルールを作成するための通知に関する有用な情報を見つけてください。

変更

通知が一致すると、フォーマット文字列の変更など、特定のアクションを実行できます。これは特に 特定の通知を完全に無視したい場合に便利です。 その場合は、 format="" 行をルールに追加するだけです。

もう1つの便利な機能は、たとえば、Dunst を使用している場合など、特定の通知を履歴から除外したい場合です。 音量インジケーター として。 これを実現するには、ルールに history_ignore=yes を追加するだけです。

スクリプト

Dunst を設定することで特定の通知が表示されたときにスクリプトを実行することができます。以下は Pidgin から誰かがサインオンしたという通知がきたときにスクリプトを実行する例です:

[signed_on]
   appname = Pidgin
   summary = "*signed on*"
   urgency = low
   script = do_something.sh

指定されたスクリプトには、appname、 summary、 body、 icon、 urgency の順にパラメーターが渡されます。

Dunst を一時的に無効にする

Dunst を一時的に無効にするには、2つの方法があります。

dunstctl を使用します
dunstctl set-paused true/false/toggle を使用して、一時停止通知を無効化/再有効化または切り替えることができます。 そして、dunstctl is-paused を使用して、 dunst が現在実行中か一時停止中かを確認します。
killall を使用する
killall -SIGUSR1 dunst を使用して無効にし、 killall -SIGUSR2 dunst を使用して再度有効にします

一時停止すると、 Dunst はすべての通知を保留します。 再び Dunst を有効にすると、すべての保留通知が表示されます。

Dunstify

Dunstify は、 notify-send コマンドの代替手段です。 これは notify-send と完全に互換性があり、一緒に使用できますが、さらにいくつかの機能を提供します。 Dunstify は、 Dunst 通知デーモンでのみ機能します。

通知送信で利用可能なオプションに加えて、dunstifyはIDやアクションなどのいくつかの機能を提供します。

通知の置き換え

-r ID オプションを指定して dunstify を呼び出すことにより、通知に ID を割り当てることができます。ここで、IDは整数である必要があります。 そのIDの通知がすでに存在する場合は、新しい通知に置き換えられます。 dunstify -C ID を使用して通知を閉じることもできます。

ただし、ほとんどのユースケースでは、IDのマイクロ管理よりもタグの実装が推奨されます。前者のオプションには、多くの隠れた落とし穴があるためです [2] ID の置き換えは、一般的な方法ではなく、デバッグや非常に複雑な通知送信者に対して検討される場合があります [3]

同じタグ(この例では test) を持つ通知は、 ID を気にすることなく置き換えられます。

$ dunstify -h string:x-dunst-stack-tag:test Test -A 'tested,default'
$ dunstify -h string:x-dunst-stack-tag:test Testing

アクション

1つ以上の --action=action,label パラメータを指定することにより、通知から直接呼び出すことができるアクションを定義できます。 例えば:

dunstify --action="replyAction,reply" "メッセージを受信しました"

その後、ユーザーは Dunst のコンテキストメニューから指定されたアクションにアクセスできます。 dunstify の呼び出しは、通知が消えるか、アクションが選択されるまでブロックされます。前者の場合、 dunstify は、通知がタイムアウトした場合は1を返し、手動で却下された場合は2を返します [4]。 後者の場合、Dunst のコンテキストメニューで選択されたアクションを返します。

コンテキストメニューを使用してアクションを呼び出すことに加えて、マウスイベントがアクションを呼び出す方法を定義することもできます [5] これにより、 [6] で提案されているように、Dunstをインタラクティブに使用できます。通知にアクションが1つしかない場合、またはアクションの名前が default の場合、そのアクションは、通知をミドルクリックすることで呼び出すことができます(デフォルト、または dunstrcmouse_middle_click = do_action)。

reply_action () {}
forward_action () {}
handle_dismiss () {}

ACTION=$(dunstify --action="default,Reply" --action="forwardAction,Forward" "メッセージを受信しました")

case "$ACTION" in
"default")
    reply_action
    ;;
"forwardAction")
    forward_action
    ;;
"2")
    handle_dismiss
    ;;
esac

ヒントとテクニック

ボリューム/明るさレベルのインジケーターとして dunstify を使用

ID の置換機能を使用して、この画像 [7] のような単純な音量または明るさインジケーターの通知を実装できます。

ボリュームインジケーターを実現するには、次のスクリプトを PATH のどこかに配置します。

#!/bin/bash
# changeVolume

# Arbitrary but unique message id
msgId="991049"

# Change the volume using alsa(might differ if you use pulseaudio)
amixer -c 0 set Master "$@" > /dev/null

# Query amixer for the current volume and whether or not the speaker is muted
volume="$(amixer -c 0 get Master | tail -1 | awk '{print $4}' | sed 's/[^0-9]*//g')"
mute="$(amixer -c 0 get Master | tail -1 | awk '{print $6}' | sed 's/[^a-z]*//g')"
if [[ $volume == 0 || "$mute" == "off" ]]; then
    # Show the sound muted notification
    dunstify -a "changeVolume" -u low -i audio-volume-muted -r "$msgId" "Volume muted" 
else
    # Show the volume notification
    dunstify -a "changeVolume" -u low -i audio-volume-high -r "$msgId" \
    -h int:value:"$volume" "Volume: ${volume}%"
fi

# Play the volume changed sound
canberra-gtk-play -i audio-volume-change -d "changeVolume"

changeVolume 2dB+ unmute などをホットキーにバインドするだけで、完了です。また、 dunst に履歴内のこれらのタイプの通知を無視させることもできます。 #変更 を参照してください。

以前の通知を上書きする

一部の通知(音や明るさなど)では、前の通知を上書きしたい場合があります。より一般的な例については、 #通知の置き換え で Dunst メソッドを使用するか、 Replacepreviousnotification を参照してください。

トラブルシューティング

Dunst は systemd 経由で開始できません

ディスプレイマネージャなしで dunst を使用すると、 DISPLAY 環境変数が正しく設定されない場合があります。 [8]

これを修正するには、 .xinitrc に以下を追加します。

systemctl --user import-environment DISPLAY
ヒント: これは、最近の systemd の機能によって、/etc/X11/xinit/xinitrc.d/50-systemd-user.sh の一段階で自動的に行われます。

一致しないフォントサイズ (テキストよりもはるかに大きい絵文字)

これは、fontconfig がビットマップフォントを再スケーリングしないことが原因です。 これは通常、特定の絵文字フォントでのみ認識されます (例:noto-fonts-emoji)

解決するには、次のコマンドを実行します。

# ln -s /etc/fonts/conf.avail/10-scale-bitmap-fonts.conf /etc/fonts/conf.d/

Dunst を再起動します。