Gentoo Archives: gentoo-commits

From: Alexey Shvetsov <alexxy@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: sys-auth/sssd/
Date: Wed, 31 Oct 2018 06:33:31
Message-Id: 1540967574.193f3f9ffcba189d4be5f6edca8c5462d124a487.alexxy@gentoo
1 commit: 193f3f9ffcba189d4be5f6edca8c5462d124a487
2 Author: Alexey Shvetsov <alexxy <AT> gentoo <DOT> org>
3 AuthorDate: Wed Oct 31 06:32:54 2018 +0000
4 Commit: Alexey Shvetsov <alexxy <AT> gentoo <DOT> org>
5 CommitDate: Wed Oct 31 06:32:54 2018 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=193f3f9f
7
8 sys-auth/sssd: Version bump
9
10 Signed-off-by: Alexey Shvetsov <alexxy <AT> gentoo.org>
11 Package-Manager: Portage-2.3.51, Repoman-2.3.11
12
13 sys-auth/sssd/Manifest | 1 +
14 sys-auth/sssd/metadata.xml | 8 +-
15 sys-auth/sssd/sssd-2.0.0.ebuild | 235 ++++++++++++++++++++++++++++++++++++++++
16 3 files changed, 242 insertions(+), 2 deletions(-)
17
18 diff --git a/sys-auth/sssd/Manifest b/sys-auth/sssd/Manifest
19 index 8cb22a3997d..b27404c4f9f 100644
20 --- a/sys-auth/sssd/Manifest
21 +++ b/sys-auth/sssd/Manifest
22 @@ -1 +1,2 @@
23 DIST sssd-1.16.3.tar.gz 6217114 BLAKE2B eefaf8de466d0d76e9a4b60aefef6eb63c17a55b9a1f2e07e973a61d71cbe5432e92357656a1eb353d45bbc2fa92290cef45898d0b315d4a4c4074652ff25a23 SHA512 6165923f652f624bbe3ddc625ae682c4867eb7a20652d0cf74bbb8dda2307c917d3189ede26fd21a4fb5fd5926149271a65fa09f3affe928029ed99e6422b728
24 +DIST sssd-2.0.0.tar.gz 6263376 BLAKE2B 9785710d62485a1168749bf9a2989999f721e390356e599092f3274b6d7029af1f7d4c0a1b2b09d0d55233fd30cc661d4ad5bf9ca6ca53c75151dd1dab7515c5 SHA512 affeb0799d8a4fcbcb4b2ed7925b397ae6ba0e2982c5603e98636b765d3820a3b29ac58b0771e5cc00c752512f091ae4fd271d441544147a0570d3c14b535701
25
26 diff --git a/sys-auth/sssd/metadata.xml b/sys-auth/sssd/metadata.xml
27 index 4a4874f3d84..852be6ff3f9 100644
28 --- a/sys-auth/sssd/metadata.xml
29 +++ b/sys-auth/sssd/metadata.xml
30 @@ -2,8 +2,12 @@
31 <!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
32 <pkgmetadata>
33 <maintainer type="person">
34 - <email>zlogene@g.o</email>
35 - <name>Mikle Kolyada</name>
36 + <email>zlogene@g.o</email>
37 + <name>Mikle Kolyada</name>
38 + </maintainer>
39 + <maintainer type="person">
40 + <email>alexxy@g.o</email>
41 + <name>Alexey Shvetsov</name>
42 </maintainer>
43 <use>
44 <flag name="acl"> Build and use the cifsidmap plugin</flag>
45
46 diff --git a/sys-auth/sssd/sssd-2.0.0.ebuild b/sys-auth/sssd/sssd-2.0.0.ebuild
47 new file mode 100644
48 index 00000000000..89c48c4c915
49 --- /dev/null
50 +++ b/sys-auth/sssd/sssd-2.0.0.ebuild
51 @@ -0,0 +1,235 @@
52 +# Copyright 1999-2018 Gentoo Authors
53 +# Distributed under the terms of the GNU General Public License v2
54 +
55 +EAPI=6
56 +
57 +PYTHON_COMPAT=( python{2_7,3_3,3_4,3_5,3_6,3_7} )
58 +
59 +inherit autotools flag-o-matic linux-info multilib-minimal pam python-r1 systemd toolchain-funcs
60 +
61 +DESCRIPTION="System Security Services Daemon provides access to identity and authentication"
62 +HOMEPAGE="https://pagure.io/SSSD/sssd"
63 +SRC_URI="http://releases.pagure.org/SSSD/${PN}/${P}.tar.gz"
64 +KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86"
65 +
66 +LICENSE="GPL-3"
67 +SLOT="0"
68 +IUSE="acl autofs +locator +netlink nfsv4 nls +manpages python samba selinux sudo ssh test"
69 +
70 +COMMON_DEP="
71 + >=virtual/pam-0-r1[${MULTILIB_USEDEP}]
72 + >=dev-libs/popt-1.16
73 + dev-libs/glib:2
74 + >=dev-libs/ding-libs-0.2
75 + >=sys-libs/talloc-2.0.7
76 + >=sys-libs/tdb-1.2.9
77 + >=sys-libs/tevent-0.9.16
78 + >=sys-libs/ldb-1.1.17-r1:=
79 + >=net-nds/openldap-2.4.30[sasl]
80 + net-libs/http-parser
81 + >=dev-libs/libpcre-8.30
82 + >=app-crypt/mit-krb5-1.10.3
83 + dev-libs/jansson
84 + locator? (
85 + >=app-crypt/mit-krb5-1.12.2[${MULTILIB_USEDEP}]
86 + >=net-dns/c-ares-1.10.0-r1[${MULTILIB_USEDEP}]
87 + )
88 + >=sys-apps/keyutils-1.5
89 + >=net-dns/c-ares-1.7.4
90 + >=dev-libs/nss-3.12.9
91 + selinux? (
92 + >=sys-libs/libselinux-2.1.9
93 + >=sys-libs/libsemanage-2.1
94 + )
95 + >=net-dns/bind-tools-9.9[gssapi]
96 + >=dev-libs/cyrus-sasl-2.1.25-r3[kerberos]
97 + >=sys-apps/dbus-1.6
98 + acl? ( net-fs/cifs-utils[acl] )
99 + nfsv4? ( || ( >=net-fs/nfs-utils-2.3.1-r2 net-libs/libnfsidmap ) )
100 + nls? ( >=sys-devel/gettext-0.18 )
101 + virtual/libintl
102 + netlink? ( dev-libs/libnl:3 )
103 + samba? ( >=net-fs/samba-4.5 )
104 + "
105 +
106 +RDEPEND="${COMMON_DEP}
107 + >=sys-libs/glibc-2.17[nscd]
108 + selinux? ( >=sec-policy/selinux-sssd-2.20120725-r9 )
109 + "
110 +DEPEND="${COMMON_DEP}
111 + test? ( dev-libs/check )
112 + manpages? (
113 + >=dev-libs/libxslt-1.1.26
114 + app-text/docbook-xml-dtd:4.4
115 + )"
116 +
117 +CONFIG_CHECK="~KEYS"
118 +
119 +MULTILIB_WRAPPED_HEADERS=(
120 + /usr/include/ipa_hbac.h
121 + /usr/include/sss_idmap.h
122 + /usr/include/sss_nss_idmap.h
123 + /usr/include/wbclient_sssd.h
124 + # --with-ifp
125 + /usr/include/sss_sifp.h
126 + /usr/include/sss_sifp_dbus.h
127 + # from 1.15.3
128 + /usr/include/sss_certmap.h
129 +)
130 +
131 +pkg_setup(){
132 + linux-info_pkg_setup
133 +}
134 +
135 +src_prepare() {
136 + sed -i 's:#!/sbin/runscript:#!/sbin/openrc-run:' \
137 + "${S}"/src/sysv/gentoo/sssd.in || die "sed sssd.in"
138 +
139 + default
140 + eautoreconf
141 + multilib_copy_sources
142 +}
143 +
144 +src_configure() {
145 + local native_dbus_cflags=$($(tc-getPKG_CONFIG) --cflags dbus-1)
146 +
147 + multilib-minimal_src_configure
148 +}
149 +
150 +multilib_src_configure() {
151 + # set initscript to sysv because the systemd option needs systemd to
152 + # be installed. We provide our own systemd file anyway.
153 + local myconf=()
154 + if [[ "${PYTHON_TARGETS}" == *python2* ]]; then
155 + myconf+=($(multilib_native_use_with python python2-bindings))
156 + fi
157 + if [[ "${PYTHON_TARGETS}" == *python3* ]]; then
158 + myconf+=($(multilib_native_use_with python python3-bindings))
159 + fi
160 + #Work around linker dependency problem.
161 + append-ldflags "-Wl,--allow-shlib-undefined"
162 +
163 + myconf+=(
164 + --localstatedir="${EPREFIX}"/var
165 + --enable-nsslibdir="${EPREFIX}"/$(get_libdir)
166 + --with-plugin-path="${EPREFIX}"/usr/$(get_libdir)/sssd
167 + --enable-pammoddir="${EPREFIX}"/$(getpam_mod_dir)
168 + --with-ldb-lib-dir="${EPREFIX}"/usr/$(get_libdir)/samba/ldb
169 + --with-os=gentoo
170 + --with-nscd
171 + --with-unicode-lib="glib2"
172 + --disable-rpath
173 + --disable-silent-rules
174 + --sbindir=/usr/sbin
175 + --without-kcm
176 + $(use_with samba libwbclient)
177 + --with-secrets
178 + $(multilib_native_use_with samba)
179 + $(multilib_native_use_enable acl cifs-idmap-plugin)
180 + $(multilib_native_use_with selinux)
181 + $(multilib_native_use_with selinux semanage)
182 + $(use_enable locator krb5-locator-plugin)
183 + $(multilib_native_use_with nfsv4 nfsv4-idmapd-plugin)
184 + $(use_enable nls )
185 + $(multilib_native_use_with netlink libnl)
186 + $(multilib_native_use_with manpages)
187 + $(multilib_native_use_with sudo)
188 + $(multilib_native_use_with autofs)
189 + $(multilib_native_use_with ssh)
190 + --with-crypto="nss"
191 + --with-initscript="sysv"
192 +
193 + KRB5_CONFIG=/usr/bin/${CHOST}-krb5-config
194 + )
195 +
196 + if ! multilib_is_native_abi; then
197 + # work-around all the libraries that are used for CLI and server
198 + myconf+=(
199 + {POPT,TALLOC,TDB,TEVENT,LDB}_{CFLAGS,LIBS}=' '
200 + # ldb headers are fine since native needs it
201 + # ldb lib fails... but it does not seem to bother
202 + {DHASH,COLLECTION,INI_CONFIG_V{0,1,1_1}}_{CFLAGS,LIBS}=' '
203 + {PCRE,CARES,SYSTEMD_LOGIN,SASL,GLIB2,DBUS,CRYPTO}_{CFLAGS,LIBS}=' '
204 +
205 + # use native include path for dbus (needed for build)
206 + DBUS_CFLAGS="${native_dbus_cflags}"
207 +
208 + # non-pkgconfig checks
209 + ac_cv_lib_ldap_ldap_search=yes
210 + --without-secrets
211 + --without-libwbclient
212 + --without-kcm
213 + --with-crypto=""
214 + )
215 +
216 + use locator || myconf+=(
217 + KRB5_CONFIG=/bin/true
218 + )
219 + fi
220 +
221 + econf "${myconf[@]}"
222 +}
223 +
224 +multilib_src_compile() {
225 + if multilib_is_native_abi; then
226 + default
227 + else
228 + emake libnss_sss.la pam_sss.la
229 + use locator && emake sssd_krb5_locator_plugin.la
230 + fi
231 +}
232 +
233 +multilib_src_install() {
234 + if multilib_is_native_abi; then
235 + emake -j1 DESTDIR="${D}" "${_at_args[@]}" install
236 + else
237 + # easier than playing with automake...
238 + dopammod .libs/pam_sss.so
239 +
240 + into /
241 + dolib .libs/libnss_sss.so*
242 +
243 + if use locator; then
244 + exeinto /usr/$(get_libdir)/krb5/plugins/libkrb5
245 + doexe .libs/sssd_krb5_locator_plugin.so
246 + fi
247 + fi
248 +}
249 +
250 +multilib_src_install_all() {
251 + einstalldocs
252 + find "${ED}" -type f -name '*.la' -delete || die
253 +
254 + insinto /etc/sssd
255 + insopts -m600
256 + doins "${S}"/src/examples/sssd-example.conf
257 +
258 + insinto /etc/logrotate.d
259 + insopts -m644
260 + newins "${S}"/src/examples/logrotate sssd
261 +
262 + newconfd "${FILESDIR}"/sssd.conf sssd
263 + newinitd "${FILESDIR}"/sssd sssd
264 +
265 + keepdir /var/lib/sss/db
266 + keepdir /var/lib/sss/deskprofile
267 + keepdir /var/lib/sss/gpo_cache
268 + keepdir /var/lib/sss/keytabs
269 + keepdir /var/lib/sss/mc
270 + keepdir /var/lib/sss/pipes/private
271 + keepdir /var/lib/sss/pubconf/krb5.include.d
272 + keepdir /var/lib/sss/secrets
273 + keepdir /var/log/sssd
274 +
275 + systemd_dounit "${FILESDIR}/${PN}.service"
276 +}
277 +
278 +multilib_src_test() {
279 + default
280 +}
281 +
282 +pkg_postinst(){
283 + elog "You must set up sssd.conf (default installed into /etc/sssd)"
284 + elog "and (optionally) configuration in /etc/pam.d in order to use SSSD"
285 + elog "features. Please see howto in http://fedorahosted.org/sssd/wiki/HOWTO_Configure_1_0_2"
286 +}