git: 5b8118ceb02d - main - sysutils/py-salt: Update to 3008.5

From: Kirill Ponomarev <krion_at_FreeBSD.org>
Date: Tue, 27 Oct 2026 10:48:17 UTC
The branch main has been updated by krion:

URL: https://cgit.FreeBSD.org/ports/commit/?id=5b8118ceb02d38e4b39dc7fd2bc293ea0aa66438

commit 5b8118ceb02d38e4b39dc7fd2bc293ea0aa66438
Author:     Kirill Ponomarev <krion@FreeBSD.org>
AuthorDate: 2026-10-27 10:47:17 +0000
Commit:     Kirill Ponomarev <krion@FreeBSD.org>
CommitDate: 2026-10-27 10:48:13 +0000

    sysutils/py-salt: Update to 3008.5
    
    While here:
    
    - Restore the FreeBSD default paths. Since the switch to
      USE_PYTHON=pep517 in 3008.2, PYDISTUTILS_INSTALL_TARGET is no longer
      used, so the --salt-*-dir options were silently ignored and
      salt/_syspaths.py was not generated. Salt fell back to the upstream
      defaults (/srv/salt, /srv/pillar) instead of
      /usr/local/etc/salt/states and /usr/local/etc/salt/pillar, as
      documented in master.sample. Ship _syspaths.py from files/ instead.
    
      Users of 3008.2 - 3008.4 who keep states or pillars in /srv without
      setting file_roots/pillar_roots explicitly have to move them to
      /usr/local/etc/salt/{states,pillar} or set these options.
    
    - Mention sysutils/py-saltext.freebsd in pkg-message.  Since 3008 the
      FreeBSD-specific modules (service, sysrc, sysctl, kmod, jail, ports,
      freebsd_update, shadow) are provided by this extension.  It cannot be
      added to RUN_DEPENDS, as it depends on py-salt itself.
---
 sysutils/py-salt/Makefile              | 24 +++++++-----------------
 sysutils/py-salt/distinfo              |  6 +++---
 sysutils/py-salt/files/_syspaths.py.in | 21 +++++++++++++++++++++
 sysutils/py-salt/files/pkg-message.in  |  8 ++++++++
 4 files changed, 39 insertions(+), 20 deletions(-)

diff --git a/sysutils/py-salt/Makefile b/sysutils/py-salt/Makefile
index 5a2ce30219c9..d14e25c94323 100644
--- a/sysutils/py-salt/Makefile
+++ b/sysutils/py-salt/Makefile
@@ -1,5 +1,5 @@
 PORTNAME=	salt
-PORTVERSION=	3008.4
+PORTVERSION=	3008.5
 PORTEPOCH=	1
 CATEGORIES=	sysutils python
 MASTER_SITES=	PYPI
@@ -68,21 +68,6 @@ NO_ARCH=	yes
 
 CONFLICTS=	py[0-9]*-salt-300*
 
-# we must pass these options before the target name, and python.mk has no
-# early-arguments variable, so we have to manipulate the target
-PYDISTUTILS_INSTALL_TARGET=\
-	--salt-root-dir=/ \
-	--salt-config-dir=${ETCDIR} \
-	--salt-cache-dir=/var/cache/salt \
-	--salt-sock-dir=/var/run/salt \
-	--salt-srv-root-dir=${ETCDIR} \
-	--salt-base-file-roots-dir=${ETCDIR}/states \
-	--salt-base-pillar-roots-dir=${ETCDIR}/pillar \
-	--salt-base-master-roots-dir=${ETCDIR}/salt-master \
-	--salt-logs-dir=/var/log/salt \
-	--salt-pidfile-dir=/var/run \
-	install
-
 USE_RC_SUBR=	salt_api \
 		salt_master \
 		salt_minion \
@@ -91,7 +76,7 @@ USE_RC_SUBR=	salt_api \
 
 SUB_LIST+=	PYTHON_CMD=${PYTHON_CMD}
 
