diff --git a/x11/xfce4-screensaver/Makefile b/x11/xfce4-screensaver/Makefile index 758f8aa92f63..a6e24c94a9fe 100644 --- a/x11/xfce4-screensaver/Makefile +++ b/x11/xfce4-screensaver/Makefile @@ -1,66 +1,66 @@ PORTNAME= xfce4-screensaver PORTVERSION= 4.20.1 -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= x11 xfce MASTER_SITES= XFCE/apps DIST_SUBDIR= xfce4 MAINTAINER= xfce@FreeBSD.org COMMENT= Xfce 4 screen saver and locker WWW= https://docs.xfce.org/apps/xfce4-screensaver/start LICENSE= GPLv2 LGPL20 LICENSE_COMB= dual LICENSE_FILE_GPLv2= ${WRKSRC}/COPYING LICENSE_FILE_LGPL20= ${WRKSRC}/COPYING.LIB LIB_DEPENDS= libdbus-1.so:devel/dbus \ libdbus-glib-1.so:devel/dbus-glib \ libxklavier.so:x11/libxklavier USES= compiler:c11 gettext-tools gnome meson pkgconfig python \ shebangfix tar:xz xfce xorg USE_GNOME= glib20 gtk30 libwnck3 USE_XFCE= garcon xfconf USE_XORG= ice sm x11 xext xrandr xscrnsaver xxf86vm SHEBANG_FILES= src/xfce4-screensaver-configure.py MESON_ARGS= -Dsession-manager=consolekit \ -Dwayland=disabled \ -Dx11=enabled SCREENSAVER_DIR= share/applications/screensavers PORTDOCS= docbook.css xfce4-screensaver.html OPTIONS_DEFINE= DOCS NLS PAM OPTIONS_DEFAULT= PAM OPTIONS_SUB= yes DOCS_BUILD_DEPENDS= docbook-xml>=0:textproc/docbook-xml \ xmlto:textproc/xmlto DOCS_MESON_ENABLED= docs DOCS_MESON_ON= -Ddocdir=${DOCSDIR} NLS_USES= gettext-runtime PAM_RUN_DEPENDS= pam_helper:security/pam_helper PAM_MESON_ON= -Dauthentication-scheme=helper \ -Dpasswd-helper=${LOCALBASE}/bin/pam_helper PAM_MESON_OFF= -Dauthentication-scheme=pwent post-patch-NLS-off: @${REINPLACE_CMD} -e "/^subdir('po')/d" ${WRKSRC}/meson.build post-patch-PAM-on: @${REINPLACE_CMD} -e 's|/etc/pam.d|${PREFIX}/etc/pam.d|g' \ ${WRKSRC}/src/gs-auth-pam.c post-install: ${MKDIR} ${STAGEDIR}${PREFIX}/${SCREENSAVER_DIR} @${REINPLACE_CMD} 's/^\(Name[^=]*=\)\(.*\)/\1XFCE \2/' ${STAGEDIR}${PREFIX}/etc/xdg/autostart/xfce4-screensaver.desktop post-install-PAM-on: ${INSTALL_DATA} ${FILESDIR}/xfce4-screensaver.pam ${STAGEDIR}${PREFIX}/etc/pam.d/xfce4-screensaver.sample .include diff --git a/x11/xfce4-screensaver/files/patch-src_gs-lock-plug.c b/x11/xfce4-screensaver/files/patch-src_gs-lock-plug.c index e2b78d0e4701..30e2facb44a6 100644 --- a/x11/xfce4-screensaver/files/patch-src_gs-lock-plug.c +++ b/x11/xfce4-screensaver/files/patch-src_gs-lock-plug.c @@ -1,51 +1,51 @@ From 5a6b01aaeb109ef419ab021972a4225618b277ce Mon Sep 17 00:00:00 2001 From: Guido Falsi Date: Sun, 16 Nov 2025 12:14:37 +0100 Subject: [PATCH] Use pgrep in place of pidof This also simplifies function logic. Fixes: #38 --- src/gs-lock-plug.c | 16 ++++------------ 1 file changed, 4 insertions(+), 12 deletions(-) diff --git a/src/gs-lock-plug.c b/src/gs-lock-plug.c index d0806f64..fce7bf15 100644 --- src/gs-lock-plug.c +++ src/gs-lock-plug.c @@ -26,6 +26,7 @@ #include #include #include +#include #include #include @@ -179,20 +180,11 @@ toggle_infobar_visibility (GSLockPlug *plug) { static gboolean process_is_running (const char *name) { - int num_processes; - gchar *command = g_strdup_printf ("pidof %s | wc -l", name); - FILE *fp = popen (command, "r"); -+ gchar *command = g_strdup_printf ("pgrep %s", name); ++ gchar *command = g_strdup_printf ("pgrep -a %s", name); + int rc = system (command); g_free (command); - if (fp == NULL) - return FALSE; - - if (fscanf (fp, "%d", &num_processes) != 1) - num_processes = 0; - - pclose (fp); - - if (num_processes > 0) { + if (WIFEXITED (rc) && WEXITSTATUS (rc) == 0) { return TRUE; } else { return FALSE; -- GitLab