fork with minor changes
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

257 lines
11 KiB

Release Notes For v1.5.0
For users:
The most important update from the previous version is the addition of the
dunstctl command and dunstify utility, a drop-in notify-send replacement (which
existed for a while, but wasn't installed by default).
The internal keyboard shortcut support in dunst is now considered deprecated
and should be replaced by dunstctl calls. You can use the configuration of your
WM or DE to bind these to shortcuts of your choice.
Additionally, another long requested feature implemented is RGBA/transparency
support. Given an active compositor you can now add an optional transparency
component to all colors in #RRGGBBAA format.
For maintainers:
As mentioned above, two new binaries are now installed by default, dunstctl and dunstify.
libnotify has been added as a dependency as it's used internally by dunstify.
Release Notes For v1.4.0
There has been significant internal refactoring since the last release which
might have introduced some new bugs. Be sure to report anything you find.
However, as usual, there has been a lot of bug-fixing and a lot of new features
have been added as well. Look at the full changelog for a breakdown.
Some important points to note:
For users:
* Behavioural changes
In the previous release we introduced support for clients to mark
notifications as 'transient'. Transient notifications used to 1) bypass
idle_threshold and 2) not be saved in history.
The latter behaviour has been disabled by default and can be re-created using
rules if necessary. Transient notifications will now only bypass
Additionally, to be compliant with the notification spec, the notification
summary no longer accepts markup.
For maintainers:
* Dependency on libxdg-basedir has been removed
Release Notes For v1.3.0
Version 1.3 is supposed to be fully backwards compatible with 1.2.
For users:
* Behavioural changes
Dunst respects the timeout with millisecond accuracy now. Notifications with
a one second timeout are not shown up to three seconds.
Additionally you can specify timeout values in milliseconds, seconds, minutes,
hours or days using the ms, s, h, or d suffix in the config value
Transient notifications time out ignoring the `idle_threshold` setting and are not
saved in history. This can be overridden with a rule containing `set_transient = no`.
In the same vein there is the `match_transient` condition to match transient
notifications via rules.
A prefixed tilde (`~/`) in path settings (browser, dmenu, script) is interpreted as the
home folder of the user.
* Configuration Options
`icon_folders` got deprecated and renamed to `icon_path`. `icon_folders` is still
supported, but will get removed in future.
The option `ellipsize` got introduced. It controls where to ellipsize the text of
an overlong notification if `word_wrap = no`.
For maintainers:
* Dependencies
The GTK3+ dependency got removed. Instead of this gdk-pixbuf is required
explicitly. This had been a transient dependency before.
In the Makefile, libxrandr is now specified to require version 1.5 or newer.
The dependency on libxrandr >= 1.5 is not new, Dunst 1.2.0 required it too
but there was no active check for it.
* Installation process
The internals of dunst's make installation process have slightly changed. The
install routine won't install the service files for DBus and systemd in a hardcoded
subdirectory of $PREFIX. It'll now query the `dbus-1` and `systemd` pkg-config
packages for those paths and will put it there.
To overwrite the pkg-config values, you can manually specify another path.
Use `SERVICEDIR_(DBUS|SYSTEMD)` vars as parameters to your make calls.
For all introduced variables, see [the].
* Portability
GNU-specific functions have been disabled to make dunst portable to nongnu libc's.
For a full list of changes see [].
Release Notes For v1.2.0
After about 3 years of inactivity, dunst is back under active development.
Version 1.2 is supposed to be fully backwards compatible with 1.1 but due to
the number of changes and the time since the last release there may be some
overlooked breakages. If one is found it should be reported to the bug tracker.
For users:
* Markup
The `allow_markup` setting has been deprecated in favour of `markup` which
is a multi-value setting that can be used to control much more accurately
how markup in notifications should be handled. Currently it only supports
`no`, `strip` and `full` as values but it is planned to be expanded soon.
To preserve backwards compatibility, `allow_markup` is still supported but
users are encouraged to update their configuration files since it will be
removed after a few major releases.
* DPI handling
The DPI value used is now retrieved from the `Xft.dpi` X resource if
available. If not, the default value 96 will be used.
Additionally, as an experiment a per-monitor dpi setting, which tries to
calculate an acceptable dpi values for each monitor, has been added to the
experimental section of the configuration file.
* RandR and Xinerama
Dunst switched from using the Xinerama extension to provide multi-monitor
support to using the more modern RandR extension. While this change won't
affect the majority of users, some legacy drivers do not support RandR. In
that case, the `force_xinerama` option was added as a way to fall back to
the old method.
The downside of forcing Xinerama to be used is that dunst won't be able to
detect when a monitor is added or removed meaning that follow mode might
break if the screen layout changes.
* Frame settings
All the settings in the frame section of the configuration file have been
deprecated and have been moved into the global section. The `color` and `size`
settings became `frame_color` and `frame_size` respectively. As with
`allow_markup`, the old format still works but it'll be removed in one of the
next major releases.
* Deprecation of urgency-specific command line flags
The urgency specific command line flags (`-li, -ni, -ci, -lf, -nf, -cf, -lb,
-nb, -cb, -lfr, -nfr, -cfr, -lto, -nto, -cto`) have been deprecated with no
plan for a replacement. If you rely on them please respond to issue #328 on
the bug tracker with your use case.
For maintainers:
* The project homepage has been changed to
* The main repository has been changed to
* Dependency changes:
- Dependency on libraries that were unused in the code but were mentioned as
dependencies has been dropped. Dunst no longer depends on: libfreetype,
libxft and libxext.
- Added dependency on libxradnr and libgtk2.0.
For a full list of changes see
Release Notes For v1.0.0
There are new dependencies introduced with this version:
* The drawing backend was moved from Xlib to Cairo/Pango.
This change requires some user intervention since Pango
uses different font strings. For example "Monospace-12"
becomes "Monospace 12". Font sizes might also get interpreted
* Markup
Markup within the notification can be interpreted by pango.
Examples are <i>italic</i> and <b>bold</b>. If the Markup
can't be parsed by pango, the tags are stripped from the
notification and the text is displayed as plain text. An error
message gets printed to stdout describing why the markup could
not be parsed.
To make use of markup the option allow_markup must be set in dunstrc.
If this option is not set, dunst falls back to the old behaviour
(stripping all tags from the text and display plain text).
* Actions are now supported.
If a client adds an action to a notification this gets indicated
by an (A) infront of the notification. In this case the
context menu shortcut can be used to invoke this action.
* Indicator for URLs.
If dunst detects an URL within the notification this gets indicated
by an (U) infront of the notification. As with actions the URL can
be opened with the context menu shortcut. (This requires the browser
option to be set in the dunstrc).
* dunstify ( a drop-in replacement for notify-send)
Since notify-send lacks some features I need to for testing, I've
written dunstify. It supports the same option as notify-send + The
abillity to print the id of the notification to stdout and to replace
or close existing notifications.
id=$(dunstify -p "Replace" "this should get replaced after the sleep")
sleep 5
dunstify -r $id "replacement"
see dunstify --help for additional info.
Since dunstify depends on non-public parts of libnotify it may break
on every other libnotify version than that version that I use.
Because of this it does not get build and installed by default.
It can be build with "make dunstify". An installation target does
not exist.
Please don't open bug reports when dunstify doesn't work with your
version of libnotify
Release Notes For v0.4.0
Since dunst has lost its ability to show notifications independend of
dbus/libnotify a long time ago I think it is time that the describtion reflects
that. Even though this breaks the acronym. So if you're a packager please update
the package description to read something like:
"Dunst - a dmenu-ish notification-daemon"
"Dunst is a highly configurable and lightweight notification-daemon"
Release Tarballs are now available at:
For more information have a look at the CHANGELOG and the new options in dunstrc.