-SUB_FILES=	pkg-message
+SUB_FILES=	_syspaths.py pkg-message
 
 OPTIONS_DEFINE=	AWS BASH FISH TCP ZEROMQ ZSH
 OPTIONS_DEFAULT=	BASH FISH ZEROMQ ZSH
@@ -134,6 +119,11 @@ post-patch:
 	@${REINPLACE_CMD} -e 's|yumpkg5|pkgng|' ${WRKSRC}/conf/minion
 	@${REINPLACE_CMD} -e 's|"/usr/bin/python3"|"${PYTHON_CMD}"|' ${WRKSRC}/salt/auth/pam.py
 
+# The PEP 517 build does not run "setup.py install", which used to generate
+# salt/_syspaths.py from --salt-*-dir options, so ship it ourselves
+pre-configure:
+	${CP} ${WRKDIR}/_syspaths.py ${WRKSRC}/salt/_syspaths.py
+
 do-install-BASH-on:
 	@${MKDIR} ${STAGEDIR}${PREFIX}/share/bash-completion/completions/
 	${INSTALL_DATA} ${WRKSRC}/pkg/rpm/salt.bash \
diff --git a/sysutils/py-salt/distinfo b/sysutils/py-salt/distinfo
index 14a9ea376079..350831d6db01 100644
--- a/sysutils/py-salt/distinfo
+++ b/sysutils/py-salt/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1792939108
-SHA256 (salt-3008.4.tar.gz) = 52d1ada79389bece3d73ba0315c052183829c76313bcc2b32b2f11f540cac8e7
-SIZE (salt-3008.4.tar.gz) = 15685217
+TIMESTAMP = 1793095048
+SHA256 (salt-3008.5.tar.gz) = 0259deafd601d783721e5aa8ed10677d8c4d6cc12f5de17499af71590d593315
+SIZE (salt-3008.5.tar.gz) = 15685068
diff --git a/sysutils/py-salt/files/_syspaths.py.in b/sysutils/py-salt/files/_syspaths.py.in
new file mode 100644
index 000000000000..2bbb6ad71279
--- /dev/null
+++ b/sysutils/py-salt/files/_syspaths.py.in
@@ -0,0 +1,21 @@
+# Generated by the FreeBSD port, see salt/syspaths.py.
+# None falls back to the default computed in salt/syspaths.py.
+
+ROOT_DIR = "/"
+SHARE_DIR = None
+CONFIG_DIR = "%%ETCDIR%%"
+CACHE_DIR = "/var/cache/salt"
+SOCK_DIR = "/var/run/salt"
+SRV_ROOT_DIR = "%%ETCDIR%%"
+BASE_FILE_ROOTS_DIR = "%%ETCDIR%%/states"
+BASE_PILLAR_ROOTS_DIR = "%%ETCDIR%%/pillar"
+BASE_MASTER_ROOTS_DIR = "%%ETCDIR%%/salt-master"
+BASE_THORIUM_ROOTS_DIR = None
+LIB_STATE_DIR = None
+LOGS_DIR = "/var/log/salt"
+PIDFILE_DIR = "/var/run"
+SPM_PARENT_PATH = None
+SPM_FORMULA_PATH = None
+SPM_PILLAR_PATH = None
+SPM_REACTOR_PATH = None
+HOME_DIR = None
diff --git a/sysutils/py-salt/files/pkg-message.in b/sysutils/py-salt/files/pkg-message.in
index 49e8d125da15..60827448ccf7 100644
--- a/sysutils/py-salt/files/pkg-message.in
+++ b/sysutils/py-salt/files/pkg-message.in
@@ -25,6 +25,14 @@ To configure a Salt Proxy Minion, do the following:
 
 
 
+Starting with Salt 3008, the FreeBSD-specific modules (service, sysrc,
+sysctl, kmod, jail, ports, freebsd_update, shadow) are no longer part of Salt.
+They are provided by a separate extension; install it on every FreeBSD minion:
+
+  o pkg install py%%PYTHON_SUFFIX%%-saltext.freebsd
+
+
+
 To change the Transport method from the default option of Zeromq to either TCP or RAET:
 
   o Re-build the port with the desired options enabled to install the correct runtime dependencies