netatalk.io

Installing Netatalk on macOS

Install Netatalk

Pre-packaged binary packages for macOS are available via the 3rd party package managers Homebrew or MacPorts.

In the case of Homebrew, issue these commands:

brew update
brew install netatalk
sudo brew services start netatalk

For building and installing from source yourself, for instance to get a newer version, follow the guides linked here.

Introduction

Apple started to switch from AFP to SMB file sharing from Mavericks (10.9) onwards. The built-in afp server was finally removed in Big Sur (11.0) so Netatalk comes in useful if you have a modern Intel or Apple Silicon Mac and wish to share files with a vintage Mac such as a PowerMac G3 or G4 running classic Mac OS 9 to 7.5.

Homebrew

When installing Netatalk on Macs running Mojave (10.14) onwards the dependencies are easily installed using Homebrew. Refer to the Homebrew homepage for instructions how to install the package manager.

Xcode

Git and other CLI tools are required to build Netatalk from source. Homebrew will typically install this for you automatically, but if needed you can install the full Xcode package from the App Store.

Netatalk v3

Below follows the build instructions for an older Netatalk version and the legacy Autotools build system. In most cases, you want to build the latest version instead.

Install the dependencies

brew install berkeley-db libtool automake autoconf libevent libgcrypt mysql [email protected] libressl pkg-config

The paths for your SSL and BDB installations can be found by typing:

brew --prefix berkeley-db

brew --prefix [email protected] or brew --prefix libressl

Clone the source code

Clone the Netatalk repository in your home directory, and cd to that folder:

cd ~
git clone https://github.com/Netatalk/netatalk.git netatalk-code
cd netatalk-code
git checkout branch-netatalk-3-2

To compile run the following commands

./bootstrap

./configure --with-ssl-dir=/path/to/openssl/installation --with-bdb=/path/to/bdb/installation

If ./configure fails because it can’t find libevent, you may need to export the path to libevent‘s pkgconfig:

export PKG_CONFIG_PATH="/opt/homebrew/opt/libevent/lib/pkgconfig"

Note: The homebrew path begins with /opt/homebrew on Apple Silicon and /usr/local on Intel Macs.

make

To install

sudo make install

Enable the launchd daemon

In case the build script didn’t activate it for you, do this to make launchd to register the netatalk daemon.

sudo launchctl enable system/io.netatalk.daemon
launchctl start netatalk

Underneath the hood we use a controller script called netatalkd that sets up the required environment.

To start netatalk daemons:

sudo netatalkd start

To stop netatalk daemons:

sudo netatalkd stop

Footnotes

This is a mirror of the Netatalk GitHub Wiki. Please visit the original page if you want to correct an error or contribute new contents.

Last updated 2025-05-07