Github messages for voidlinux
 help / color / mirror / Atom feed
From: slymattz <slymattz@users.noreply.github.com>
To: ml@inbox.vuxu.org
Subject: Re: [PR PATCH] [Updated] nfs-utils: update to 2.7.1
Date: Sat, 07 Sep 2024 19:10:43 +0200	[thread overview]
Message-ID: <20240907171043.E9C992D103@inbox.vuxu.org> (raw)
In-Reply-To: <gh-mailinglist-notifications-41a7ca26-5023-4802-975b-f1789d68868e-void-packages-52088@inbox.vuxu.org>

[-- Attachment #1: Type: text/plain, Size: 1398 bytes --]

There is an updated pull request by slymattz against master on the void-packages repository

https://github.com/slymattz/void-packages nfs-utils
https://github.com/void-linux/void-packages/pull/52088

nfs-utils: update to 2.7.1
<!-- Uncomment relevant sections and delete options which are not applicable -->

#### Testing the changes
- I tested the changes in this PR: **briefly**
Installed, rebooted, mounts fine, unmounts fine. Will do some more extensive testing as I use nfs daily. 

./configure complained about the lack of libxml2 so I added libxml2-devel to makedepends

<!--
#### New package
- This new package conforms to the [package requirements](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#package-requirements): **YES**|**NO**
-->

<!-- Note: If the build is likely to take more than 2 hours, please add ci skip tag as described in
https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->

#### Local build testing
- I built this PR locally for my native architecture: x86_64-glibc

musl is currently broken. I haven't found a patch that would address this issue yet.


A patch file from https://github.com/void-linux/void-packages/pull/52088.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-nfs-utils-52088.patch --]
[-- Type: text/x-diff, Size: 12904 bytes --]

From 658c7bba4040e8b7a25e4fb21bfd522dc98860e1 Mon Sep 17 00:00:00 2001
From: Mateusz Sylwestrzak <slymattz@gmail.com>
Date: Mon, 2 Sep 2024 15:44:43 +0200
Subject: [PATCH 1/3] nfs-utils: update to 2.7.1

---
 ...sl-change_format_specifier_in_stderr.patch | 194 ++++++++++++++++++
 srcpkgs/nfs-utils/patches/musl-unistd.patch   |  22 --
 srcpkgs/nfs-utils/patches/series              |   2 +
 srcpkgs/nfs-utils/template                    |  16 +-
 4 files changed, 209 insertions(+), 25 deletions(-)
 create mode 100644 srcpkgs/nfs-utils/patches/musl-change_format_specifier_in_stderr.patch
 delete mode 100644 srcpkgs/nfs-utils/patches/musl-unistd.patch
 create mode 100644 srcpkgs/nfs-utils/patches/series

diff --git a/srcpkgs/nfs-utils/patches/musl-change_format_specifier_in_stderr.patch b/srcpkgs/nfs-utils/patches/musl-change_format_specifier_in_stderr.patch
new file mode 100644
index 00000000000000..520a087d83e7c0
--- /dev/null
+++ b/srcpkgs/nfs-utils/patches/musl-change_format_specifier_in_stderr.patch
@@ -0,0 +1,194 @@
+--- a/utils/gssd/gssd_proc.c	2024-08-20 14:30:33.000000000 +0200
++++ b/utils/gssd/gssd_proc.c	2024-09-07 17:45:50.846082081 +0200
+@@ -170,8 +170,8 @@
+ 	pthread_t tid = pthread_self();
+ 
+ 	if (get_verbosity() > 1)
+-		printerr(2, "do_downcall(0x%lx): lifetime_rec=%s acceptor=%.*s\n",
+-			tid, sec2time(lifetime_rec), (int)acceptor->length, (char *)acceptor->value);
++		printerr(2, "do_downcall(0x%p): lifetime_rec=%s acceptor=%.*s\n",
++			(void*)tid, sec2time(lifetime_rec), (int)acceptor->length, (char *)acceptor->value);
+ 	buf_size = sizeof(uid) + sizeof(timeout) + sizeof(pd->pd_seq_win) +
+ 		sizeof(pd->pd_ctx_hndl.length) + pd->pd_ctx_hndl.length +
+ 		sizeof(context_token->length) + context_token->length +
+@@ -197,7 +197,7 @@
+ 	return;
+ out_err:
+ 	free(buf);
+-	printerr(1, "do_downcall(0x%lx): Failed to write downcall!\n", tid);
++	printerr(1, "do_downcall(0x%p): Failed to write downcall!\n", (void*)tid);
+ 	return;
+ }
+ 
+@@ -210,7 +210,7 @@
+ 	int	zero = 0;
+ 	pthread_t tid = pthread_self();
+ 
+-	printerr(2, "do_error_downcall(0x%lx): uid %d err %d\n", tid, uid, err);
++	printerr(2, "do_error_downcall(0x%p): uid %d err %d\n", (void*)tid, uid, err);
+ 
+ 	if (WRITE_BYTES(&p, end, uid)) goto out_err;
+ 	if (WRITE_BYTES(&p, end, timeout)) goto out_err;
+@@ -372,8 +372,8 @@
+ 
+ 	/* create an rpc connection to the nfs server */
+ 
+-	printerr(3, "create_auth_rpc_client(0x%lx): creating %s client for server %s\n", 
+-		tid, clp->protocol, clp->servername);
++	printerr(3, "create_auth_rpc_client(0x%p): creating %s client for server %s\n",
++		(void*)tid, clp->protocol, clp->servername);
+ 
+ 	protocol = IPPROTO_TCP;
+ 	if ((strcmp(clp->protocol, "udp")) == 0)
+@@ -416,8 +416,8 @@
+ 	if (!tgtname)
+ 		tgtname = clp->servicename;
+ 
+-	printerr(3, "create_auth_rpc_client(0x%lx): creating context with server %s\n", 
+-		tid, tgtname);
++	printerr(3, "create_auth_rpc_client(0x%p): creating context with server %s\n",
++		(void*)tid, tgtname);
+ #ifdef HAVE_TIRPC_GSS_SECCREATE
+ 	memset(&req, 0, sizeof(req));
+ 	req.my_cred = sec.cred;
+@@ -553,8 +553,8 @@
+ 	int		err, resp = -1;
+ 	pthread_t tid = pthread_self();
+ 
+-	printerr(2, "krb5_not_machine_creds(0x%lx): uid %d tgtname %s\n", 
+-		tid, uid, tgtname);
++	printerr(2, "krb5_not_machine_creds(0x%p): uid %d tgtname %s\n",
++		(void*)tid, uid, tgtname);
+ 
+ 	*chg_err = change_identity(uid);
+ 	if (*chg_err) {
+@@ -602,8 +602,8 @@
+ 	int	success = 0;
+ 	pthread_t tid = pthread_self();
+ 
+-	printerr(2, "krb5_use_machine_creds(0x%lx): uid %d tgtname %s\n", 
+-		tid, uid, tgtname);
++	printerr(2, "krb5_use_machine_creds(0x%p): uid %d tgtname %s\n",
++		(void*)tid, uid, tgtname);
+ 
+ 	do {
+ 		gssd_refresh_krb5_machine_credential(clp->servername,
+@@ -943,8 +943,8 @@
+ 		free(tinfo);
+ 		return ret;
+ 	}
+-	printerr(2, "start_upcall_thread(0x%lx): created thread id 0x%lx\n", 
+-		tid, th);
++	printerr(2, "start_upcall_thread(0x%p): created thread id 0x%p\n",
++		(void*)tid, (void*)th);
+ 
+ 	tinfo->tid = th;
+ 	pthread_mutex_lock(&active_thread_list_lock);
+@@ -1008,7 +1008,7 @@
+ 	}
+ 	lbuf[lbuflen-1] = 0;
+ 
+-	printerr(2, "\n%s(0x%lx): '%s' (%s)\n", __func__, tid,
++	printerr(2, "\n%s(0x%p): '%s' (%s)\n", __func__, (void*)tid,
+ 		 lbuf, clp->relpath);
+ 
+ 	for (p = strtok(lbuf, " "); p; p = strtok(NULL, " ")) {
+--- a/utils/gssd/gssd.c	2024-08-20 14:30:33.000000000 +0200
++++ b/utils/gssd/gssd.c	2024-09-07 17:57:36.008484150 +0200
+@@ -535,8 +535,8 @@
+ 			 * upcall_thread_info from the list and free it.
+ 			 */
+ 			if (tret == PTHREAD_CANCELED)
+-				printerr(2, "watchdog: thread id 0x%lx cancelled successfully\n",
+-						info->tid);
++				printerr(2, "watchdog: thread id 0x%p cancelled successfully\n",
++						(void*)info->tid);
+ 			saveprev = info->list.tqe_prev;
+ 			TAILQ_REMOVE(&active_thread_list, info, list);
+ 			free(info);
+@@ -552,15 +552,15 @@
+ 			 */
+ 			if (now.tv_sec >= info->timeout.tv_sec) {
+ 				if (cancel_timed_out_upcalls && !(info->flags & UPCALL_THREAD_CANCELED)) {
+-					printerr(0, "watchdog: thread id 0x%lx timed out\n",
+-							info->tid);
++					printerr(0, "watchdog: thread id 0x%p timed out\n",
++							(void*)info->tid);
+ 					pthread_cancel(info->tid);
+ 					info->flags |= (UPCALL_THREAD_CANCELED|UPCALL_THREAD_WARNED);
+ 					do_error_downcall(info->fd, info->uid, -ETIMEDOUT);
+ 				} else {
+ 					if (!(info->flags & UPCALL_THREAD_WARNED)) {
+-						printerr(0, "watchdog: thread id 0x%lx running for %lld seconds\n",
+-								info->tid,
++						printerr(0, "watchdog: thread id 0x%p running for %lld seconds\n",
++								(void*)info->tid,
+ 								(long long int)(now.tv_sec - info->timeout.tv_sec + upcall_timeout));
+ 						info->flags |= UPCALL_THREAD_WARNED;
+ 					}
+@@ -580,8 +580,8 @@
+ 			break;
+ 		default:
+ 			/* EDEADLK, EINVAL, and ESRCH... none of which should happen! */
+-			printerr(0, "watchdog: attempt to join thread id 0x%lx returned %d (%s)!\n",
+-					info->tid, err, strerror(err));
++			printerr(0, "watchdog: attempt to join thread id 0x%p returned %d (%s)!\n",
++					(void*)info->tid, err, strerror(err));
+ 			break;
+ 		}
+ 	}
+--- a/utils/gssd/krb5_util.c	2024-08-20 14:30:33.000000000 +0200
++++ b/utils/gssd/krb5_util.c	2024-09-07 18:01:47.391261843 +0200
+@@ -426,8 +426,8 @@
+ 	now += 300;
+ 	pthread_mutex_lock(&ple_lock);
+ 	if (ple->ccname && ple->endtime > now && !nocache && !force_renew) {
+-		printerr(3, "%s(0x%lx): Credentials in CC '%s' are good until %s",
+-			 __func__, tid, ple->ccname, ctime((time_t *)&ple->endtime));
++		printerr(3, "%s(0x%p): Credentials in CC '%s' are good until %s",
++			 __func__, (void*)tid, ple->ccname, ctime((time_t *)&ple->endtime));
+ 		code = 0;
+ 		pthread_mutex_unlock(&ple_lock);
+ 		goto out;
+@@ -527,8 +527,8 @@
+ 	}
+ 
+ 	code = 0;
+-	printerr(2, "%s(0x%lx): principal '%s' ccache:'%s'\n", 
+-		__func__, tid, pname, cc_name);
++	printerr(2, "%s(0x%p): principal '%s' ccache:'%s'\n",
++		__func__, (void*)tid, pname, cc_name);
+   out:
+ #ifdef HAVE_KRB5_GET_INIT_CREDS_OPT_SET_ADDRESSLESS
+ 	if (init_opts)
+@@ -667,8 +667,8 @@
+ 	/* Get full target hostname */
+ 	retval = getaddrinfo(inhost, NULL, &hints, &addrs);
+ 	if (retval) {
+-		printerr(1, "%s(0x%lx): getaddrinfo(%s) failed: %s\n",
+-			 __func__, tid, inhost, gai_strerror(retval));
++		printerr(1, "%s(0x%p): getaddrinfo(%s) failed: %s\n",
++			 __func__, (void*)tid, inhost, gai_strerror(retval));
+ 		goto out;
+ 	}
+ 	strncpy(outhost, addrs->ai_canonname, outhostlen);
+@@ -677,8 +677,8 @@
+ 	    *c = tolower(*c);
+ 
+ 	if (get_verbosity() && strcmp(inhost, outhost))
+-		printerr(1, "%s(0x%0lx): inhost '%s' different than outhost '%s'\n", 
+-			 __func__, tid, inhost, outhost);
++		printerr(1, "%s(0x%p): inhost '%s' different than outhost '%s'\n",
++			 __func__, (void*)tid, inhost, outhost);
+ 
+ 	retval = 0;
+ out:
+@@ -1021,7 +1021,7 @@
+ 					tried_upper = 1;
+ 				}
+ 			} else {
+-				printerr(2, "find_keytab_entry(0x%lx): Success getting keytab entry for '%s'\n",tid, spn);
++				printerr(2, "find_keytab_entry(0x%p): Success getting keytab entry for '%s'\n", (void*)tid, spn);
+ 				retval = 0;
+ 				goto out;
+ 			}
diff --git a/srcpkgs/nfs-utils/patches/musl-unistd.patch b/srcpkgs/nfs-utils/patches/musl-unistd.patch
deleted file mode 100644
index 8a481f8d02f652..00000000000000
--- a/srcpkgs/nfs-utils/patches/musl-unistd.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-diff -ur a/support/reexport/fsidd.c b/support/reexport/fsidd.c
---- a/support/reexport/fsidd.c	2023-11-21 09:11:42.660255810 -0500
-+++ b/support/reexport/fsidd.c	2023-11-21 09:12:36.536375957 -0500
-@@ -7,6 +7,7 @@
- #include <dlfcn.h>
- #endif
- #include <event2/event.h>
-+#include <unistd.h>
- 
- #include "conffile.h"
- #include "reexport_backend.h"
-diff -ur a/support/reexport/reexport.c b/support/reexport/reexport.c
---- a/support/reexport/reexport.c	2023-11-21 09:11:42.660255810 -0500
-+++ b/support/reexport/reexport.c	2023-11-21 09:12:13.654324929 -0500
-@@ -8,6 +8,7 @@
- #include <sys/types.h>
- #include <sys/vfs.h>
- #include <errno.h>
-+#include <unistd.h>
- 
- #include "nfsd_path.h"
- #include "conffile.h"
diff --git a/srcpkgs/nfs-utils/patches/series b/srcpkgs/nfs-utils/patches/series
new file mode 100644
index 00000000000000..92beb190a57951
--- /dev/null
+++ b/srcpkgs/nfs-utils/patches/series
@@ -0,0 +1,2 @@
+musl-getservbyport.patch
+musl-svcgssd-sysconf.patch
diff --git a/srcpkgs/nfs-utils/template b/srcpkgs/nfs-utils/template
index 63e80252cd86b2..6fa183a62bb97b 100644
--- a/srcpkgs/nfs-utils/template
+++ b/srcpkgs/nfs-utils/template
@@ -1,6 +1,6 @@
 # Template file for 'nfs-utils'
 pkgname=nfs-utils
-version=2.6.4
+version=2.7.1
 revision=1
 build_style=gnu-configure
 configure_args="--with-statduser=nobody --enable-gss --enable-nfsv4
@@ -13,13 +13,14 @@ maintainer="Orphaned <orphan@voidlinux.org>"
 license="GPL-2.0-or-later"
 homepage="https://www.linux-nfs.org/"
 distfiles="${KERNEL_SITE}/utils/${pkgname}/${version}/${pkgname}-${version}.tar.xz"
-checksum=01b3b0fb9c7d0bbabf5114c736542030748c788ec2fd9734744201e9b0a1119d
+checksum=885c948a84a58bca4148f459588f9a7369dbb40dcc466f04e455c6b10fd0aa48
 replaces="rpcgen>=0"
 
 hostmakedepends="pkg-config libtirpc-devel rpcsvc-proto mit-krb5-devel"
 makedepends="libblkid-devel libmount-devel libtirpc-devel
  keyutils-devel libevent-devel mit-krb5-devel
- device-mapper-devel libcap-devel sqlite-devel"
+ device-mapper-devel libcap-devel sqlite-devel
+ libxml2-devel"
 depends="rpcbind"
 python_version=3
 conf_files="/etc/exports"
@@ -32,8 +33,17 @@ make_dirs="
 
 if [ "$XBPS_TARGET_LIBC" = "musl" ]; then
 	makedepends+=" musl-legacy-compat"
+	configure_args=+" --disable-junction" # currently broken on musl; version 2.7.1 started to enable junction by default
 fi
 
+post_patch() {
+	case "$XBPS_TARGET_MACHINE" in
+	*-musl)
+		patch -Np1 -i "$PATCHESDIR/musl-change_format_specifier_in_stderr.patch" # this patch breaks glibc compilation
+		;;
+	esac
+}
+
 pre_configure() {
 	case "$XBPS_TARGET_MACHINE" in
 	*-musl)

From 575d99f2776a2c69bb7a4ab8a1d3c6d1259f2445 Mon Sep 17 00:00:00 2001
From: Mateusz Sylwestrzak <slymattz@gmail.com>
Date: Thu, 5 Sep 2024 15:24:44 +0200
Subject: [PATCH 2/3] libtirpc: update to 1.3.5

---
 srcpkgs/libtirpc/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/libtirpc/template b/srcpkgs/libtirpc/template
index 401fc6743a1cec..88e331d0623942 100644
--- a/srcpkgs/libtirpc/template
+++ b/srcpkgs/libtirpc/template
@@ -1,6 +1,6 @@
 # Template file for 'libtirpc'
 pkgname=libtirpc
-version=1.3.4
+version=1.3.5
 revision=1
 build_style=gnu-configure
 hostmakedepends="pkg-config mit-krb5-devel"
@@ -12,7 +12,7 @@ license="BSD-3-Clause"
 homepage="https://sourceforge.net/projects/libtirpc/"
 changelog="http://git.linux-nfs.org/?p=steved/libtirpc.git;a=shortlog"
 distfiles="${SOURCEFORGE_SITE}/${pkgname}/${pkgname}-${version}.tar.bz2"
-checksum=1e0b0c7231c5fa122e06c0609a76723664d068b0dba3b8219b63e6340b347860
+checksum=9b31370e5a38d3391bf37edfa22498e28fe2142467ae6be7a17c9068ec0bf12f
 
 case "$XBPS_TARGET_MACHINE" in
 	*-musl) makedepends+=" musl-legacy-compat" ;;

From 3776891cb6a025f0965f4fcb38e153ac35dc4657 Mon Sep 17 00:00:00 2001
From: Mateusz Sylwestrzak <slymattz@gmail.com>
Date: Thu, 5 Sep 2024 15:29:14 +0200
Subject: [PATCH 3/3] rpcbind: revbump for libtirpc

---
 srcpkgs/rpcbind/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/rpcbind/template b/srcpkgs/rpcbind/template
index 2e41562c0c710d..d2b173fef18829 100644
--- a/srcpkgs/rpcbind/template
+++ b/srcpkgs/rpcbind/template
@@ -1,7 +1,7 @@
 # Template file for 'rpcbind'
 pkgname=rpcbind
 version=1.2.7
-revision=1
+revision=2
 build_style=gnu-configure
 configure_args="--enable-warmstarts --with-statedir=/run --with-rpcuser=rpc
  --with-systemdsystemunitdir=no"

  parent reply	other threads:[~2024-09-07 17:10 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-09-02 16:52 [PR PATCH] " slymattz
2024-09-02 17:12 ` [PR PATCH] [Updated] " slymattz
2024-09-05 13:29 ` slymattz
2024-09-07 14:48 ` slymattz
2024-09-07 16:08 ` slymattz
2024-09-07 16:45 ` slymattz
2024-09-07 17:10 ` slymattz [this message]
2024-09-07 17:17 ` slymattz
2024-09-07 19:05 ` slymattz
2024-09-07 19:21 ` slymattz
2024-09-07 19:37 ` slymattz
2024-09-08 11:35 ` [PR PATCH] [Updated] nfs-utils: update to 2.7.1, libtirpc: update to 1.3.5 slymattz
2024-09-08 11:59 ` slymattz
2024-09-08 18:17 ` slymattz
2024-09-26 17:59 ` [PR PATCH] [Closed]: " classabbyamp

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20240907171043.E9C992D103@inbox.vuxu.org \
    --to=slymattz@users.noreply.github.com \
    --cc=ml@inbox.vuxu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).