You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
gentoo-overlay/net-fs/netatalk/netatalk-3.1.10.ebuild

182 lines
4.8 KiB

# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=5
PYTHON_COMPAT=( python2_7 )
AUTOTOOLS_AUTORECONF=yes
inherit autotools-utils eapi7-ver flag-o-matic multilib pam python-r1 systemd versionator
DESCRIPTION="Open Source AFP server"
HOMEPAGE="http://netatalk.sourceforge.net/"
SRC_URI="mirror://sourceforge/project/${PN}/${PN}/$(get_version_component_range 1-3)/${P}.tar.bz2"
LICENSE="GPL-2 BSD"
SLOT="0/17.0"
KEYWORDS="amd64 arm ~ppc ~ppc64 x86 ~x86-fbsd"
IUSE="acl cracklib dbus debug pgp kerberos ldap pam quota samba +shadow ssl static-libs tracker tcpd +utils zeroconf"
CDEPEND="
!app-editors/yudit
dev-libs/libevent:0=
>=dev-libs/libgcrypt-1.2.3:0
sys-apps/coreutils
>=sys-libs/db-4.2.52:=
sys-libs/tdb
acl? (
sys-apps/attr
sys-apps/acl
)
cracklib? ( sys-libs/cracklib )
dbus? ( sys-apps/dbus dev-libs/dbus-glib )
kerberos? ( virtual/krb5 )
ldap? ( net-nds/openldap )
pam? ( virtual/pam )
ssl? ( dev-libs/openssl:0 )
tcpd? ( sys-apps/tcp-wrappers )
tracker? ( app-misc/tracker )
utils? ( ${PYTHON_DEPS} )
zeroconf? ( net-dns/avahi[dbus] )
"
RDEPEND="${CDEPEND}
utils? (
dev-lang/perl
dev-python/dbus-python[${PYTHON_USEDEP}]
)"
DEPEND="${CDEPEND}
virtual/yacc
sys-devel/flex"
RESTRICT="test"
REQUIRED_USE="
ldap? ( acl )
tracker? ( dbus )
utils? ( ${PYTHON_REQUIRED_USE} )"
PATCHES=(
"${FILESDIR}"/${PN}-3.1.7-gentoo.patch
"${FILESDIR}"/${PN}-3.1.8-disable-ld-library-path.patch #564350
)
src_prepare() {
if ! use utils; then
sed \
-e "s:shell_utils::g" \
-i contrib/Makefile.am || die
fi
autotools-utils_src_prepare
}
src_configure() {
local myeconfargs=()
append-flags -fno-strict-aliasing
# Ignore --with-init-style=gentoo, we install the init.d by hand and we avoid having
# to sed the Makefiles to not do rc-update.
# TODO:
# systemd : --with-init-style=systemd
myeconfargs+=(
$(use_enable debug)
$(use_enable debug debugging)
$(use_enable pgp pgp-uam)
$(use_enable kerberos)
$(use_enable kerberos krbV-uam)
$(use_enable quota)
$(use_enable tcpd tcp-wrappers)
$(use_enable zeroconf)
$(use_with acl acls)
$(use_with cracklib)
$(use_with dbus afpstats)
$(use_with ldap)
$(use_with pam)
$(use_with samba smbsharemodes)
$(use_with shadow)
$(use_with ssl ssl-dir)
$(use_with tracker)
$(use_with tracker dbus-daemon "${EPREFIX}/usr/bin/dbus-daemon")
$(use_with tracker tracker-pkgconfig-version $(ver_cut 1 $(best_version app-misc/tracker | sed 's:app-misc/tracker-::g')).0)
--enable-overwrite
--disable-krb4-uam
--disable-afs
--with-libevent-header=/usr/include
--with-libevent-lib=/usr/$(get_libdir)
--with-bdb=/usr
--with-uams-path=/usr/$(get_libdir)/${PN}
--disable-silent-rules
--with-init-style=gentoo-openrc
--without-libevent
--without-tdb
--with-lockfile=/run/lock/${PN}
)
autotools-utils_src_configure
}
src_install() {
autotools-utils_src_install
if use zeroconf; then
sed -i -e '/avahi-daemon/s:use:need:g' "${D}"/etc/init.d/${PN} || die
else
sed -i -e '/avahi-daemon/d' "${D}"/etc/init.d/${PN} || die
fi
# The pamd file isn't what we need, use pamd_mimic_system
rm -rf "${ED}/etc/pam.d" || die
pamd_mimic_system netatalk auth account password session
sed \
-e "s|:SBINDIR:|${EPREFIX}/usr/sbin|g" \
-e "s|:PATH_NETATALK_LOCK:|/run/lock/netatalk|g" \
distrib/initscripts/service.systemd.tmpl \
> "${T}"/service.systemd || die
systemd_newunit "${T}"/service.systemd ${PN}.service
use utils && python_foreach_impl python_doscript contrib/shell_utils/afpstats
}
pkg_postinst() {
local fle v
for v in ${REPLACING_VERSIONS}; do
if ! version_is_at_least 3 ${v}; then
for fle in afp_signature.conf afp_voluuid.conf; do
if [[ -f "${ROOT}"etc/netatalk/${fle} ]]; then
if [[ ! -f "${ROOT}"var/lib/netatalk/${fle} ]]; then
mv \
"${ROOT}"etc/netatalk/${fle} \
"${ROOT}"var/lib/netatalk/
fi
fi
done
echo ""
elog "Starting from version 3.0 only uses a single init script again"
elog "Please update your runlevels accordingly"
echo ""
elog "Dependencies should be resolved automatically depending on settings"
elog "but please report issues with this on https://bugs.gentoo.org/ if"
elog "you find any."
echo ""
elog "Following config files are obsolete now:"
elog "afpd.conf, netatalk.conf, AppleVolumes.default and afp_ldap.conf"
elog "in favour of"
elog "/etc/afp.conf"
echo ""
elog "Please convert your existing configs before you restart your daemon"
echo ""
elog "The new AppleDouble default backend is appledouble = ea"
elog "Existing entries will be updated on access, but can do an offline"
elog "conversion with"
elog "dbd -ruve /path/to/Volume"
echo ""
elog "For general notes on the upgrade, please visit"
elog "http://netatalk.sourceforge.net/3.0/htmldocs/upgrade.html"
echo ""
break
fi
done
}