Scroll to navigation

dunst(1) Dunst Reference dunst(1)


dunst - A customizable and lightweight notification-daemon


dunst [-conf file] [-verbosity v] [-print] [--startup-notification]


Dunst is a highly configurable and lightweight notification daemon.

Autostarting dunst

On most installations dunst should be able to automatically be started by D-Bus when a notification is sent. This is not recommended when multiple notification deamons are installed, because D-Bus will not know which one to start. Other ways of autostarting dunst include starting dunst with your desktop environment or window manager's autostart functionality or via the provided systemd service.


List all command line flags
Use alternative config file. This disables the search for other config files. If it cannot be opened Dunst will issue a warning and fall back on its internal defaults. (Hint: `dunst -conf - </dev/null` can be used to enforce the defaults, i.e. for testing)
Print version information.
Do not display log messages, which have lower precedence than specified verbosity. This won't affect printing notifications on the terminal. Use the '-print' option for this.
Print notifications to stdout. This might be useful for logging, setting up rules or using the output in other scripts.
Display a notification on startup.


A default configuration file is included (usually /etc/xdg/dunst/dunstrc) and serves as the least important configuration file. Note: this was previously /usr/share/dunst/dunstrc. You can edit this file to change the system-wide defaults or copy it to a more important location to override its settings. See the FILES section for more details on where dunst searches for its configuration files and how settings get applied.

See dunst(5) for all possible settings.


dunst is able to get different colors for a message via notify-send. In order to do that you have to add a hint via the -h option. The progress value can be set with a hint, too.


Dunst can be paused via the `dunstctl set-paused true` command. To unpause dunst use `dunstctl set-paused false`. Another way is to send SIGUSR1 and SIGUSR2 to pause and unpause respectively. Pausing using dunstctl is recommended over using signals, because the meaning of the signals is not be stable and might change in the future.

When paused dunst will not display any notifications but keep all notifications in a queue. This can for example be wrapped around a screen locker (i3lock, slock) to prevent flickering of notifications through the lock and to read all missed notifications after returning to the computer.


These are the base directories dunst searches for configuration files in descending order of imortance:

This is the most important directory. ("$HOME/.config" if unset or empty)
This, like $PATH for instance, is a :-separated list of base directories in descending order of importance. (/etc/xdg if unset or empty)

Dunst will search these directories for the following relative file paths:

This is the base config and as such the least important in a particular base directory.
These are "drop-ins" (mind the ".d" suffix of the directory). They are more important than the base dunstrc in the parent directory, as they are considered to be small snippets to override settings. The last in lexical order is the most important one, so you can easily change the order by renaming them. A common approach to naming drop-ins is to prefix them with numbers, i.e.:


Only files with the .conf suffix will be read.

Only settings from the last base config the corresponding drop-ins get applied. So if a dunstrc is first found in ~/.config/dunst/dunstrc, drop-ins will be searched in ~/.config/dunst/dunstrc.d/*. Settings in more important files override those in less important ones.


Written by Sascha Kruse <>


Bugs and suggestions should be reported on GitHub at


Copyright 2013 Sascha Kruse and contributors (see LICENSE for licensing information)

If you feel that copyrights are violated, please send me an email.


dunst(5), dunstctl(1), dmenu(1), notify-send(1)

2023-01-31 1.9.0 (2022-06-27)