About Netatalk

Continuous Integration:

[Build Status] [Build Status] [Container Status]

Get Netatalk:

[Project releases] [Downloads] [Packaging status]

Project Activity:

[Project contributors] [Monthly commits] [Lines of code]

Code Quality:

[Security] [Reliability] [Maintainability] [Maintainability]

Netatalk is a Free and Open Source file server that implements the Apple
Filing Protocol (AFP) 3.4 over TCP/IP and AppleTalk. AFP is the primary
file sharing protocol used on Apple II, Classic Mac OS, and Mac OS X, as
well as one of several supported protocols on macOS. A *NIX/*BSD system
running Netatalk provides high-speed AppleShare file sharing for Mac
clients.

Why Should I Use Netatalk?

If you have a local network of macOS, Mac OS X, Classic Mac OS, or even
Apple II computers, running a Netatalk AFP server allows you to share,
collaborate on, and back up files comfortably. The latest macOS at the
time of writing (macOS 15 Sequoia) comes with a built-in AFP client, so
Netatalk can act as a seamless bridge between new and old Macs.

Compared to cross-platform file sharing protocols like NFS and FTP,
Netatalk delivers a Mac-like user experience, with seamless integration
of Mac filesystem metadata - including Extended Attributes on macOS and
resource forks on Classic Mac OS - and compatibility with modern macOS
features such as Bonjour, Time Machine, and Spotlight.

Compared to Samba, Netatalk has demonstrably faster transfer speeds, as
well as stronger backwards compatibility with OS X 10.8 Mountain Lion
clients and earlier.

AppleTalk

Netatalk supports the AppleTalk family of protocols, including the DDP
transport layer for AFP file sharing with very old Macs or Apple II
computers.

In addition, a print server, time server, MacIP gateway bridge, and
Apple II netboot server are also provided.

All versions of Netatalk except the 3.x release series can speak
AppleTalk.

Website

The Netatalk website netatalk.io is where project updates and resources
are published, including documentation, release notes, security
advisories, links to related projects, and more.

Community

Netatalk developers and users can be found in online communal spaces
like TinkerDifferent or 68kmla. You can head over there if you want to
ask for help or share your Netatalk stories.

There is also an official Netatalk Discussions board on GitHub which is
the best place to ask for technical assistance.

Finally, the traditional place where Netatalk developers and users
interact with each other are the netatalk-admins and netatalk-devel
mailing lists. While these lists aren't as active as they used to be,
the archives are a veritable treasure trove of decades of Mac networking
know-how.

Installation

Most OS distributions and package repositories ship a version of
Netatalk. If you want a pre-built binary package, try your package
manager first.

To get started with building Netatalk from source code, the install
readme is a good starting point.

Container deployments

Netatalk runs well in a containerized environment.

Read the container readme for more information.

Webmin module

An administrative GUI frontend built on the Webmin 2.0 platform is
distributed with Netatalk.

See the Webmin README for instructions how to install and get started
with the module. or this overview of the module's feature set.

Contributions

Bug reports and feature requests should be filed as GitHub issue
tickets.

Before contributing code to the project, please read the Developer Notes
to learn how to prepare a PR that is compliant with project guidelines.

PRs are automatically picked up by GitHub CI, which runs the builds,
integration tests, as well as static analysis scan on SonarCloud (the
latter only for PRs created by project members.)

Security

See the Security Policy for a breakdown of Netatalk version supported
with security patches, our security vulnerability reporting guidelines,
as well as the full record of historical security advisories.

We would love to hear from you if you think you found a security
vulnerability in Netatalk. Please read the above policy and then file a
security issue ticket with us. We promise to follow up with you as soon
as possible.

Documentation

To aid in your installation and configuration of Netatalk, a
comprehensive manual is published on the project website.

Additionally, each Netatalk program and configuration file also has a
roff man page which can be accessed on the command line, f.e. man afpd.

Wiki

Collaborative articles can be found on the Netatalk wiki. The Netatalk
website also serves a static mirror of all wiki pages.

Editing is open to all registered GitHub users. We are looking forward
to your additions to existing material, or brand new articles on topics
concerning Netatalk and Mac networking.

We are Using GitHub Under Protest

This project is currently hosted on GitHub. This is not ideal; the
GitHub platform itself is a proprietary system that is not Free and Open
Souce Software (FOSS). We are deeply concerned about using a proprietary
system like GitHub to develop our FOSS project. We have an open ticket
for project members and volunteers to discuss how we can move away from
GitHub in the long term.

The primary source of platform lock-in for this project, is the reliance
on GitHub-hosted CI runners for cross-platform builds and tests.

If you are a contributor who prefer not using GitHub, please see the
Developer FAQ for instructions how to submit patches without using
GitHub directly.

Any use of this project's code by GitHub Copilot, past or present, is
done without our permission. We do not consent to GitHub's use of this
project's code in Copilot.
