diff options
author | Joe Marcus Clarke <marcus@FreeBSD.org> | 2025-03-02 11:54:10 -0500 |
---|---|---|
committer | Joe Marcus Clarke <marcus@FreeBSD.org> | 2025-03-02 11:54:10 -0500 |
commit | fb85eae7889e1f780fea46ee19031a78fd6e38b8 (patch) | |
tree | dc6a0b08aa1f95bfe361ec236b4b6e81d1c41ef6 | |
parent | graphics/rigsofrods-pagedgeometry: Update 1.2.0 => 1.2.0.20240708 (latest sna... (diff) |
net/netatalk[34]: Add a new port, netatalk4
Netatalk4 is the latest release of the Netatalk Open Source macOS AFPD
file server suite.
For now, both netatalk3 and netatalk4 will remain, but it is becoming
clear, netatalk4 is The Way™, and netatalk3 should be considered
deprecated.
Netatalk4 has had several releases already, so the underlying afpd
server should be quite stable. Note that since FreeBSD removed
AppleTalk (ddp) support a while ago, that part of netatalk4 is not
enabled.
See https://github.com/Netatalk/netatalk/releases for a summary of all
changes since netatalk3.
-rw-r--r-- | net/Makefile | 1 | ||||
-rw-r--r-- | net/netatalk3/Makefile | 2 | ||||
-rw-r--r-- | net/netatalk4/Makefile | 109 | ||||
-rw-r--r-- | net/netatalk4/distinfo | 3 | ||||
-rw-r--r-- | net/netatalk4/files/netatalk.in | 39 | ||||
-rw-r--r-- | net/netatalk4/files/pam.conf | 14 | ||||
-rw-r--r-- | net/netatalk4/files/patch-config_meson.build | 67 | ||||
-rw-r--r-- | net/netatalk4/files/patch-etc_uams_meson.build | 127 | ||||
-rw-r--r-- | net/netatalk4/files/patch-meson.build | 79 | ||||
-rw-r--r-- | net/netatalk4/pkg-descr | 9 | ||||
-rw-r--r-- | net/netatalk4/pkg-install | 14 | ||||
-rw-r--r-- | net/netatalk4/pkg-plist | 101 |
12 files changed, 564 insertions, 1 deletions
diff --git a/net/Makefile b/net/Makefile index 1fbe74375802..50282372e4f5 100644 --- a/net/Makefile +++ b/net/Makefile @@ -524,6 +524,7 @@ SUBDIR += nemesis SUBDIR += net6 SUBDIR += netatalk3 + SUBDIR += netatalk4 SUBDIR += netcat SUBDIR += netdiscover SUBDIR += netembryo diff --git a/net/netatalk3/Makefile b/net/netatalk3/Makefile index 495828d87590..1fa9852fd863 100644 --- a/net/netatalk3/Makefile +++ b/net/netatalk3/Makefile @@ -78,7 +78,7 @@ SPOTLIGHT_MESON_OFF= -Dwith-spotlight=false SHEBANG_GLOB= afpstats -CONFLICTS= jday yudit # bin/dbd man/man1/uniconv.1.gz +CONFLICTS= netatalk4 .include <bsd.port.pre.mk> diff --git a/net/netatalk4/Makefile b/net/netatalk4/Makefile new file mode 100644 index 000000000000..9fca22fb0cd9 --- /dev/null +++ b/net/netatalk4/Makefile @@ -0,0 +1,109 @@ +PORTNAME= netatalk +PORTVERSION= 4.1.2 +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= docbook-xsl>=0:textproc/docbook-xsl +LIB_DEPENDS= libgcrypt.so:security/libgcrypt \ + libevent.so:devel/libevent + +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 +CPE_VENDOR= netatalk_project + +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-shadow=false \ + -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 \ + -Dwith-dbus-sysconf-path=${LOCALBASE}/etc/dbus-1/system.d +DBUS_MESON_OFF= -Dwith-afpstats=false +MYSQL_USES= mysql +MYSQL_MESON_OFF=-Dwith-cnid-mysql-backend=false +ACL_LIB_DEPENDS= libsunacl.so:sysutils/libsunacl +ACL_MESON_OFF=-Dwith-acls=false +LIBWRAP_MESON_OFF=-Dwith-tcp-wrappers=false +SPOTLIGHT_LIB_DEPENDS= libtracker-sparql-3.0.so:sysutils/tracker3 +SPOTLIGHT_MESON_OFF= -Dwith-spotlight=false + +SHEBANG_GLOB= afpstats + +CONFLICTS= netatalk3 + +.include <bsd.port.pre.mk> + +.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: + ${INSTALL_SCRIPT} ${BUILD_WRKSRC}/contrib/macusers/macusers \ + ${STAGEDIR}${PREFIX}/bin/macusers + +.if ${PORT_OPTIONS:MPAM} + ${INSTALL_DATA} ${FILESDIR}/pam.conf ${STAGEDIR}${PREFIX}/etc/pam.d/netatalk.sample +.endif + +.include <bsd.port.post.mk> diff --git a/net/netatalk4/distinfo b/net/netatalk4/distinfo new file mode 100644 index 000000000000..2cceb6d2a71c --- /dev/null +++ b/net/netatalk4/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1740930680 +SHA256 (netatalk-4.1.2.tar.xz) = a825f6ff7efedb09bb9ca75727ab43126797000f89775db72c8d9520bf481e9c +SIZE (netatalk-4.1.2.tar.xz) = 922960 diff --git a/net/netatalk4/files/netatalk.in b/net/netatalk4/files/netatalk.in new file mode 100644 index 000000000000..36a36747f34d --- /dev/null +++ b/net/netatalk4/files/netatalk.in @@ -0,0 +1,39 @@ +#!/bin/sh + +# PROVIDE: netatalk +# REQUIRE: DAEMON %%ZEROCONF%% +# KEYWORD: shutdown +# +# AFP fileserver for Mac clients. Add the following to /etc/rc.conf to +# enable: +# +# netatalk_enable="YES" +# + +netatalk_enable=${netatalk_enable-"NO"} + +. /etc/rc.subr + +name=netatalk +rcvar=netatalk_enable + +load_rc_config ${name} + +command=%%PREFIX%%/sbin/${name} + +extra_commands="reload" +reload_cmd="netatalk_reload" + +netatalk_reload() +{ + local status + + if ! status=`run_rc_command status 2>&1`; then + echo $status + return 1 + fi + echo 'Reloading netatalk.' + kill -HUP $rc_pid +} + +run_rc_command "$1" diff --git a/net/netatalk4/files/pam.conf b/net/netatalk4/files/pam.conf new file mode 100644 index 000000000000..05120315054d --- /dev/null +++ b/net/netatalk4/files/pam.conf @@ -0,0 +1,14 @@ +# PAM configuration for the "netatalk" service +# + +# auth +auth include system + +# account +account include system + +# password +password include system + +# session +session include system diff --git a/net/netatalk4/files/patch-config_meson.build b/net/netatalk4/files/patch-config_meson.build new file mode 100644 index 000000000000..a8dc29c35c28 --- /dev/null +++ b/net/netatalk4/files/patch-config_meson.build @@ -0,0 +1,67 @@ +--- config/meson.build.orig 2025-02-10 20:41:20 UTC ++++ config/meson.build +@@ -4,59 +4,23 @@ afp_conf = configure_file( + configuration: cdata, + ) + +-if ( +- fs.exists(pkgconfdir / 'afp.conf') +- and not get_option('with-overwrite') +-) +- message('will not replace existing', pkgconfdir / 'afp.conf') +-else +- install_data(afp_conf, install_dir: pkgconfdir) +-endif ++install_data(afp_conf, rename: 'afp.conf.sample', install_dir: pkgconfdir) + + if have_spotlight + 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') +- ) +- message('will not replace existing', pkgconfdir / 'dbus-session.conf') +- else +- install_data(dbus_session_conf, install_dir: pkgconfdir) +- endif ++ install_data(dbus_session_conf, install_dir: pkgconfdir) + endif + + if have_afpstats +- if ( +- fs.exists(dbus_sysconfpath / 'netatalk-dbus.conf') +- and not get_option('with-overwrite') +- ) +- message('will not replace existing', dbus_sysconfpath / 'netatalk-dbus.conf') +- else +- install_data('netatalk-dbus.conf', install_dir: dbus_sysconfpath) +- endif ++ install_data('netatalk-dbus.conf', install_dir: dbus_sysconfpath) + endif + +-static_conf_files = ['extmap.conf'] +- +-if have_appletalk +- static_conf_files += ['atalkd.conf', 'macipgw.conf', 'papd.conf'] +-endif +- +-foreach file : static_conf_files +- if ( +- fs.exists(pkgconfdir / file) +- and not get_option('with-overwrite') +- ) +- message('will not replace existing', pkgconfdir / file) +- else +- install_data(file, install_dir: pkgconfdir) +- endif +-endforeach ++install_data('extmap.conf', rename: 'extmap.conf.sample', install_dir: pkgconfdir) + + if ( + fs.exists('/etc/ld.so.conf.d') diff --git a/net/netatalk4/files/patch-etc_uams_meson.build b/net/netatalk4/files/patch-etc_uams_meson.build new file mode 100644 index 000000000000..91ae27204e92 --- /dev/null +++ b/net/netatalk4/files/patch-etc_uams_meson.build @@ -0,0 +1,127 @@ +--- etc/uams/meson.build.orig 2025-02-10 20:41:20 UTC ++++ etc/uams/meson.build +@@ -20,7 +20,7 @@ library( + name_suffix: lib_suffix, + override_options: 'b_lundef=false', + install: true, +- install_dir: libdir / 'netatalk', ++ install_dir: libexecdir / 'netatalk-uams', + ) + + uams_passwd_sources = ['uams_passwd.c'] +@@ -34,7 +34,7 @@ library( + name_suffix: lib_suffix, + override_options: 'b_lundef=false', + install: true, +- install_dir: libdir / 'netatalk', ++ install_dir: libexecdir / 'netatalk-uams', + ) + + if have_libgcrypt +@@ -51,7 +51,7 @@ if have_libgcrypt + name_suffix: lib_suffix, + override_options: 'b_lundef=false', + install: true, +- install_dir: libdir / 'netatalk', ++ install_dir: libexecdir / 'netatalk-uams', + ) + + library( +@@ -63,7 +63,7 @@ if have_libgcrypt + name_suffix: lib_suffix, + override_options: 'b_lundef=false', + install: true, +- install_dir: libdir / 'netatalk', ++ install_dir: libexecdir / 'netatalk-uams', + ) + + library( +@@ -75,7 +75,7 @@ if have_libgcrypt + name_suffix: lib_suffix, + override_options: 'b_lundef=false', + install: true, +- install_dir: libdir / 'netatalk', ++ install_dir: libexecdir / 'netatalk-uams', + ) + if have_pam + uams_dhx2_pam_sources = ['uams_dhx2_pam.c'] +@@ -89,20 +89,20 @@ if have_libgcrypt + name_suffix: lib_suffix, + override_options: 'b_lundef=false', + install: true, +- install_dir: libdir / 'netatalk', ++ install_dir: libexecdir / 'netatalk-uams', + ) + + if build_shared_lib + install_symlink( + 'uams_dhx2.so', +- install_dir: libdir / 'netatalk', ++ install_dir: libexecdir / 'netatalk-uams', + pointing_to: 'uams_dhx2_pam.so', + ) + endif + elif build_shared_lib + install_symlink( + 'uams_dhx2.so', +- install_dir: libdir / 'netatalk', ++ install_dir: libexecdir / 'netatalk-uams', + pointing_to: 'uams_dhx2_passwd.so', + ) + endif +@@ -118,20 +118,20 @@ if have_libgcrypt + name_suffix: lib_suffix, + override_options: 'b_lundef=false', + install: true, +- install_dir: libdir / 'netatalk', ++ install_dir: libexecdir / 'netatalk-uams', + ) + + if build_shared_lib + install_symlink( + 'uams_dhx.so', +- install_dir: libdir / 'netatalk', ++ install_dir: libexecdir / 'netatalk-uams', + pointing_to: 'uams_dhx_pam.so', + ) + endif + elif build_shared_lib + install_symlink( + 'uams_dhx.so', +- install_dir: libdir / 'netatalk', ++ install_dir: libexecdir / 'netatalk-uams', + pointing_to: 'uams_dhx_passwd.so', + ) + endif +@@ -150,20 +150,20 @@ if have_pam + name_suffix: lib_suffix, + override_options: 'b_lundef=false', + install: true, +- install_dir: libdir / 'netatalk', ++ install_dir: libexecdir / 'netatalk-uams', + ) + + if build_shared_lib + install_symlink( + 'uams_clrtxt.so', +- install_dir: libdir / 'netatalk', ++ install_dir: libexecdir / 'netatalk-uams', + pointing_to: 'uams_pam.so', + ) + endif + elif build_shared_lib + install_symlink( + 'uams_clrtxt.so', +- install_dir: libdir / 'netatalk', ++ install_dir: libexecdir / 'netatalk-uams', + pointing_to: 'uams_passwd.so', + ) + endif +@@ -181,6 +181,6 @@ if have_krb5_uam + name_suffix: lib_suffix, + override_options: 'b_lundef=false', + install: true, +- install_dir: libdir / 'netatalk', ++ install_dir: libexecdir / 'netatalk-uams', + ) + endif diff --git a/net/netatalk4/files/patch-meson.build b/net/netatalk4/files/patch-meson.build new file mode 100644 index 000000000000..e37e854f53c3 --- /dev/null +++ b/net/netatalk4/files/patch-meson.build @@ -0,0 +1,79 @@ +--- meson.build.orig 2025-02-10 20:41:20 UTC ++++ meson.build +@@ -66,6 +66,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') +@@ -138,7 +139,7 @@ statedir = '-D_PATH_STATEDIR="' + localstatedir + '/ne + dversion = '-DVERSION="' + netatalk_version + '"' + messagedir = '-DSERVERTEXT="' + localstatedir + '/netatalk/msg/"' + statedir = '-D_PATH_STATEDIR="' + localstatedir + '/netatalk/"' +-uamdir = '-D_PATH_AFPDUAMPATH="' + libdir + '/netatalk/"' ++uamdir = '-D_PATH_AFPDUAMPATH="' + libexecdir + '/netatalk-uams/"' + + ############ + # Includes # +@@ -464,6 +465,7 @@ bdb_subdirs = [ + endif + + bdb_subdirs = [ ++ '%%DB_NAME%%', + 'db62', + 'db6.2', + 'db61', +@@ -641,6 +643,11 @@ if crypt.found() + if crypt.found() + cdata.set('HAVE_CRYPT_H', 1) + cdata.set('HAVE_LIBCRYPT', 1) ++else ++ crypt = cc.find_library('crypt', has_headers: 'unistd.h', required: false) ++ if crypt.found() ++ cdata.set('HAVE_LIBCRYPT', 1) ++ endif + endif + + # +@@ -819,12 +826,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 +@@ -838,6 +845,8 @@ have_dns = ( + ) + ) + ++threads = dependency('threads', required: true) ++ + if enable_zeroconf + if avahi.found() + have_zeroconf = true +@@ -854,6 +863,7 @@ if enable_zeroconf + cdata.set('HAVE_MDNS', 1) + cdata.set('freebsd_zeroconf', 'mdnsd') + zeroconf_provider += 'mDNS' ++ dns_sd_libs += threads + endif + endif + +@@ -1709,6 +1719,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-descr b/net/netatalk4/pkg-descr new file mode 100644 index 000000000000..fb4d1633d741 --- /dev/null +++ b/net/netatalk4/pkg-descr @@ -0,0 +1,9 @@ +Netatalk is an OpenSource software package, that can be used to turn an +inexpensive *NIX machine into an extremely high-performance and reliable +file server for Macintosh computers. + +Using Netatalk's AFP 3.4 compliant file-server leads to significantly higher +transmission speeds compared with Macs accessing a server via SaMBa/NFS +while providing clients with the best possible user experience (full support +for Macintosh metadata, flawlessly supporting mixed environments of classic +MacOS and MacOS X clients) diff --git a/net/netatalk4/pkg-install b/net/netatalk4/pkg-install new file mode 100644 index 000000000000..bcddbdd54a87 --- /dev/null +++ b/net/netatalk4/pkg-install @@ -0,0 +1,14 @@ +#!/bin/sh +# +PATH=/bin:/usr/sbin:/usr/bin:/usr/sbin + +DBDIR=/var/netatalk + +case $2 in + POST-INSTALL) + tee $DBDIR/README > $DBDIR/CNID/README <<-'EOF' + This directory contains modifiable Netatalk configuration files and the CNID databases. + EOF + truncate -s -1 $DBDIR/README $DBDIR/CNID/README + ;; +esac diff --git a/net/netatalk4/pkg-plist b/net/netatalk4/pkg-plist new file mode 100644 index 000000000000..b8c8b66431ba --- /dev/null +++ b/net/netatalk4/pkg-plist @@ -0,0 +1,101 @@ +bin/ad +bin/addump +%%LDAP%%bin/afpldaptest +bin/afppasswd +%%DBUS%%bin/afpstats +bin/asip-status +bin/dbd +bin/macusers +@sample etc/afp.conf.sample +%%DBUS%%etc/dbus-1/system.d/netatalk-dbus.conf +%%SPOTLIGHT%%etc/dbus-session.conf.netatalk +@sample etc/extmap.conf.sample +%%PAM%%@sample etc/pam.d/netatalk.sample +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 +include/atalk/acl.h +include/atalk/adouble.h +include/atalk/aep.h +include/atalk/afp.h +include/atalk/asp.h +include/atalk/atp.h +include/atalk/bstrlib.h +include/atalk/cnid.h +include/atalk/ddp.h +include/atalk/dictionary.h +include/atalk/ea.h +include/atalk/globals.h +include/atalk/hash.h +include/atalk/iniparser.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/standards.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.19 +lib/libatalk.so.19.0.0 +sbin/afpd +sbin/cnid_dbd +sbin/cnid_metad +sbin/netatalk +share/man/man1/ad.1.gz +share/man/man1/addump.1.gz +share/man/man1/afp_lantest.1.gz +share/man/man1/afp_logintest.1.gz +share/man/man1/afp_spectest.1.gz +share/man/man1/afp_speedtest.1.gz +share/man/man1/afparg.1.gz +share/man/man1/afpldaptest.1.gz +share/man/man1/afppasswd.1.gz +%%DBUS%%share/man/man1/afpstats.1.gz +share/man/man1/afptest.1.gz +share/man/man1/asip-status.1.gz +share/man/man1/dbd.1.gz +share/man/man1/macusers.1.gz +share/man/man3/atalk_aton.3.gz +share/man/man3/nbp_name.3.gz +share/man/man4/atalk.4.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/man5/macipgw.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/netatalk.8.gz +/var/netatalk/CNID/README +@dir /var/netatalk/CNID +@dir /var/netatalk |