blob: 5d5a3fcf8c37395bdd77abb11931c992cf1ab03e (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
|
# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit autotools flag-o-matic pam systemd
DESCRIPTION="Open Source AFP server"
HOMEPAGE="https://netatalk.sourceforge.net/"
SRC_URI="https://github.com/Netatalk/netatalk/releases/download/netatalk-${PV//./-}/netatalk-${PV}.tar.xz"
LICENSE="GPL-2 BSD"
SLOT="0/18.0"
KEYWORDS="amd64 arm ~ppc ~ppc64 x86"
IUSE="acl cracklib dbus debug kerberos ldap pam pgp quota +shadow ssl tracker tcpd zeroconf"
RDEPEND="
!app-editors/yudit
dev-libs/libevent:=
>=dev-libs/libgcrypt-1.2.3:=
sys-apps/coreutils
>=sys-libs/db-4.2.52:=
sys-libs/tdb
virtual/libcrypt:=
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? ( sys-libs/pam )
ssl? ( dev-libs/openssl:0= )
tcpd? ( sys-apps/tcp-wrappers )
tracker? ( app-misc/tracker:3= )
zeroconf? ( net-dns/avahi[dbus] )
"
DEPEND="${RDEPEND}"
BDEPEND="
app-alternatives/yacc
app-alternatives/lex
"
RESTRICT="test"
REQUIRED_USE="
ldap? ( acl )
tracker? ( dbus )"
PATCHES=(
"${FILESDIR}"/${PN}-3.1.17-gentoo.patch
"${FILESDIR}"/${PN}-3.1.17-disable-ld-library-path.patch # bug #564350
)
src_prepare() {
default
append-flags -fno-strict-aliasing
sed \
-e "s:shell_utils::g" \
-i contrib/Makefile.am || die
eautoreconf
}
src_configure() {
local myeconfargs=()
# 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 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 kerberos)
$(use_with ldap)
$(use_with pam)
$(use_with shadow)
$(use_with ssl ssl-dir)
$(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)
--disable-static
--enable-overwrite
--disable-afs
--with-bdb=/usr
--with-uams-path=/usr/$(get_libdir)/${PN}
--with-init-style=gentoo-openrc
--without-tdb
--with-lockfile=/run/lock/${PN}
)
econf "${myeconfargs[@]}"
}
src_install() {
default
if use zeroconf; then
sed -i -e '/avahi-daemon/s:use:need:g' "${ED}"/etc/init.d/${PN} || die
else
sed -i -e '/avahi-daemon/d' "${ED}"/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
if use pam; then
pamd_mimic_system netatalk auth account password session
fi
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
# no static archives
find "${ED}" -name '*.la' -delete || die
}
pkg_postinst() {
local fle v
for v in ${REPLACING_VERSIONS}; do
if [[ $(ver_test ${v} -lt 3) ]]; 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
elog
elog "Starting from version 3.0 only uses a single init script again"
elog "Please update your runlevels accordingly"
elog
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."
elog
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"
elog
elog "Please convert your existing configs before you restart your daemon"
elog
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"
elog
elog "For general notes on the upgrade, please visit"
elog "http://netatalk.sourceforge.net/3.0/htmldocs/upgrade.html"
elog
break
fi
done
}
|