diff --git a/net/netatalk4/Makefile b/net/netatalk4/Makefile index d113e6b3af43..4aad62fd8f49 100644 --- a/net/netatalk4/Makefile +++ b/net/netatalk4/Makefile @@ -1,107 +1,106 @@ PORTNAME= netatalk -PORTVERSION= 4.5.2 -PORTREVISION= 1 +PORTVERSION= 4.6.0 CATEGORIES= net MASTER_SITES= https://github.com/${PORTNAME}/${PORTNAME}/releases/download/netatalk-${PORTVERSION:S/./-/g}/ PKGNAMESUFFIX= 4 MAINTAINER= marcus@FreeBSD.org COMMENT= File server for Mac OS X WWW= https://netatalk.io/ LICENSE= GPLv2 BUILD_DEPENDS= cmark:textproc/cmark LIB_DEPENDS= libgcrypt.so:security/libgcrypt \ libevent.so:devel/libevent \ libiniparser.so:devel/iniparser \ libbstring.so:devel/bstring USES= bdb:18 cpe gettext iconv:wchar_t meson perl5 pkgconfig shebangfix ssl tar:xz USE_GNOME= libxslt:build USE_LDCONFIG= yes USE_RC_SUBR= netatalk #INSTALL_TARGET=install-strip MESON_ARGS= -Dwith-libgcrypt-path=${LOCALBASE} \ -Dwith-bdb-path=${LOCALBASE} \ -Dwith-libiconv-path=${LOCALBASE} \ -Dwith-dtrace=false \ -Dwith-init-hooks=false \ -Dpkg_config_path=${LOCALBASE}/libdata/pkgconfig \ -Dwith-webmin=false \ -Dwith-cups=false \ -Dwith-testsuite=false \ -Dwith-appletalk=false \ -Ddefault_library=both \ --infodir=${PREFIX}/share/info OPTIONS_DEFINE=PAM KERBEROS5 LDAP SENDFILE KERBEROS DBUS MYSQL ACL LIBWRAP SPOTLIGHT OPTIONS_DEFAULT=AVAHI DBUS KERBEROS LIBWRAP SENDFILE OPTIONS_RADIO=ZEROCONF OPTIONS_RADIO_ZEROCONF=AVAHI MDNSRESPONDER ZEROCONF_DESC= Zeroconf(Bonjour) support MYSQL_DESC= Enable MySQL CNID backend support SENDFILE_DESC= Enable Sendfile support ACL_DESC= Enable ACL support SPOTLIGHT_DESC= Enable Spotlight search support OPTIONS_SUB= yes KERBEROS5_MESON_ON= -Dwith-krbV-uam=true \ -Dwith-kerberos=true KERBEROS5_MESON_OFF= -Dwith-krbV-uam=false \ -Dwith-kerberos=false KERBEROS_LIB_DEPENDS=libgpg-error.so:security/libgpg-error PAM_MESON_ON= -Dwith-pam-path=${LOCALBASE} PAM_MESON_OFF= -Dwith-pam=false AVAHI_CFLAGS= -I${LOCALBASE}/include -L${LOCALBASE}/lib AVAHI_LIB_DEPENDS= libavahi-client.so:net/avahi-app AVAHI_SUB_LIST= ZEROCONF="avahi_daemon" MDNSRESPONDER_CFLAGS= -I${LOCALBASE}/include -L${LOCALBASE}/lib MDNSRESPONDER_LIB_DEPENDS= libdns_sd.so:net/mDNSResponder MDNSRESPONDER_SUB_LIST= ZEROCONF="mdnsd" LDAP_MESON_ON= -Dwith-ldap-path=${LOCALBASE} LDAP_MESON_OFF= -Dwith-ldap=false LDAP_CFLAGS= -I${LOCALBASE}/include -L${LOCALBASE}/lib LDAP_USES= ldap SENDFILE_MESON_OFF=-Dwith-sendfile=false DBUS_USES= gnome python DBUS_USE= GNOME+=glib20 DBUS_LIB_DEPENDS= libdbus-glib-1.so:devel/dbus-glib \ libdbus-1.so:devel/dbus DBUS_RUN_DEPENDS= ${PYTHON_SITELIBDIR}/dbus/_dbus.py:devel/py-dbus@${PY_FLAVOR} DBUS_MESON_ON= -Dwith-dbus-daemon-path=${LOCALBASE}/bin/dbus-daemon DBUS_MESON_OFF= -Dwith-afpstats=false MYSQL_USES= mysql MYSQL_MESON_ON=-Dwith-cnid-backends=mysql MYSQL_MESON_OFF=-Dwith-cnid-backends=dbd ACL_LIB_DEPENDS= libsunacl.so:sysutils/libsunacl ACL_MESON_OFF=-Dwith-acls=false LIBWRAP_MESON_OFF=-Dwith-tcp-wrappers=false SPOTLIGHT_LIB_DEPENDS= libtinysparql-3.0.so:devel/tinysparql SPOTLIGHT_MESON_OFF= -Dwith-spotlight=false SHEBANG_GLOB= afpstats CONFLICTS= netatalk3 .include .if ${PORT_OPTIONS:MAVAHI}=="" && ${PORT_OPTIONS:MMDNSRESPONDER}=="" SUB_LIST+= ZEROCONF="" MESON_ARGS+=-Dwith-zeroconf=false .endif post-patch: @${REINPLACE_CMD} -e 's|%%DB_NAME%%|${BDB_INCLUDE_DIR:T}|' \ ${WRKSRC}/meson.build # @${REINPLACE_CMD} -e 's|\.dist|\.sample|g' \ # ${WRKSRC}/config/Makefile.in # @${REINPLACE_CMD} -e 's|%%PYTHONCMD%%|${PYTHONCMD}|' \ # ${WRKSRC}/contrib/shell_utils/afpstats post-install: .if ${PORT_OPTIONS:MPAM} ${INSTALL_DATA} ${FILESDIR}/pam.conf ${STAGEDIR}${PREFIX}/etc/pam.d/netatalk.sample .endif .include diff --git a/net/netatalk4/distinfo b/net/netatalk4/distinfo index ab30a82d3dbc..475338d407c0 100644 --- a/net/netatalk4/distinfo +++ b/net/netatalk4/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1789236823 -SHA256 (netatalk-4.5.2.tar.xz) = 2cdfd5420e8e91c85c82dda66a92dcdd5974eef076feb169b279c600133f38b2 -SIZE (netatalk-4.5.2.tar.xz) = 1307800 +TIMESTAMP = 1789828896 +SHA256 (netatalk-4.6.0.tar.xz) = 5d5756c55935df84098cfb5a2c3a90b8864a46d3c1671aa164481bced0724add +SIZE (netatalk-4.6.0.tar.xz) = 1558368 diff --git a/net/netatalk4/files/patch-config_meson.build b/net/netatalk4/files/patch-config_meson.build index 7476947d04ea..eae42bed99f0 100644 --- a/net/netatalk4/files/patch-config_meson.build +++ b/net/netatalk4/files/patch-config_meson.build @@ -1,72 +1,69 @@ ---- config/meson.build.orig 2026-05-30 12:42:34 UTC +--- config/meson.build.orig 2026-09-15 04:49:45 UTC +++ config/meson.build -@@ -4,65 +4,21 @@ afp_conf = configure_file( +@@ -4,62 +4,21 @@ afp_conf = configure_file( configuration: cdata, ) --if (fs.exists(pkgconfdir / 'afp.conf') and not get_option('with-overwrite')) +-if fs.exists(pkgconfdir / 'afp.conf') and not overwrite_config - message('will not replace existing', pkgconfdir / 'afp.conf') -else - install_data(afp_conf, install_dir: pkgconfdir, install_tag: 'config') -endif +install_data(afp_conf, rename: 'afp.conf.sample', install_dir: pkgconfdir) if have_spotlight and use_spotlight_localsearch subdir('dconf') dbus_session_conf = configure_file( input: 'dbus-session.conf.in', - output: 'dbus-session.conf', + output: 'dbus-session.conf.netatalk', configuration: cdata, ) -- if ( -- fs.exists(pkgconfdir / 'dbus-session.conf') -- and not get_option('with-overwrite') -- ) +- if (fs.exists(pkgconfdir / 'dbus-session.conf') and not overwrite_config) - message('will not replace existing', pkgconfdir / 'dbus-session.conf') - else - install_data(dbus_session_conf, install_dir: pkgconfdir, install_tag: 'config') - endif + install_data(dbus_session_conf, install_dir: pkgconfdir) endif -static_conf_files = ['extmap.conf'] - --if have_appletalk +-if enable_appletalk - static_conf_files += ['atalkd.conf', 'macipgw.conf', 'papd.conf'] -endif - -cups_libdir = '' - -if get_option('with-cups-libdir-path') != '' - cups_libdir = get_option('with-cups-libdir-path') -elif host_os == 'netbsd' - cups_libdir = '/usr/pkg/libexec' -else - cups_libdir = '/usr/lib' -endif - --if have_appletalk and have_cups and get_option('with-cups-pap-backend') +-if enable_appletalk and have_cups and install_cups_pap_backend - configure_file( - input: 'pap.in', - output: 'pap', - configuration: cdata, - install: true, - install_dir: cups_libdir / 'cups/backend', - install_tag: 'runtime', - ) -endif - -foreach file : static_conf_files -- if (fs.exists(pkgconfdir / file) and not get_option('with-overwrite')) +- if fs.exists(pkgconfdir / file) and not overwrite_config - message('will not replace existing', pkgconfdir / file) - else - install_data(file, install_dir: pkgconfdir, install_tag: 'config') - endif -endforeach +install_data('extmap.conf', rename: 'extmap.conf.sample', install_dir: pkgconfdir) - if (fs.exists('/etc/ld.so.conf.d') and get_option('with-ldsoconf')) + if fs.exists('/etc/ld.so.conf.d') and enable_ldsoconf configure_file( diff --git a/net/netatalk4/files/patch-config_pam_meson.build b/net/netatalk4/files/patch-config_pam_meson.build index dfa44713a9f1..46eddaa95f66 100644 --- a/net/netatalk4/files/patch-config_pam_meson.build +++ b/net/netatalk4/files/patch-config_pam_meson.build @@ -1,11 +1,11 @@ ---- config/pam/meson.build.orig 2026-09-12 18:19:45 UTC +--- config/pam/meson.build.orig 2026-09-19 15:04:37 UTC +++ config/pam/meson.build @@ -4,8 +4,3 @@ netatalk_pamd = configure_file( configuration: cdata, ) --if (fs.exists(pam_confdir / 'netatalk') and not get_option('with-overwrite')) +-if fs.exists(pam_confdir / 'netatalk') and not overwrite_config - message('will not replace existing', pam_confdir / 'netatalk') -else - install_data(netatalk_pamd, install_dir: pam_confdir, install_tag: 'config') -endif diff --git a/net/netatalk4/files/patch-meson.build b/net/netatalk4/files/patch-meson.build index d41c468fa281..b3064160143b 100644 --- a/net/netatalk4/files/patch-meson.build +++ b/net/netatalk4/files/patch-meson.build @@ -1,75 +1,67 @@ ---- meson.build.orig 2026-05-30 12:42:34 UTC +--- meson.build.orig 2026-09-19 15:10:20 UTC +++ meson.build -@@ -57,6 +57,7 @@ libdir = prefix / get_option('libdir') - datadir = prefix / get_option('datadir') - includedir = prefix / get_option('includedir') - libdir = prefix / get_option('libdir') -+libexecdir = prefix / get_option('libexecdir') - mandir = prefix / get_option('mandir') - sbindir = prefix / get_option('sbindir') - sysconfdir = prefix / get_option('sysconfdir') -@@ -306,7 +307,7 @@ statedir = '-D_PATH_STATEDIR="' + localstatedir + '/ne +@@ -366,7 +366,7 @@ statedir = '-D_PATH_STATEDIR="' + localstatedir + '/ne messagedir = '-DSERVERTEXT="' + localstatedir + '/netatalk/msg/"' naddir = '-D_PATH_NAD="' + bindir + '/nad"' statedir = '-D_PATH_STATEDIR="' + localstatedir + '/netatalk/"' -uamdir = '-D_PATH_AFPDUAMPATH="' + libdir + '/netatalk/"' +uamdir = '-D_PATH_AFPDUAMPATH="' + libexecdir + '/netatalk-uams/"' ############ # Includes # -@@ -629,6 +630,7 @@ if 'dbd' in get_option('with-cnid-backends') +@@ -699,6 +699,7 @@ if enable_dbd_backend endif bdb_subdirs = [ -+ 'db18', ++ '%%DB_NAME%%', 'db62', 'db6.2', 'db61', -@@ -1203,12 +1205,12 @@ dns_sd_libs = [] +@@ -1274,12 +1275,12 @@ dns_sd_libs = [] dns_sd_libs = [] -dns_sd = cc.find_library('dns_sd', required: false) +dns_sd = cc.find_library('dns_sd', dirs: libsearch_dirs, required: false) if dns_sd.found() dns_sd_libs += dns_sd endif -system = cc.find_library('system', required: false) +system = cc.find_library('system', dirs: libsearch_dirs, required: false) if dns_sd.found() dns_sd_libs += system endif -@@ -1222,6 +1224,8 @@ have_dns = ( +@@ -1293,6 +1294,8 @@ have_dns = ( ) ) +threads = dependency('threads', required: true) + if enable_zeroconf if host_os == 'darwin' # On Darwin/macOS, prefer mDNS over Avahi -@@ -1231,6 +1235,7 @@ if enable_zeroconf +@@ -1302,6 +1305,7 @@ if enable_zeroconf cdata.set('HAVE_MDNS', 1) cdata.set('freebsd_zeroconf', 'mdnsd') zeroconf_provider += 'mDNS' + dns_sd_libs += threads elif avahi.found() have_zeroconf = true cdata.set('USE_ZEROCONF', 1) -@@ -1252,6 +1257,7 @@ if enable_zeroconf +@@ -1323,6 +1327,7 @@ if enable_zeroconf cdata.set('HAVE_MDNS', 1) cdata.set('freebsd_zeroconf', 'mdnsd') zeroconf_provider += 'mDNS' + dns_sd_libs += threads endif endif endif -@@ -1929,6 +1935,7 @@ if not enable_pam +@@ -1990,6 +1995,7 @@ if not enable_pam if not enable_pam have_pam = false + pam = dependency('', required: false) else if host_os != 'sunos' pam_paths = [ diff --git a/net/netatalk4/pkg-plist b/net/netatalk4/pkg-plist index 36e5d36d3b1d..3ab6d96c91c3 100644 --- a/net/netatalk4/pkg-plist +++ b/net/netatalk4/pkg-plist @@ -1,91 +1,94 @@ bin/addump %%LDAP%%bin/afpldaptest bin/afppasswd %%DBUS%%bin/afpstats bin/asip-status bin/dbd bin/fce_listen bin/nad @sample etc/afp.conf.sample %%SPOTLIGHT%%etc/dbus-session.conf.netatalk @sample etc/extmap.conf.sample %%PAM%%@sample etc/pam.d/netatalk.sample +libexec/netatalk/fce_ev_script libexec/netatalk-uams/uams_clrtxt.so libexec/netatalk-uams/uams_dhx.so libexec/netatalk-uams/uams_dhx2.so %%PAM%%libexec/netatalk-uams/uams_dhx2_pam.a %%PAM%%libexec/netatalk-uams/uams_dhx2_pam.so libexec/netatalk-uams/uams_dhx2_passwd.a libexec/netatalk-uams/uams_dhx2_passwd.so %%PAM%%libexec/netatalk-uams/uams_dhx_pam.a %%PAM%%libexec/netatalk-uams/uams_dhx_pam.so libexec/netatalk-uams/uams_dhx_passwd.a libexec/netatalk-uams/uams_dhx_passwd.so %%KERBEROS5%%libexec/netatalk-uams/uams_gss.a %%KERBEROS5%%libexec/netatalk-uams/uams_gss.so libexec/netatalk-uams/uams_guest.a libexec/netatalk-uams/uams_guest.so %%PAM%%libexec/netatalk-uams/uams_pam.a %%PAM%%libexec/netatalk-uams/uams_pam.so libexec/netatalk-uams/uams_passwd.a libexec/netatalk-uams/uams_passwd.so libexec/netatalk-uams/uams_randnum.a libexec/netatalk-uams/uams_randnum.so libexec/netatalk-uams/uams_srp.a libexec/netatalk-uams/uams_srp.so include/atalk/acl.h include/atalk/adouble.h include/atalk/aep.h include/atalk/afp.h include/atalk/afp_util.h include/atalk/asp.h include/atalk/atp.h include/atalk/cnid.h include/atalk/constant_time.h include/atalk/ddp.h include/atalk/ea.h include/atalk/globals.h include/atalk/hash.h include/atalk/iniparser_util.h include/atalk/list.h include/atalk/logger.h include/atalk/nbp.h include/atalk/netatalk_conf.h include/atalk/netddp.h include/atalk/pap.h include/atalk/queue.h include/atalk/rtmp.h +include/atalk/srp.h include/atalk/uam.h include/atalk/unicode.h include/atalk/unix.h include/atalk/util.h include/atalk/vfs.h include/atalk/volume.h include/atalk/zip.h lib/libatalk.a lib/libatalk.so -lib/libatalk.so.21 -lib/libatalk.so.21.0.0 +lib/libatalk.so.22 +lib/libatalk.so.22.0.0 sbin/afpd sbin/cnid_dbd sbin/cnid_metad sbin/netatalk share/man/man1/addump.1.gz share/man/man1/afpldaptest.1.gz share/man/man1/afppasswd.1.gz %%DBUS%%share/man/man1/afpstats.1.gz share/man/man1/asip-status.1.gz share/man/man1/dbd.1.gz share/man/man1/fce_listen.1.gz share/man/man1/nad.1.gz share/man/man5/afp.conf.5.gz share/man/man5/afp_signature.conf.5.gz share/man/man5/afp_voluuid.conf.5.gz share/man/man5/extmap.conf.5.gz share/man/man8/afpd.8.gz share/man/man8/cnid_dbd.8.gz share/man/man8/cnid_metad.8.gz +share/man/man8/fce_ev_script.8.gz share/man/man8/netatalk.8.gz /var/netatalk/CNID/README @dir /var/netatalk/CNID @dir /var/netatalk