On Sat, Aug 16 2025, Stuart Henderson wrote: > On 2025/08/16 10:49, Timo Myyrä wrote: >> The update itself seems require a bit more work though. I looked at >> updating the port and got it further along but plist changes require a >> bit more work still. The config file location changed but the >> update-plist gives: >> >> Stripping directories from devel/pcre2 >> Can't put into any plist (no applicable prefix): >> /etc/xdg >> /etc/xdg/dunst >> /etc/xdg/dunst/dunstrc > > /etc/xdg wasn't in Alvar's diff (and I'm not sure we really want that > for OpenBSD, especially as we were using /etc/dunst before, so users > will need to fiddle with config file locations when updating). > > In general you can handle this sort of file with > > FAKE_FLAGS = SYSCONFDIR="${PREFIX}/share/examples" > > or similar.
How about this diff. It moves the uses the MAKE_FLAGS so dunst build notices the directories correctly and keeps using the existing /etc/dunst directory for configuration. I modified the dunst(1) man page to be a bit more precise about config locations. Timo diff /usr/ports path + /usr/ports commit - d15b1715c17a7ed962c100c7378886f137431496 blob - 03413c0556d75dcb7b0f9e21e63d90be96646ce2 file + x11/dunst/Makefile --- x11/dunst/Makefile +++ x11/dunst/Makefile @@ -2,7 +2,7 @@ COMMENT = customizable and lightweight notification-da GH_ACCOUNT = dunst-project GH_PROJECT = dunst -GH_TAGNAME = v1.12.2 +GH_TAGNAME = v1.13.0 CATEGORIES = x11 @@ -38,21 +38,20 @@ RUN_DEPENDS += x11/dbus TEST_DEPENDS = shells/bash -MAKE_FLAGS = WAYLAND=0 - -FAKE_FLAGS = PREFIX="${PREFIX}" \ +MAKE_FLAGS = PREFIX="${PREFIX}" \ MANPREFIX="${PREFIX}/man" \ DATADIR="${PREFIX}/share/examples" \ - SYSCONFDIR="/etc" + SYSCONFDIR="/etc" \ + BASHCOMPLETIONDIR="${LOCALBASE}/share/bash-completion/completions" \ + FISHCOMPLETIONDIR="${LOCALBASE}/share/fish/vendor_completions.d" \ + ZSHCOMPLETIONDIR="${LOCALBASE}/share/zsh/site-functions" \ + WAYLAND=0 pre-configure: - ${SUBST_CMD} ${WRKSRC}/docs/dunst.1.pod \ + ${SUBST_CMD} ${WRKSRC}/docs/dunst.1.pod.in \ ${WRKSRC}/docs/dunst.5.pod ${WRKSRC}/dunstrc post-install: mv ${WRKINST}/${SYSCONFDIR}/dunst ${PREFIX}/share - mv ${PREFIX}/share/examples/bash-completion ${PREFIX}/share/bash-completion - mv ${PREFIX}/share/examples/fish ${PREFIX}/share/fish - mv ${PREFIX}/share/examples/zsh ${PREFIX}/share/zsh .include <bsd.port.mk> commit - d15b1715c17a7ed962c100c7378886f137431496 blob - 131aa727da1cbfa0d084ec96bfd924c670b02181 file + x11/dunst/distinfo --- x11/dunst/distinfo +++ x11/dunst/distinfo @@ -1,2 +1,2 @@ -SHA256 (dunst-1.12.2.tar.gz) = j3ZkvU5gg+lgTighRf5bje52VfoLCZpbaColSeHzPTI= -SIZE (dunst-1.12.2.tar.gz) = 4657260 +SHA256 (dunst-1.13.0.tar.gz) = eooYE5d61ZQUiMZrkUUBcD/A9uEuYx3BhQatYXJC56A= +SIZE (dunst-1.13.0.tar.gz) = 4664717 commit - d15b1715c17a7ed962c100c7378886f137431496 blob - c010fc861b3ee52d84698142af92a707ff79b54b file + x11/dunst/patches/patch-config_mk --- x11/dunst/patches/patch-config_mk +++ x11/dunst/patches/patch-config_mk @@ -10,5 +10,5 @@ Index: config.mk +DEFAULT_CFLAGS = -g -std=gnu11 -pedantic -Wall -Wno-overlength-strings ${EXTRA_CFLAGS} +DEFAULT_LDFLAGS = -lm - CPPFLAGS_DEBUG := -DDEBUG_BUILD + CPPFLAGS_DEBUG := CFLAGS_DEBUG := -O0 commit - d15b1715c17a7ed962c100c7378886f137431496 blob - f78cc4119e33c2fc7c030b7e912506e84010c35f file + /dev/null --- x11/dunst/patches/patch-docs_dunst_1_pod +++ /dev/null @@ -1,12 +0,0 @@ -Index: docs/dunst.1.pod ---- docs/dunst.1.pod.orig -+++ docs/dunst.1.pod -@@ -94,7 +94,7 @@ Set notification timeout time. - - A default configuration file is included (usually ##SYSCONFDIR##/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 -+${PREFIX}/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. commit - d15b1715c17a7ed962c100c7378886f137431496 blob - /dev/null file + x11/dunst/patches/patch-docs_dunst_1_pod_in (mode 644) --- /dev/null +++ x11/dunst/patches/patch-docs_dunst_1_pod_in @@ -0,0 +1,16 @@ +Index: docs/dunst.1.pod.in +--- docs/dunst.1.pod.in.orig ++++ docs/dunst.1.pod.in +@@ -92,9 +92,9 @@ Set notification timeout time. + + =head1 CONFIGURATION + +-A default configuration file is included (usually @sysconfdir@/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 ++A default configuration file is @sysconfdir@/dunst/dunstrc ++and serves as the least important configuration file. Note: a sample config is provided in ++${LOCALBASE}/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. commit - d15b1715c17a7ed962c100c7378886f137431496 blob - df6ae772052695068470a7127efdd6100f02de1c file + x11/dunst/patches/patch-docs_dunst_5_pod --- x11/dunst/patches/patch-docs_dunst_5_pod +++ x11/dunst/patches/patch-docs_dunst_5_pod @@ -1,25 +1,25 @@ Index: docs/dunst.5.pod --- docs/dunst.5.pod.orig +++ docs/dunst.5.pod -@@ -463,7 +463,7 @@ Hide the count of stacked duplicate notifications. +@@ -475,7 +475,7 @@ Hide the count of stacked duplicate notifications. Show an indicator if a notification contains actions and/or open-able URLs. See ACTIONS below for further details. -=item B<icon_path> (default: "/usr/share/icons/gnome/16x16/status/:/usr/share/icons/gnome/16x16/devices/") -+=item B<icon_path> (default: "${PREFIX}/share/icons/gnome/16x16/status/:${PREFIX}/share/icons/gnome/16x16/devices/") ++=item B<icon_path> (default: "${LOCALBASE}/share/icons/gnome/16x16/status/:${LOCALBASE}/share/icons/gnome/16x16/devices/") Can be set to a colon-separated list of paths to search for icons to use with notifications. -@@ -477,7 +477,7 @@ replace icon_path search. +@@ -489,7 +489,7 @@ replace icon_path search. Comma-separated list of names of the themes to use for looking up icons. This has to be the name of the directory in which the theme is located, not the human-friendly name of the theme. So for example, the theme B<Breeze Dark> is -located in F</usr/share/icons/breeze-dark>. In this case you have to set the -+located in F<${PREFIX}/share/icons/breeze-dark>. In this case you have to set the ++located in F<${LOCALBASE}/share/icons/breeze-dark>. In this case you have to set the theme to B<breeze-dark>. The first theme in the list is the most important. Only if the icon cannot be -@@ -515,12 +515,12 @@ Maximum number of notifications that will be kept in h +@@ -527,12 +527,12 @@ Maximum number of notifications that will be kept in h is reached, older notifications will be deleted once a new one arrives. See HISTORY. commit - d15b1715c17a7ed962c100c7378886f137431496 blob - 74ca9bd6eede4f02dfe4a073d19b9bafe68a6f48 file + x11/dunst/patches/patch-dunstrc --- x11/dunst/patches/patch-dunstrc +++ x11/dunst/patches/patch-dunstrc @@ -1,7 +1,7 @@ Index: dunstrc --- dunstrc.orig +++ dunstrc -@@ -238,7 +238,7 @@ +@@ -240,7 +240,7 @@ max_icon_size = 128 # Paths to default icons (only necessary when not using recursive icon lookup) @@ -10,7 +10,7 @@ Index: dunstrc ### History ### -@@ -252,10 +252,10 @@ +@@ -254,10 +254,10 @@ ### Misc/Advanced ### # dmenu path.