Table of Contents
This appendix describes how to compile Netatalk from source for specific operating systems. Before starting, please read through the Installation chapter first. You need to have a copy of Netatalk's source code before proceeding.
Please note that these guides are automatically generated, and may not be optimized for your system. Also, the steps for launching Netatalk are incomplete for some OSes, because of technical constraints.
Install dependencies
apk add acl-dev avahi-compat-libdns_sd avahi-dev bison build-base cracklib cracklib-dev cracklib-words cups cups-dev curl db-dev dbus-dev docbook-xsl flex gcc krb5-dev libevent-dev libgcrypt-dev libtirpc-dev libtracker libxslt linux-pam-dev localsearch mariadb-dev meson ninja openldap-dev openrc perl pkgconfig rpcsvc-proto-dev talloc-dev tinysparql-dev unicode-character-database
Configure
meson setup build -Dbuildtype=release -Dwith-appletalk=true -Dwith-dbus-sysconf-path=/usr/share/dbus-1/system.d -Dwith-tests=true
Build
meson compile -C build
Run integration tests
cd build && meson test && cd ..
Install
meson install -C build
Check netatalk capabilities
/usr/local/sbin/netatalk -V /usr/local/sbin/afpd -V
Uninstall
ninja -C build uninstall
Install dependencies
pacman -Sy --noconfirm avahi bison cmark-gfm cracklib cups db docbook-xsl flex gcc libxslt localsearch mariadb-clients meson ninja perl pkgconfig rpcsvc-proto talloc tinysparql unicode-character-database
Configure
meson setup build -Dbuildtype=release -Dwith-appletalk=true -Dwith-dbus-sysconf-path=/usr/share/dbus-1/system.d -Dwith-init-hooks=false -Dwith-tests=true
Build
meson compile -C build
Run integration tests
cd build && meson test && cd ..
Install
meson install -C build
Check netatalk capabilities
/usr/local/sbin/netatalk -V /usr/local/sbin/afpd -V
Uninstall
ninja -C build uninstall
Install dependencies
apt-get update apt-get install --assume-yes --no-install-recommends bison cmark-gfm cracklib-runtime docbook-xsl file flex libacl1-dev libavahi-client-dev libcrack2-dev libcups2-dev libdb-dev libdbus-1-dev libevent-dev libgcrypt20-dev libglib2.0-dev libkrb5-dev libldap2-dev libmariadb-dev libpam0g-dev libtalloc-dev libtirpc-dev libtracker-sparql-3.0-dev libwrap0-dev meson ninja-build quota systemtap-sdt-dev tcpd tracker tracker-miner-fs unicode-data xsltproc
Configure
meson setup build -Dbuildtype=release -Dwith-appletalk=true -Dwith-dbus-sysconf-path=/usr/share/dbus-1/system.d -Dwith-init-hooks=false -Dwith-init-style=debian-sysv,systemd -Dwith-pkgconfdir-path=/etc/netatalk -Dwith-tests=true
Build
meson compile -C build
Run integration tests
cd build && meson test && cd ..
Install
meson install -C build
Check netatalk capabilities
/usr/local/sbin/netatalk -V /usr/local/sbin/afpd -V
Uninstall
ninja -C build uninstall
Install dependencies
dnf --setopt=install_weak_deps=False --assumeyes install avahi-devel bison chkconfig cracklib-devel cups-devel dbus-devel docbook-style-xsl flex glib2-devel krb5-devel libacl-devel libdb-devel libgcrypt-devel libtalloc-devel libxslt mariadb-connector-c-devel meson ninja-build openldap-devel pam-devel perl perl-Net-DBus quota-devel systemd systemtap-sdt-devel tracker tracker-devel unicode-ucd
Configure
meson setup build -Dbuildtype=release -Dwith-appletalk=true -Dwith-dbus-sysconf-path=/usr/share/dbus-1/system.d -Dwith-init-hooks=false -Dwith-tests=true
Build
meson compile -C build
Run integration tests
cd build && meson test && cd ..
Install
sudo meson install -C build
Check netatalk capabilities
/usr/local/sbin/netatalk -V /usr/local/sbin/afpd -V
Uninstall
sudo ninja -C build uninstall
Install dependencies
zypper in -y bison cracklib-devel dbus-1-devel docbook-xsl-stylesheets file flex gawk gcc libacl-devel libavahi-devel libdb-4_8-devel libevent-devel libgcrypt-devel libmariadb-devel libtalloc-devel libtdb-devel libtracker-sparql-3_0-0 libxslt-tools meson ninja openldap2-devel pam-devel perl pkg-config systemd systemtap-sdt-devel tcpd-devel tracker unicode-ucd
Configure
meson setup build -Dbuildtype=release -Dwith-appletalk=true -Dwith-dbus-sysconf-path=/usr/share/dbus-1/system.d -Dwith-docbook-path=/usr/share/xml/docbook/stylesheet/nwalsh/1.79.2 -Dwith-init-hooks=false -Dwith-tests=true
Build
meson compile -C build
Run integration tests
cd build && meson test && cd ..
Install
meson install -C build
Check netatalk capabilities
/usr/local/sbin/netatalk -V /usr/local/sbin/afpd -V
Uninstall
ninja -C build uninstall
Install dependencies
sudo apt-get update sudo apt-get install --assume-yes --no-install-recommends bison cmark-gfm cracklib-runtime docbook-xsl file flex libacl1-dev libavahi-client-dev libcrack2-dev libcups2-dev libdb-dev libdbus-1-dev libevent-dev libgcrypt20-dev libglib2.0-dev libkrb5-dev libldap2-dev libmariadb-dev libpam0g-dev libtalloc-dev libtirpc-dev libtracker-sparql-3.0-dev libwrap0-dev meson ninja-build quota systemtap-sdt-dev tcpd tracker tracker-miner-fs unicode-data xsltproc
Configure
meson setup build -Dbuildtype=release -Dwith-appletalk=true -Dwith-dbus-sysconf-path=/usr/share/dbus-1/system.d -Dwith-init-hooks=false -Dwith-manual-l10n=ja -Dwith-tests=true
Build
meson compile -C build
Run distribution tests
cd build && meson dist && cd ..
Install
sudo meson install -C build
Check netatalk capabilities
/usr/local/sbin/netatalk -V /usr/local/sbin/afpd -V
Start netatalk
sudo systemctl start netatalk sleep 1 asip-status localhost
Stop netatalk
sudo systemctl stop netatalk
Uninstall
sudo ninja -C build uninstall
Install dependencies
brew install berkeley-db bison cmark-gfm dbus docbook-xsl libxslt meson mysql openldap talloc tracker
Configure
meson setup build -Dbuildtype=release -Dwith-tests=true
Build
meson compile -C build
Run integration tests
cd build && meson test && cd ..
Install
sudo meson install -C build
Check netatalk capabilities
/opt/homebrew/sbin/netatalk -V /opt/homebrew/sbin/afpd -V
Start netatalk
sudo netatalkd start sleep 1 asip-status localhost
Stop netatalk
sudo netatalkd stop
Uninstall
sudo ninja -C build uninstall
Install required packages
pkg install -y avahi bison db5 docbook-xsl krb5-devel libevent libgcrypt libxslt meson mysql80-client openldap26-client perl5 pkgconf py39-gdbm py39-sqlite3 py39-tkinter talloc tracker3
Configure and build
set -e meson setup build -Dbuildtype=release -Dwith-appletalk=true -Dwith-tests=true meson compile -C build meson install -C build /usr/local/sbin/netatalk -V /usr/local/sbin/afpd -V ninja -C build uninstall
Install required packages
pkg install -y avahi bison db5 docbook-xsl flex libevent libgcrypt libxslt meson mysql84-client openldap26-client-2.6.8 p5-Net-DBus perl5 pkgconf talloc tracker3
Configure and build
set -e meson setup build -Dbuildtype=release -Dpkg_config_path=/usr/local/libdata/pkgconfig -Dwith-tests=true meson compile -C build cd build meson test cd .. meson install -C build /usr/local/sbin/netatalk -V /usr/local/sbin/afpd -V /usr/local/etc/rc.d/netatalk start sleep 1 /usr/local/bin/asip-status localhost /usr/local/etc/rc.d/netatalk stop /usr/local/etc/rc.d/netatalk disable ninja -C build uninstall
Install required packages
pkg_add bison db5 docbook-xsl flex gcc13 gnome-tracker heimdal libcups libevent libgcrypt libxslt meson mysql-client p5-Net-DBus perl pkg-config talloc tex-unicode-data
Configure and build
set -e meson setup build -Dbuildtype=release -Dwith-appletalk=true -Dwith-dtrace=false -Dwith-krbV-uam=false -Dwith-tests=true meson compile -C build cd build meson test cd .. meson install -C build /usr/local/sbin/netatalk -V /usr/local/sbin/afpd -V service netatalk onestart sleep 1 asip-status localhost service netatalk onestop ninja -C build uninstall
Install required packages
pkg_add -I avahi bison db-4.6.21p7v0 dbus docbook-xsl gcc-11.2.0p14 libevent libgcrypt libtalloc libxslt mariadb-client meson openldap-client-2.6.8v0 openpam p5-Net-DBus pkgconf tracker3
Configure and build
set -e meson setup build -Dbuildtype=release -Dpkg_config_path=/usr/local/lib/pkgconfig -Dwith-tests=true meson compile -C build meson install -C build /usr/local/sbin/netatalk -V /usr/local/sbin/afpd -V rcctl -d start netatalk sleep 1 asip-status localhost rcctl -d stop netatalk rcctl -d disable netatalk ninja -C build uninstall
Install required packages
pkg install build-essential pkg-config curl -O https://pkgsrc.smartos.org/packages/SmartOS/bootstrap/bootstrap-trunk-x86_64-20240116.tar.gz tar -zxpf bootstrap-trunk-x86_64-20240116.tar.gz -C / export PATH=/opt/local/sbin:/opt/local/bin:/usr/gnu/bin:/usr/bin:/usr/sbin:/sbin:$PATH pkgin -y install avahi docbook-xsl gnome-tracker libevent libgcrypt libxslt meson mysql-client talloc
Configure and build
set -e export PATH=/opt/local/sbin:/opt/local/bin:/usr/gnu/bin:/usr/bin:/usr/sbin:/sbin:$PATH meson setup build -Dbuildtype=release -Dpkg_config_path=/opt/local/lib/pkgconfig -Dwith-dbus-sysconf-path=/usr/share/dbus-1/system.d -Dwith-ldap-path=/opt/local -Dwith-tests=true meson compile -C build cd build meson test cd .. meson install -C build /usr/local/sbin/netatalk -V /usr/local/sbin/afpd -V sleep 1 svcadm enable svc:/network/netatalk:default sleep 1 /usr/local/bin/asip-status localhost svcadm disable svc:/network/netatalk:default ninja -C build uninstall
Install required packages
pkg install bison flex gcc libevent libgcrypt ninja pkg-config python/pip pip install meson
Configure and build
set -e meson setup build -Dbuildtype=release -Dpkg_config_path=/usr/lib/amd64/pkgconfig -Dwith-dbus-sysconf-path=/usr/share/dbus-1/system.d -Dwith-docbook-path=/usr/share/sgml/docbook/xsl-stylesheets -Dwith-tests=true meson compile -C build cd build meson test cd .. meson install -C build /usr/local/sbin/netatalk -V /usr/local/sbin/afpd -V sleep 1 svcadm enable svc:/network/netatalk:default sleep 1 /usr/local/bin/asip-status localhost svcadm disable svc:/network/netatalk:default ninja -C build uninstall