diff --git a/Formula/n/netatalk.rb b/Formula/n/netatalk.rb new file mode 100644 index 00000000000000..fe07559c80b77c --- /dev/null +++ b/Formula/n/netatalk.rb @@ -0,0 +1,56 @@ +class Netatalk < Formula + desc "File server for Macs, compliant with Apple Filing Protocol (AFP)" + homepage "https://netatalk.io" + url "https://github.com/Netatalk/netatalk/releases/download/netatalk-4-0-8/netatalk-4.0.8.tar.xz" + sha256 "d09d591521b27b91b1c2a6255a2e059af8c9fda43570f983f0a145706e5f7628" + license all_of: [ + "GPL-2.0-only", + "GPL-2.0-or-later", + "LGPL-2.0-only", + "LGPL-2.1-or-later", + "BSD-2-Clause", + "BSD-3-Clause", + "MIT", + ] + head "https://github.com/Netatalk/netatalk.git", branch: "main" + + depends_on "docbook-xsl" => :build + depends_on "meson" => :build + depends_on "ninja" => :build + depends_on "pkgconf" => :build + + depends_on "berkeley-db" # macOS bdb library is outdated + depends_on "libevent" + depends_on "libgcrypt" + depends_on "mysql" + depends_on "openldap" # macOS LDAP.Framework is deprecated + + uses_from_macos "libxslt" => :build + uses_from_macos "perl" + + def install + prefix_path = ENV["HOMEBREW_PREFIX"] + + args = %w[ + -Dwith-afpstats=false + -Dwith-init-style=none + -Dwith-install-hooks=false + -Dwith-spotlight=false + ] + + args << "-Dwith-bdb-path=#{prefix_path}/opt/berkeley-db" + args << "-Dwith-docbook-path=#{prefix_path}/opt/docbook-xsl/docbook-xsl" + args << "-Dwith-pam-config-path=#{prefix_path}/etc/pam.d" + + args << "-Dwith-appletalk=true" if OS.linux? + + system "meson", "setup", "build", *args, *std_meson_args + system "meson", "compile", "-C", "build", "--verbose" + system "meson", "install", "-C", "build" + end + + test do + system sbin/"netatalk", "-V" + system sbin/"afpd", "-V" + end +end