+++
title = "Dunst - добавляем к уведомлениям звуковое сопровождение"
date = 2025-03-14
description = "Dunst — это легковесный и настраиваемый демон уведомлений для Linux. В этой статье для примера мы рассмотрим, как настроить Dunst так, чтобы он проигрывал звук после завершения загрузки файла в браузере Vivaldi."

[taxonomies]
tags = ["dunst", "vivaldi", "notification"]

[extra]
quick_navigation_buttons = true
toc = true
mermaid = false
social_media_card = "social_cards/index_dunst.webp"
+++

## Определение уведомления

Прежде чем создать правило для Dunst, необходимо выяснить, какие параметры содержит уведомление о завершении загрузки.

Откройте терминал и запустите одну из следующих команд:

```bash
dunst -print
```

или

```bash
dbus-monitor "interface='org.freedesktop.Notifications'"
```

Затем загрузите файл через Vivaldi и обратите внимание на появившееся уведомление. Важно определить 'appname' и 'summary', которые используются для фильтрации уведомлений.

Получим вот такой вывод 

```conf
...
   string "Vivaldi"
   uint32 0
   string "file:///tmp/..com.vivaldi.Vivaldi.aPjVzZ"
   string "Загрузка завершена"
   string "Vivaldi
...
```

## Настройка правила в Dunst

Открываем конфигурационный файл Dunst `~/.config/dunst/dunstrc` добавляем в конец файла следующее правило:

```conf
[vivaldi_sound]
      appname = "Vivaldi"
      summary = "Загрузка завершена"
      script = "~/.config/dunst/scripts/vivaldi-sound.sh"
  #    new_icon = "~/.config/dunst/scripts/download.svg"
```
**Разбор параметров:**

- `appname` = "vivaldi" — фильтр по приложению (может быть Vivaldi-stable, уточните в отладчике dunst -print).
- `summary` = "Загрузка завершена" — заголовок уведомления (может отличаться, проверьте с помощью dbus-monitor).
- `script` = "vivaldi-sound.sh" — ссылка на скрипт 
- `new_icon` = "путь до изображения" - при желании можно сменить иконку в уведомлении


Содержимое `vivaldi-sound.sh`

```bash
 #!/bin/sh
  paplay ~/.config/dunst/scripts/sounds/zvonkiy-korotkiy-zvuk-uvedomleniya.ogg
```

## Перезапуск Dunst

После сохранения изменений нужно перезапустить Dunst

`pkill dunst && dunst &`

## Заключение

Теперь после завершения загрузки файла в Vivaldi будет воспроизводить звуковой сигнал через Dunst. Вы можете настроить другие уведомления аналогичным способом, например, добавить звуки для других событий, таких как ошибки или завершение работы программ.
