pkgsrc-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[pkgsrc/trunk]: pkgsrc/x11/dunst x11/dunst: update to dunst-1.9.0



details:   https://anonhg.NetBSD.org/pkgsrc/rev/ee3bca252bec
branches:  trunk
changeset: 391548:ee3bca252bec
user:      vins <vins%pkgsrc.org@localhost>
date:      Mon Jan 09 18:44:17 2023 +0000

description:
x11/dunst: update to dunst-1.9.0

Disable Wayland support by default (alongside systemd).
Fix building on systems w/o evdev.
Enable running regressions tests and replace interpreters in test
scripts.

CHANGELOG (since version 1.5.0):

# Dunst v1.9.0

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.

 Added

   * override_dbus_timeout setting to override the notification timeout set via
     dbus. (#1035)
   * Support notification gaps via the gap_size setting. Note that since the
     notifications are not separate windows, you cannot click in between the
     notifications. (#1053)
   * Make min_icon_size and max_icon_size a rule for even more flexibility
     (#1069)

Changed

   * The window offset is now scaled according to scale as well. This way
     notification stay visually in the same place on higher DPI screens. (#1039)
   * For the recursive icon lookup, revert to using min_icon_size and
     max_icon_size instead of icon_size. min_icon_size is used as the size to
     look for in icon themes. This way of defining icon size is more flexible and
     compatible with the old icon lookup. The new icon lookup should now be
     superior for all use cases. (#1069)
   * Recursive icon lookup is no longer experimental.
   * Recursive icon lookup is enabled in the default dunstrc. This does not change
     your settings when you have a custom dunstrc.

 Fixed

   * Added back the action_name setting that was accidentally dropped. (#1051)
   * Broken dunstctl history. (#1060)
   * Merged a few wayland fixes from mako (https://github.com/emersion/mako)
     (#1067)
   * follow=keyboard: Fix regression where we don't fall back to mouse (#1062)
   * Raw icons not being scaled according to icon size (#1043)
   * Notifications not disappearing. For some people notifications would sometimes
     stay on screen until a new notification appeared. This should not happen
     anymore (#1073).

 Merged pull requests

   * Rule attribute to override timeout set by dbus by @rpbranco in #1038
   * Scale offset according to DPI by @livanh in #1039
   * Fixes dunstctl history command by @stremlenye in #1060
   * Add support for notification gaps by @paddyw2 in #1053
   * Mako wayland fixes by @fwsmit in #1067
   * follow=keyboard: Fix regression where we don't fall back to mouse by @cdown in #1062
   * Recursive icons: Use min_icon_size and max_icon_size instead of icon_size. by @fwsmit in #1069
   * Fix notifications sometimes not disappearing by @fwsmit in #1073


# Dunst v1.8.1

 Fixed

   * Dunst sometimes not using the right config file, sometimes falling back to the
     internal defaults by @alebastr in #1042


# Dunst v1.8.0

 Added

   * Implemented progress_bar_min_width. Before it was an unused setting. (#1006)
     progress_bar_horizontal_alignment for changing the alignment of the progress
     bar. (#1021)
   * Support for config drop-ins. You can add as many configuration files as you
     want in dunstrc.d. See the man page dunst(1) for more information. This was
     done with help from @WhitePeter. (#997)
   * Thanks to @m-barlett you can place your icons at the center of your
     notifications with icon_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
     padding that would be present for a notification without text. (also by
     @m-barlett) (#985)
   * The previously removed keyboard shortcuts have been added again, but now they
     are in the [global] section of the config. Not everything that was possible
     with the keyboard shortcuts was possible with dunstctl on X11. Mainly
     activating a keyboard shortcut only when notifications are on screen. Thanks
     to @wgmayer0 for testing. (#1033).

 Changed

   * Improved the man page regarding transitioning from the old geometry.
   * The default alignment of the progress bar is now center instead of left.
   * Better regex matching for rules. When you set enable_posix_regex. Take a
     look at
     https://en.m.wikibooks.org/wiki/Regular_Expressions/POSIX-Extended_Regular_Expressions
     for how the new regex syntax works. Note that you cannot do inverse matching
     yet, I'm working on that in #1040. (#1017)
   * Thanks to @kurogetsusai you can once again use negative offsets to put a
     notification window slightly off-screen if you so like. (#1027)
   * As mentioned above, the keyboard shortcuts have been moved to the [global]
     section. Please move your settings there.

 Fixed

   * Crash when open_url was used without URL's. (#1000)
   * Icons sometimes being incorrectly sized with the new icon lookup. (#1003)
   * Incorrect defaults mentioned in the documentation. (#1004, #1029 and more)
   * Crash when icon could not be read by glib. (#1023)
   * Not being able to override anymore raw icons with new_icon (#1009)
   * High cpu usage when selecting an action in dmenu or similar. This was caused
     by dunst not going to sleep when waiting for a response. (#898)
   * Updated default values documentation (with help from @profpatch) (#1004 and
     more)


# Dunst v1.7.3

 Changed

   * follow is now none again by default. This was the case before v1.7.0 as well. (#990).

 Fixed

   * dunstctl action is now working again.
   * Segfault in experimental icon lookup when an inherited theme doesn't exist.
   * icon_position = off not being respected (#996).


# Dunst v1.7.2

 Added

   * Experimental recursive icon lookup. This is not enabled by default and can be
     enabled by setting enable_recursive_icon_lookup=true. Setting icon sizes
     still doesn't work entirely as it's supposed to and will be improved in future
     releases. (#965)
   * You can now enable or disable rules on the fly with dunstctl rule $name$ enable/disable. (#981)
     dunstctl history lists your notification history in JSON format for
     processing by scripts. (#970)
   * You can now pop specific notifications from history by passing a notification
     ID to dunstctl history-pop. (#970)
   * default_icon setting for setting the icon when no icons are given (#984)
   * Implemented display size detection in Wayland. (#973)

 Fixed

   * Text being cut off on X11 when using fractional scaling. (#975)
   * Incorrect hitbox for notification on X11 with scaling. (#980)
   * Improved warning messages for deprecated sections. (#974)
   * icon being interpreted as a filter and not being allowed in the special
     urgency sections. This is a compatibility fix, but it's recommended to replace
     all usages of icon in these sections with default_icon to prevent
     confusion with the icon rule in other sections. (#984)
   * new_icon being used in the default dunstrc where default_icon is the
     intended settings. This was commented by default, so it doesn't affect any
     default behaviour. (#984)
   * Notifications bleeding to other screens when the width was big enough. Now the
     notification's width is lowered when it would otherwise leave the display.


# Dunst v1.7.1

 Added

   * Script environment variable DUNST_DESKTOP_ENTRY. (#874)
   * Rule set_category for change a notifications category with rules. (1b72b2a)

 Fixed

   * Dunst not building with WAYLAND=0. (#938)
   * Wrong icon being shown in chromium-based browsers. (#939)
   * set_stack_tag not working anymore. (#942)
   * Outdated documentation. (#943, #944 and more)
   * Empty strings not being allowed in settings. (#946)
   * Dunst crashing when compositor doesn't support zwlr_foreign_toplevel_v1. (#948)
   * Xmore notifications showing a progress bar and icon. (#915)
   * Markup is now a rule again. Before this was undocumented behaviour. (#955)
   * Double free when setting XDG_CONFIG_DIR. (#957)
   * Dunst crashing on some compositors. (#948)
   * Dunst not exiting when wayland compositor quits. (#961)
   * Now the separators are not responsive to mouse clicks anymore. (#960)
   * Mouse action stopping the rest of the actions. (bf58928)


# Dunst v1.7.0

 Added

   * 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 using
     do_action (#848)
   * HiDPI support for both Wayland and X11. On wayland the scale can be set from
     your compositor's settings and is automatically picked up by dunst. On X11
     dunst will guess the scale based on the DPI of the screen. If that isn't good,
     you can set the scale variable in the settings. (#854 and #890)
     highlight can now also be set through dbus hints with the key hlcolor
     (#862)
   * Your dunstrc is now being checked by dunst. Dunst will print a warning when
     coming across an non-existing/invalid setting. (#803)
   * Wayland fullscreen detection (#814)
   * Wayland touch support (#814)
   * Cursor is now being changed to left_ptr when hovering over dunst (Wayland)
     (#903)

 Changed

   * 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

   * There were a bunch of changes in the installation and default locations. See
     the release notes for more information.
     Upon seeing invalid markup, dunst is a bit smarter in stripping the markup.

 Fixed

   * Lots of debug messages when idle_timeout=0 (#814)
     follow=none not working on Wayland (#814)
   * Incorrect sorting when sort is false
     NULL pointer dereference on Wayland
   * Dunst not redrawing after close_all action.
     Dunst not announcing icon-static capability over dbus (#867)
   * Dunst not falling back to X11 output when it can't initialize the Wayland
     output. (#834)
   * Improve stability on Wayland. (#930 and more)

 Removed

   * The [shortcuts] section with all it's settings. Use your WM/DE's shortcut
     manager and dunstctl to replace it. (#803)
   * Setting settings via command line arguments. (#803)
   * Setting settings via config.h. (#803)


# Dunst v1.6.0

 Added

   * Wayland support. Dunst now runs natively on wayland. This fixes several bugs
     with dunst on wayland and allows idle detection. (#781)
   * A progress bar, useful for showing volume or brightness in notifications (#775)
     A script in contrib for using the progress bar (#791)
     dunstctl count for showing the number of notifications (#793)
   * Expose environment variables info about the notification to scripts (#802)
     text_icon_padding for adding padding between the notification icon and text
     (#810)

 Changed

   * Dunst now installs a system-wide config in /etc/dunst/dunstrc (#798)
   * Move part of the man page to dunst(5) (#799)

 Fixed

   * history_ignore flag broken when using multiple rules (#747)
   * Divide by zero in radius calculation (#750)
   * Monitor setting overriding follow_mode (#755)
   * Incorrect monitor usage when using multiple X11 screens (#762)
   * Emit signal when paused property changes (#766)
   * dunstify can pass empty appname to libnotify (#768)
   * Incorrect handling of 'do_action, close' mouse action (#778)

diffstat:

 x11/dunst/Makefile                  |  27 ++++++++++++++++++++++-----
 x11/dunst/PLIST                     |   3 ++-
 x11/dunst/distinfo                  |  12 +++++++-----
 x11/dunst/patches/patch-Makefile    |  24 ++++++++++++++----------
 x11/dunst/patches/patch-src_input.c |  21 +++++++++++++++++++++
 x11/dunst/patches/patch-src_x11_x.c |  21 +++++++++++++++++++++
 6 files changed, 87 insertions(+), 21 deletions(-)

diffs (191 lines):

diff -r 7bd69c752944 -r ee3bca252bec x11/dunst/Makefile
--- a/x11/dunst/Makefile        Mon Jan 09 18:25:41 2023 +0000
+++ b/x11/dunst/Makefile        Mon Jan 09 18:44:17 2023 +0000
@@ -1,7 +1,6 @@
-# $NetBSD: Makefile,v 1.23 2023/01/03 17:38:26 wiz Exp $
+# $NetBSD: Makefile,v 1.24 2023/01/09 18:44:17 vins Exp $
 
-DISTNAME=      dunst-1.5.0
-PKGREVISION=   3
+DISTNAME=      dunst-1.9.0
 CATEGORIES=    x11
 MASTER_SITES=  ${MASTER_SITE_GITHUB:=dunst-project/}
 GITHUB_TAG=    v${PKGVERSION_NOREV}
@@ -13,18 +12,36 @@
 
 USE_TOOLS+=    gmake pod2man pkg-config
 
-MAKE_FLAGS+=   MANPREFIX=${PREFIX}/${PKGMANDIR}
+TEST_DEPENDS+= bash-[0-9]*:../../shells/bash
+TEST_TARGET=   test
+
 MAKE_FLAGS+=   SYSTEMD=0
+MAKE_FLAGS+=   WAYLAND=0
+
+REPLACE_SH+=   contrib/progress-notify.sh
+REPLACE_BASH+= contrib/dunst_xr_theme_changer.sh
+REPLACE_BASH+= test/test-install.sh
 
 SUBST_CLASSES+=                        fix-paths
 SUBST_STAGE.fix-paths=         pre-configure
 SUBST_MESSAGE.fix-paths=       Fixing absolute paths.
-SUBST_FILES.fix-paths=         dunstrc config.h
+SUBST_FILES.fix-paths=         dunstrc docs/dunst.1.pod
+SUBST_FILES.fix-paths+=                docs/dunst.5.pod
 SUBST_SED.fix-paths+=          -e 's,/usr/bin,${PREFIX}/bin,g'
 SUBST_SED.fix-paths+=          -e 's,/usr/share,${PREFIX}/share,g'
 
+SUBST_CLASSES+=                malloc
+SUBST_STAGE.malloc=    pre-configure
+SUBST_MESSAGE.malloc=  Replacing malloc.h.
+SUBST_FILES.malloc=    src/icon-lookup.c
+SUBST_SED.malloc=      -e 's|<malloc.h>|<stdlib.h>|g'
+
+INSTALL_ENV+=  MANPREFIX=${PREFIX}/${PKGMANDIR}
+INSTALL_ENV+=  SYSCONFDIR=${PREFIX}/share
+
 INSTALLATION_DIRS+=    bin
 INSTALLATION_DIRS+=    ${PKGMANDIR}/man1
+INSTALLATION_DIRS+=    ${PKGMANDIR}/man5
 INSTALLATION_DIRS+=    share/dbus-1/services
 INSTALLATION_DIRS+=    share/dunst
 
diff -r 7bd69c752944 -r ee3bca252bec x11/dunst/PLIST
--- a/x11/dunst/PLIST   Mon Jan 09 18:25:41 2023 +0000
+++ b/x11/dunst/PLIST   Mon Jan 09 18:44:17 2023 +0000
@@ -1,8 +1,9 @@
-@comment $NetBSD: PLIST,v 1.2 2020/07/29 12:27:13 wiz Exp $
+@comment $NetBSD: PLIST,v 1.3 2023/01/09 18:44:17 vins Exp $
 bin/dunst
 bin/dunstctl
 bin/dunstify
 man/man1/dunst.1
 man/man1/dunstctl.1
+man/man5/dunst.5
 share/dbus-1/services/org.knopwob.dunst.service
 share/dunst/dunstrc
diff -r 7bd69c752944 -r ee3bca252bec x11/dunst/distinfo
--- a/x11/dunst/distinfo        Mon Jan 09 18:25:41 2023 +0000
+++ b/x11/dunst/distinfo        Mon Jan 09 18:44:17 2023 +0000
@@ -1,6 +1,8 @@
-$NetBSD: distinfo,v 1.10 2021/10/26 11:33:47 nia Exp $
+$NetBSD: distinfo,v 1.11 2023/01/09 18:44:17 vins Exp $
 
-BLAKE2s (dunst-1.5.0.tar.gz) = 807f3e3d3891e9f1dcc3adba56b0a8c2e41e2ccc5626be6a39ab185d34f147f2
-SHA512 (dunst-1.5.0.tar.gz) = 2057dc530adce1dac89f12f4ca55e9186d378ccc2b406e0fa20d43bc69f671dc303b608a4fea781ab1193bd2e159dcbdecf3baf50e27ac9b0f164965b5824c85
-Size (dunst-1.5.0.tar.gz) = 169272 bytes
-SHA1 (patch-Makefile) = 9ef53272ab7b41821a3c4f76fd302f4e143fe28e
+BLAKE2s (dunst-1.9.0.tar.gz) = 9793df513b94e81d59fcbbf8451f036d99154840b81035b31884680329515a19
+SHA512 (dunst-1.9.0.tar.gz) = e43c960561d1f804c1d8f73f9376b33f61bf1ba5c5d0579c9875ef96da6522e214d5b74166ca3375dff1b4b0291b611b2d9ac1fb41fa8722db04c21e898824d1
+Size (dunst-1.9.0.tar.gz) = 4609222 bytes
+SHA1 (patch-Makefile) = 3b0f86f345f024fc1f6d15654a715a254e78fb58
+SHA1 (patch-src_input.c) = 5f5da708c7419c1fa94da9c3cc82b90c8abe8e3f
+SHA1 (patch-src_x11_x.c) = e3f7ce8e0522c258154f9be8e19221536e039c8b
diff -r 7bd69c752944 -r ee3bca252bec x11/dunst/patches/patch-Makefile
--- a/x11/dunst/patches/patch-Makefile  Mon Jan 09 18:25:41 2023 +0000
+++ b/x11/dunst/patches/patch-Makefile  Mon Jan 09 18:44:17 2023 +0000
@@ -1,27 +1,31 @@
-$NetBSD: patch-Makefile,v 1.5 2020/08/11 18:40:45 joerg Exp $
+$NetBSD: patch-Makefile,v 1.6 2023/01/09 18:44:17 vins Exp $
 
 Use BSD_INSTALL.
 
---- Makefile.orig      2020-07-23 10:27:50.000000000 +0000
+--- Makefile.orig      2022-06-27 12:43:39.000000000 +0000
 +++ Makefile
-@@ -165,19 +165,19 @@ clean-coverage-run:
- install: install-dunst install-dunstctl install-doc install-service install-dunstify
+@@ -184,22 +184,22 @@ clean-wayland-protocols:
+ install: install-dunst install-dunstctl install-dunstrc install-service install-dunstify
  
  install-dunst: dunst doc
 -      install -Dm755 dunst ${DESTDIR}${BINDIR}/dunst
 -      install -Dm644 docs/dunst.1 ${DESTDIR}${MANPREFIX}/man1/dunst.1
+-      install -Dm644 docs/dunst.5 ${DESTDIR}${MANPREFIX}/man5/dunst.5
 -      install -Dm644 docs/dunstctl.1 ${DESTDIR}${MANPREFIX}/man1/dunstctl.1
 +      ${BSD_INSTALL_PROGRAM} dunst ${DESTDIR}${BINDIR}/dunst
 +      ${BSD_INSTALL_DATA} docs/dunst.1 ${DESTDIR}${MANPREFIX}/man1/dunst.1
++      ${BSD_INSTALL_DATA} docs/dunst.5 ${DESTDIR}${MANPREFIX}/man5/dunst.5
 +      ${BSD_INSTALL_DATA} docs/dunstctl.1 ${DESTDIR}${MANPREFIX}/man1/dunstctl.1
  
  install-dunstctl: dunstctl
 -      install -Dm755 dunstctl ${DESTDIR}${BINDIR}/dunstctl
 +      ${BSD_INSTALL_SCRIPT} dunstctl ${DESTDIR}${BINDIR}/dunstctl
  
- install-doc:
--      install -Dm644 dunstrc ${DESTDIR}${DATADIR}/dunst/dunstrc
-+      ${BSD_INSTALL_DATA} dunstrc ${DESTDIR}${DATADIR}/dunst/dunstrc
+ ifeq (1,${SYSCONF_FORCE_NEW})
+ install-dunstrc:
+-      install -Dm644 dunstrc ${DESTDIR}${SYSCONFFILE}
++      ${BSD_INSTALL_DATA} dunstrc ${DESTDIR}${SYSCONFFILE}
+ endif
  
  install-service: install-service-dbus
  install-service-dbus: service-dbus
@@ -30,12 +34,12 @@
  ifneq (0,${SYSTEMD})
  install-service: install-service-systemd
  install-service-systemd: service-systemd
-@@ -185,7 +185,7 @@ install-service-systemd: service-systemd
+@@ -207,7 +207,7 @@ install-service-systemd: service-systemd
  endif
  
  install-dunstify: dunstify
 -      install -Dm755 dunstify ${DESTDIR}${BINDIR}/dunstify
 +      ${BSD_INSTALL_PROGRAM} dunstify ${DESTDIR}${BINDIR}/dunstify
  
- uninstall: uninstall-service uninstall-dunstctl
-       rm -f ${DESTDIR}${BINDIR}/dunst
+ uninstall: uninstall-keepconf
+ uninstall-purge: uninstall-keepconf uninstall-dunstrc
diff -r 7bd69c752944 -r ee3bca252bec x11/dunst/patches/patch-src_input.c
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/x11/dunst/patches/patch-src_input.c       Mon Jan 09 18:44:17 2023 +0000
@@ -0,0 +1,21 @@
+$NetBSD: patch-src_input.c,v 1.1 2023/01/09 18:44:17 vins Exp $
+
+Allow building on systems without evdev.
+
+--- src/input.c.orig   2022-06-27 12:43:39.000000000 +0000
++++ src/input.c
+@@ -4,7 +4,14 @@
+ #include "settings.h"
+ #include "queues.h"
+ #include <stddef.h>
++#if defined(__linux__) || defined(__FreeBSD__)
+ #include <linux/input-event-codes.h>
++#else
++#define BTN_LEFT      (0x110)
++#define BTN_RIGHT     (0x111)
++#define BTN_MIDDLE    (0x112)
++#define BTN_TOUCH     (0x14a)
++#endif
+ 
+ int get_notification_clickable_height(struct notification *n, bool first, bool last)
+ {
diff -r 7bd69c752944 -r ee3bca252bec x11/dunst/patches/patch-src_x11_x.c
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/x11/dunst/patches/patch-src_x11_x.c       Mon Jan 09 18:44:17 2023 +0000
@@ -0,0 +1,21 @@
+$NetBSD: patch-src_x11_x.c,v 1.1 2023/01/09 18:44:17 vins Exp $
+
+Allow building on systems without evdev.
+
+--- src/x11/x.c.orig   2022-06-27 12:43:39.000000000 +0000
++++ src/x11/x.c
+@@ -19,7 +19,14 @@
+ #include <X11/Xlib.h>
+ #include <X11/Xresource.h>
+ #include <X11/Xutil.h>
++#if defined(__linux__) || defined(__FreeBSD__)
+ #include <linux/input-event-codes.h>
++#else
++#define BTN_LEFT    (0x110)
++#define BTN_RIGHT   (0x111)
++#define BTN_MIDDLE  (0x112)
++#define BTN_TOUCH   (0x14a)
++#endif
+ 
+ #include "../dbus.h"
+ #include "../draw.h"



Home | Main Index | Thread Index | Old Index