-
Notifications
You must be signed in to change notification settings - Fork 90
Installing Netatalk on macOS
For building and installing from source yourself, find links to the official documentation below.
- Compile Netatalk from Source: macOS in the Manual
- INSTALL.md in the source tree
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.
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.
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.
Clone the Netatalk repository to 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-4-0
From this point onward, go to the Compile chapter for macOS and follow the sequence of commands, until the "Start netatalk" step.
If all goes well, you should have netatalk
running on your macOS system, sharing the /Users
directories of each user on the system.
In case you want to share other directories on your system, please see the afp.conf manual page.
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.
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 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
./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
sudo make install
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
At the time of writing, MacPorts is distributing a pre-built binary package of netatalk.
However, it is from the older 2.2 release series, which is missing recent improvements and security patches.
Resources
OS Specific Guides
- Installing Netatalk on Alpine Linux
- Installing Netatalk on Debian Linux
- Installing Netatalk on Fedora Linux
- Installing Netatalk on FreeBSD
- Installing Netatalk on macOS
- Installing Netatalk on NetBSD
- Installing Netatalk on OmniOS
- Installing Netatalk on OpenBSD
- Installing Netatalk on OpenIndiana
- Installing Netatalk on openSUSE
- Installing Netatalk on Solaris
- Installing Netatalk on Ubuntu
Technical Docs
- CatalogSearch
- Kerberos
- Special Files and Folders
- Spotlight
- AppleTalk Kernel Module
- Print Server
- MacIP Gateway
Development