Lightweight and customizable notification daemon
OTHER License
Bot releases are visible (Hide)
It's been a while since the last release. That does not mean that the
development has been stagnent. There are some long requested features have been
implemented, like a do not disturb mode in the form of multiple pause levels.
You can specify the priority of notification and selectively pause them. The
progress bar rendering for low progress values has been fixed, with preparation
work being done for more progress bar customization.
Since dunst gained Wayland support, Wayland received a lot of development.
Dunst needed to do some catchup for that. A new Wayland idle protocol is
implemented and support for Wayland touch screens and multi-seat has been
added. It's now also possible to specify displays by their port name, instead
of number.
Take a look at the changelog for all the bug fixes and improvements.
--startup_notification
option as an alternative to -startup_notification
(#1208)$HOME
in path in your dunstrc. See man 3 wordexp
for the details (#1215)monitor
(eDP-1, HDMI-1, etc). This is more relyable than the order of monitors. (#1250)Full Changelog: https://github.com/dunst-project/dunst/compare/v1.9.2...v1.10.0
Published by fwsmit over 1 year ago
This release fixes two issues with high cpu usage one of which was introduced
when trying to fix another cpu usage issue. So if you have experienced dunst
making your fans spin harder than usual that should be fixed with this release.
Thanks a lot to @bakkeby and @tobast for investigating these issues and coming up with fixes!
show_age_treshold = -1
(#1164)Full Changelog: https://github.com/dunst-project/dunst/compare/v1.9.1...v1.9.2
Published by fwsmit over 1 year ago
For users:
If you like rounded corners, this release is for you. You can now add rounded
corners to your progress bar and notification icons. Dunstctl added more
options for changing the notification history, so I'm excited for what you can
build with that. Dunst also is even more stable now with a crash being fixed
and not using 100% of your cpu anymore in some situations.
For maintainers:
Libnotify and dunst are now optional to build by setting the DUNSTIFY
make
flag to 0. (enabled by default)
Take a look at the changelog for a more detailed change description.
history-clear
command to delete all notifications from history (#1131)history-rm command
to remove a single notification from history (#1128)progress_bar_corner_radius
option for adding rounded corners to the progress bar (off by default) (#1119)icon_corner_radius
option for adding rounded corners to notification icons (#1139)idle_threshold
turned on (#1140)Full Changelog: https://github.com/dunst-project/dunst/compare/v1.9.0...v1.9.1
Published by fwsmit over 2 years ago
This release marks the point for a few big features to be useable. The
recursive icon lookup is marked stable and is used by default for new users. It
is now also possible to add gaps between notifications, although it is not done
with separate windows, so clicks in between notification will not register to
the below window. You'll also need a compositor for the transparancy to take
effect.
override_dbus_timeout
setting to override the notification timeout set viagap_size
setting. Note that since themin_icon_size
and max_icon_size
a rule for even more flexibilityscale
as well. This waymin_icon_size
andmax_icon_size
instead of icon_size
. min_icon_size
is used as the size toaction_name
setting that was accidentally dropped. (#1051)dunstctl history
. (#1060)follow=keyboard
: Fix regression where we don't fall back to mouse (#1062)min_icon_size
and max_icon_size
instead of icon_size
. by @fwsmit in https://github.com/dunst-project/dunst/pull/1069
Full Changelog: https://github.com/dunst-project/dunst/compare/v1.8.1...v1.9.0
Published by fwsmit over 2 years ago
Full Changelog: https://github.com/dunst-project/dunst/compare/v1.8.0...v1.8.1
Published by fwsmit over 2 years ago
Lots of exciting and useful features are being added to dunst, all while making
dunst even more configurable and reliable.
For users:
This release re-adds the keyboard shortcuts for those who have been missing
them. Also, support for drop-in files has been implemented. Files placed in
dunstrc.d/*.conf will be read after the main dunstrc. This may be useful for
theming (with pywal or otherwise). In the future we will add example drop-in
files for different default themes and special configuration.
For maintainers:
Not much has been changed for maintainers. Maybe you'll find the drop-in files
useful for distro-specific fixes. Note that only the files in the directory of
the used dunstrc will be read (see dunst(1) for documentation).
progress_bar_min_width
. Before it was an unused setting. (#1006)progress_bar_horizontal_alignment
for changing the alignment of the progressdunstrc.d
. See the man page dunst(1) for more information. This wasicon_position = top
.icon_position
is now a rule (also by @m-barlett).hide_text
for hiding all text of a notification. This also removes all[global]
section of the config. Not everything that was possibleenable_posix_regex
. Take a[global]
open_url
was used without URL's. (#1000)new_icon
(#1009)Full Changelog: https://github.com/dunst-project/dunst/compare/v1.7.3...v1.8.0
Published by fwsmit almost 3 years ago
follow
is now none
again by default. This was the case before v1.7.0 as well. (#990).dunstctl action
is now working again.icon_position = off
not being respected (#996).Published by fwsmit almost 3 years ago
enable_recursive_icon_lookup=true
. Setting icon sizesdunstctl rule $name$ enable/disable
. (#981)dunstctl history
lists your notification history in JSON format fordunstctl history-pop
. (#970)default_icon
setting for setting the icon when no icons are given (#984)icon
being interpreted as a filter and not being allowed in the specialicon
in these sections with default_icon
to preventicon
rule in other sections. (#984)new_icon
being used in the default dunstrc where default_icon
is thePublished by fwsmit almost 3 years ago
DUNST_DESKTOP_ENTRY
. (#874)set_category
for change a notifications category with rules. (1b72b2a)set_stack_tag
not working anymore. (#942)zwlr_foreign_toplevel_v1
. (#948)XDG_CONFIG_DIR
. (#957)Published by fwsmit almost 3 years ago
This release was long overdue. There have been a lot of changes in the mean
time. For a full list of changes, see the changelog.
For users:
The wayland support of v1.6.0 was already pretty good, but this release added
fullscreen detection and improved the stability.
This release added a few improvements to the wayland support. Dunst now
automatically falls back to X11 when the wayland compositor doesn't support the
neccesary protocols.
For maintainers:
Previously the readme said dunst depended on GTK3, which hasn't been the case
for a while. Make sure that GTK3 is not included as a dependency.
The default program for opening URL's in notifications has been changed from
firefox to xdg-open.
The Makefile and dunstrc searching has been significantly changed to be more
compliant with the XDG spec. The default config directory, SYSCONFDIR
, has
been changed from "/etc" to "${PREFIX}/etc/xdg/". To change back to the old
behaviour, run make with: make SYSCONFDIR="/etc"
(make sure to pass the same
variables to make in subsequent calls). Take a look at the "Make parameters"
section of the readme and the FILES section of the man page for more details.
Changelog:
context
and context_all
mouse actions for opening the context menu (#848)open_url
mouse action for opening url's in a notification (#848)action_name
rule for setting a default action to perform when usingdo_action
(#848)scale
variable in the settings. (#854 and #890)highlight
can now also be set through dbus hints with the key hlcolor
left_ptr
when hovering over dunst (Wayland)startup_notification
and verbosity
are now only available as a command
line arguments. (#803)
Rule settings can now also be used in the [global]
section. They will then
apply to all the notifications. (#803)
fullscreen
, ellpsize
and word_wrap
are now rules. They can still be used
in the [global]
section as well (see above). (#937 and #803)
The appid's now also need to match when stacking notifications. (#886)
xdg-open
is now being used by default for opening URL's. (#889)
geometry
has been replaced by origin
, width
, height
, offset
and
notification_height
. This allows for more flexible geometry settings. (#855)
For quickly transitioning to the new syntax, you can take the numbers from your
old geometry config as follows:
geometry = <width>x<height>+<offset>
In the new config you can then set the following variables (make sure to remove
any negative signs)
width = <width>
height = <height>
offset = <offset>
origin = top-right # or top-left, or any other direction you prefer
idle_timeout=0
(#814)follow=none
not working on Wayland (#814)sort
is falseclose_all
action.[shortcuts]
section with all it's settings. Use your WM/DE's shortcutdunstctl
to replace it. (#803)config.h
. (#803)Published by tsipinakis over 3 years ago
Dunst v1.6.0 had the wrong version listed in the Makefile. Another item to double check for the release checklist!
Published by tsipinakis over 3 years ago
dunstctl count
for showing the number of notifications (#793)text_icon_padding
for adding padding between the notification icon and text/etc/dunst/dunstrc
(#798)history_ignore
flag broken when using multiple rules (#747)follow_mode
(#755)paused
property changes (#766)dunstify
can pass empty appname to libnotify (#768)DUNST_COMMAND_{PAUSE,RESUME,TOGGLE}
(#830)Published by tsipinakis about 4 years ago
min_icon_size
option to automatically scale up icons to a desired value (#674)vertical_alignment
option to control the text/icon alignment within the notification (#684)dunstctl
command line control client (#651)ignore_dbusclose
setting (#732)dunstify
notification client is now installed by default (#701)$HOME
environment variable is unset (#693)Published by tsipinakis over 5 years ago
This is a bugfix only release
max_icon_size
not working with dynamic width (#614)--
in dunstifyPublished by tsipinakis over 5 years ago
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
idle_threshold.
Additionally, to be compliant with the notification spec, the notification
summary no longer accepts markup.
For maintainers:
Published by tsipinakis over 6 years ago
This release fixes a crash when trying to load an invalid or corrupt icon file. It contains no other functional changes.
Published by tsipinakis over 6 years ago
This release addresses a race condition that can cause the service file to be empty upon installation. It contains no other changes, refer to the release notes for 1.3 below for more info on 1.3.
Published by tsipinakis almost 7 years ago
Notable changes in 1.3:
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
respectively.
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 README.md].
Portability
GNU-specific functions have been disabled to make dunst portable to nongnu libc's.
For a full list of changes see [CHANGELOG.md].
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 https://dunst-project.org
The main repository has been changed to https://github.com/dunst-project/dunst
Dependency changes:
For a full list of changes see CHANGELOG.md.
Published by knopwob about 10 years ago
The main reason for this release is a fix for a nasty memoryleak which most prominantly surfaced through the notifications from the Spotify client (just to clarify: the spotify client is not at fault).
besides the usual bug fixes here are some of the more interesting changes:
Thank to all the contributors.
The release tarball can be found here