a3156b59eb540a2b7e805a1613189d56677d9ee1
[packages/sssd.git] / sssd.spec
1 # TODO
2 # - fix stripping before rpm:
3 #   *** WARNING: no sources found for /usr/lib64/libipa_hbac.so.0.0.0 (stripped without sourcefile information?)
4 # - add info how sssd-heimdal.patch is updated, where is it's origin?
5 #
6 # Conditional build:
7 %bcond_with     tests   # check target
8 %bcond_without  python2 # CPython 2.x module
9 %bcond_without  python3 # CPython 3.x module
10 %bcond_with     krb5    # MIT Kerberos V instead of Heimdal (enables locator plugin, profile support and pac-responder)
11
12 %define         ldb_version 1.1.0
13 Summary:        System Security Services Daemon
14 Summary(pl.UTF-8):      System Security Services Daemon - demon usług bezpieczeństwa systemu
15 Name:           sssd
16 Version:        1.13.4
17 Release:        4
18 License:        GPL v3+
19 Group:          Applications/System
20 Source0:        https://fedorahosted.org/released/sssd/%{name}-%{version}.tar.gz
21 # Source0-md5:  d147e0a4f4719d993693c6a99370b350
22 Source1:        %{name}.init
23 Patch0:         %{name}-python.patch
24 Patch1:         %{name}-heimdal.patch
25 Patch2:         %{name}-systemd.patch
26 Patch3:         %{name}-link.patch
27 URL:            https://fedorahosted.org/sssd/
28 BuildRequires:  augeas-devel >= 1.0.0
29 BuildRequires:  autoconf >= 2.59
30 BuildRequires:  automake
31 # nsupdate utility
32 BuildRequires:  bind-utils
33 BuildRequires:  c-ares-devel
34 BuildRequires:  check-devel >= 0.9.5
35 BuildRequires:  cifs-utils-devel
36 %{?with_tests:BuildRequires:    cmocka-devel >= 1.0.0}
37 BuildRequires:  cyrus-sasl-devel >= 2
38 BuildRequires:  dbus-devel >= 1.0.0
39 BuildRequires:  docbook-dtd44-xml
40 BuildRequires:  docbook-style-xsl
41 BuildRequires:  doxygen
42 %{?with_tests:BuildRequires:    fakeroot}
43 BuildRequires:  gettext-tools >= 0.14.4
44 BuildRequires:  glib2-devel >= 2.0
45 %{!?with_krb5:BuildRequires:    heimdal-devel}
46 BuildRequires:  keyutils-devel
47 %{?with_krb5:BuildRequires:     krb5-devel >= 1.9}
48 BuildRequires:  ldb-devel >= %{ldb_version}
49 BuildRequires:  libcollection-devel >= 0.5.1
50 BuildRequires:  libdhash-devel >= 0.4.2
51 BuildRequires:  libini_config-devel >= 1.1.0
52 BuildRequires:  libltdl-devel
53 BuildRequires:  libnfsidmap-devel
54 BuildRequires:  libnl-devel >= 3.2
55 BuildRequires:  libselinux-devel
56 BuildRequires:  libsemanage-devel
57 BuildRequires:  libsmbclient-devel
58 BuildRequires:  libtool >= 2:2
59 BuildRequires:  libxml2-progs
60 BuildRequires:  libxslt-progs
61 BuildRequires:  m4
62 BuildRequires:  nspr-devel
63 BuildRequires:  nss-devel
64 %{?with_tests:BuildRequires:    nss_wrapper}
65 BuildRequires:  openldap-devel
66 BuildRequires:  pam-devel
67 BuildRequires:  pcre-devel >= 7
68 BuildRequires:  pkgconfig
69 BuildRequires:  po4a
70 BuildRequires:  popt-devel
71 %{?with_python2:BuildRequires:  python-devel >= 1:2.6}
72 %{?with_tests:BuildRequires:    python-pytest}
73 %{?with_python3:BuildRequires:  python3-devel >= 1:3.3}
74 BuildRequires:  rpm-pythonprov
75 BuildRequires:  rpmbuild(macros) >= 1.612
76 # pkgconfig(ndr_nbt), pkgconfig(ndr_krb5pac) if with krb5
77 BuildRequires:  samba-devel >= 4
78 BuildRequires:  systemd-devel >= 1:209
79 BuildRequires:  systemd-units
80 BuildRequires:  talloc-devel
81 BuildRequires:  tdb-devel >= 1.1.3
82 BuildRequires:  tevent-devel
83 %{?with_tests:BuildRequires:    uid_wrapper}
84 Requires(post): /sbin/ldconfig
85 Requires(post,preun):   /sbin/chkconfig
86 Requires:       %{name}-client = %{version}-%{release}
87 Requires:       cyrus-sasl-gssapi
88 Requires:       ldb >= %{ldb_version}
89 Requires:       libcollection >= 0.5.1
90 Requires:       libdhash >= 0.4.2
91 Requires:       libini_config >= 1.1.0
92 Requires:       libsss_idmap = %{version}-%{release}
93 Requires:       pcre >= 7
94 Requires:       rc-scripts >= 0.4.0.10
95 Requires:       tdb >= 1.1.3
96 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
97
98 %define         sssdstatedir            %{_localstatedir}/lib/sss
99 %define         dbpath                  %{sssdstatedir}/db
100 %define         pipepath                %{sssdstatedir}/pipes
101 %define         pubconfpath             %{sssdstatedir}/pubconf
102
103 # Determine the location of the LDB modules directory
104 %define         ldb_modulesdir  %(pkg-config --variable=modulesdir ldb)
105
106 %description
107 Provides a set of daemons to manage access to remote directories and
108 authentication mechanisms. It provides an NSS and PAM interface toward
109 the system and a pluggable backend system to connect to multiple
110 different account sources. It is also the basis to provide client
111 auditing and policy services for projects like FreeIPA.
112
113 %description -l pl.UTF-8
114 Ten pakiet dostarcza zbiór demonów do zarządzania dostępem do zdalnych
115 katalogów i mechanizmów uwierzytelniania. Udostępnia interfejsy NSS i
116 PAM dla systemu oraz system backendu z wtyczkami w celu łączenia się z
117 wieloma różnymi źródłami kont. Jest także podstawą zapewniającą audyt
118 klientów oraz usługi polityk dla projektów takich jak FreeIPA.
119
120 %package client
121 Summary:        SSSD Client libraries for NSS and PAM
122 Summary(pl.UTF-8):      Biblioteki klienckie SSSD dla NSS i PAM
123 License:        LGPL v3+
124 Group:          Applications/System
125 Requires:       libsss_idmap = %{version}-%{release}
126 Requires:       libsss_nss_idmap = %{version}-%{release}
127
128 %description client
129 Provides the libraries needed by the PAM and NSS stacks to connect to
130 the SSSD service.
131
132 %description client -l pl.UTF-8
133 Ten pakiet dostarcza biblioteki wymagane przez stosy PAM i NSS w celu
134 łączenia się z usługą SSSD.
135
136 %package tools
137 Summary:        Userspace tools for use with the SSSD
138 Summary(pl.UTF-8):      Narzędzia przestrzeni użytkownika do używania z SSSD
139 License:        GPL v3+
140 Group:          Applications/System
141 Requires:       %{name} = %{version}-%{release}
142
143 %description tools
144 Provides userspace tools for manipulating users, groups, and nested
145 groups in SSSD when using id_provider = local in /etc/sssd/sssd.conf.
146
147 Also provides several other administrative tools:
148  - sss_debuglevel to change the debug level on the fly,
149  - sss_seed which pre-creates a user entry for use in kickstarts,
150  - sss_obfuscate for generating an obfuscated LDAP password.
151
152 %description tools -l pl.UTF-8
153 Ten pakiet dostarcza narzędzia przestrzeni poleceń do operowania na
154 użytkownikach, grupach oraz zagnieżdżonych grupach w SSSD w przypadku
155 używania id_provider = local w /etc/sssd/sssd.conf.
156
157 Pakiet zawiera także kilka innych narzędzi administracyjnych:
158  - sss_debuglevel do zmiany poziomu diagnostyki w locie,
159  - sss_seed tworzący wpis użytkownika do szybkiego rozruchu,
160  - sss_obfuscate do generowania utajnionego hasła LDAP.
161
162 %package -n python-sss
163 Summary:        Python 2 bindings for sssd
164 Summary(pl.UTF-8):      Wiązania Pythona 2 do sssd
165 License:        LGPL v3+
166 Group:          Libraries/Python
167 Requires:       %{name} = %{version}-%{release}
168
169 %description -n python-sss
170 Python 2 module for manipulating users, groups, and nested groups in
171 SSSD when using id_provider = local in /etc/sssd/sssd.conf.
172
173 This module also provides several other useful Python 2 bindings:
174  - function for retrieving list of groups user belongs to.
175  - class for obfuscation of passwords
176
177 %description -n python-sss -l pl.UTF-8
178 Moduł Pythona 2 do operowania na użytkownikach, grupach i
179 zagnieżdżonych grupach w SSSD w przypadku używania id_provider = local
180 w /etc/sssd/sssd.conf.
181
182 Ten moduł dostarcza także kilka innych przydatnych wiązań Pythona 2:
183  - funkcję do użyskiwania list grup, do których należy użytkownik,
184  - klasę do ukrywania haseł.
185
186 %package -n python-sss-murmur
187 Summary:        Python 2 bindings for murmur hash function
188 Summary(pl.UTF-8):      Wiązania Pythona 2 do funkcji mieszającej murmur
189 License:        LGPL v3+
190 Group:          Libraries/Python
191
192 %description -n python-sss-murmur
193 Python 2 module for calculating the murmur hash version 3.
194
195 %description -n python-sss-murmur -l pl.UTF-8
196 Moduł Pythona 2 do obliczania skrótu murmur w wersji 3.
197
198 %package -n python-sssdconfig
199 Summary:        SSSD and IPA configuration file manipulation classes and functions for Python 2
200 Summary(pl.UTF-8):      Klasy i funkcje Pythona 2 do operowania na plikach konfiguracyjnych SSSD oraz IPA
201 License:        GPL v3+
202 Group:          Libraries/Python
203 BuildArch:      noarch
204
205 %description -n python-sssdconfig
206 SSSD and IPA configuration file manipulation classes and functions for
207 Python 2.
208
209 %description -n python-sssdconfig -l pl.UTF-8
210 Klasy i funkcje Pythona 2 do operowania na plikach konfiguracyjnych
211 SSSD oraz IPA.
212
213 %package -n python3-sss
214 Summary:        Python 3 bindings for sssd
215 Summary(pl.UTF-8):      Wiązania Pythona 3 do sssd
216 License:        LGPL v3+
217 Group:          Libraries/Python
218 Requires:       %{name} = %{version}-%{release}
219
220 %description -n python3-sss
221 Python 3 module for manipulating users, groups, and nested groups in
222 SSSD when using id_provider = local in /etc/sssd/sssd.conf.
223
224 This module also provides several other useful Python 3 bindings:
225  - function for retrieving list of groups user belongs to.
226  - class for obfuscation of passwords
227
228 %description -n python3-sss -l pl.UTF-8
229 Moduł Pythona 3 do operowania na użytkownikach, grupach i
230 zagnieżdżonych grupach w SSSD w przypadku używania id_provider = local
231 w /etc/sssd/sssd.conf.
232
233 Ten moduł dostarcza także kilka innych przydatnych wiązań Pythona 3:
234  - funkcję do użyskiwania list grup, do których należy użytkownik,
235  - klasę do ukrywania haseł.
236
237 %package -n python3-sss-murmur
238 Summary:        Python 3 bindings for murmur hash function
239 Summary(pl.UTF-8):      Wiązania Pythona 3 do funkcji mieszającej murmur
240 License:        LGPL v3+
241 Group:          Libraries/Python
242
243 %description -n python3-sss-murmur
244 Python 3 module for calculating the murmur hash version 3.
245
246 %description -n python3-sss-murmur -l pl.UTF-8
247 Moduł Pythona 3 do obliczania skrótu murmur w wersji 3.
248
249 %package -n python3-sssdconfig
250 Summary:        SSSD and IPA configuration file manipulation classes and functions for Python 3
251 Summary(pl.UTF-8):      Klasy i funkcje Pythona 3 do operowania na plikach konfiguracyjnych SSSD oraz IPA
252 License:        GPL v3+
253 Group:          Libraries/Python
254 BuildArch:      noarch
255
256 %description -n python3-sssdconfig
257 SSSD and IPA configuration file manipulation classes and functions for
258 Python 3.
259
260 %description -n python3-sssdconfig -l pl.UTF-8
261 Klasy i funkcje Pythona 3 do operowania na plikach konfiguracyjnych
262 SSSD oraz IPA.
263
264 %package libwbclient
265 Summary:        The SSSD libwbclient implementation
266 Summary(pl.UTF-8):      Implementacja libwbclient oparta na SSSD
267 Group:          Libraries
268 License:        LGPL v3+
269 Requires:       libsss_nss_idmap = %{version}-%{release}
270
271 %description libwbclient
272 The SSSD implementation of Samba wbclient library.
273
274 %description libwbclient -l pl.UTF-8
275 Implementacja biblioteki Samba wbclient oparta na SSSD.
276
277 %package libwbclient-devel
278 Summary:        Development files of the SSSD libwbclient implementation
279 Summary(pl.UTF-8):      Pliki programistyczne implementacja libwbclient oparta na SSSD
280 Group:          Development/Libraries
281 License:        LGPL v3+
282 Requires:       %{name}-libwbclient = %{version}-%{release}
283
284 %description libwbclient-devel
285 Development files for the SSSD implementation of Samba wbclient
286 library.
287
288 %description libwbclient-devel -l pl.UTF-8
289 Pliki programistyczne implementacji biblioteki Samba wbclient opartej
290 na SSSD.
291
292 %package -n libipa_hbac
293 Summary:        FreeIPA HBAC Evaluator library
294 Summary(pl.UTF-8):      Biblioteka oceniająca FreeIPA HBAC
295 License:        LGPL v3+
296 Group:          Libraries
297
298 %description -n libipa_hbac
299 Utility library to validate FreeIPA HBAC rules for authorization
300 requests.
301
302 %description -n libipa_hbac
303 Biblioteka narzędziowa do sprawdzania poprawności reguł FreeIPA HBAC
304 dla żądań autoryzacji.
305
306 %package -n libipa_hbac-devel
307 Summary:        Development files for FreeIPA HBAC Evaluator library
308 Summary(pl.UTF-8):      Pliki programistyczne biblioteki oceniająca FreeIPA HBAC
309 License:        LGPL v3+
310 Group:          Development/Libraries
311 Requires:       libipa_hbac = %{version}-%{release}
312
313 %description -n libipa_hbac-devel
314 Development files for FreeIPA HBAC Evaluator library.
315
316 %description -n libipa_hbac-devel -l pl.UTF-8
317 Pliki programistyczne biblioteki oceniająca FreeIPA HBAC.
318
319 %package -n python-libipa_hbac
320 Summary:        Python 2 bindings for the FreeIPA HBAC Evaluator library
321 Summary(pl.UTF-8):      Wiązania Pythona 2 do biblioteki oceniającej FreeIPA HBAC
322 License:        LGPL v3+
323 Group:          Libraries/Python
324 Requires:       libipa_hbac = %{version}-%{release}
325 Obsoletes:      libipa_hbac-python
326
327 %description -n python-libipa_hbac
328 This package contains the bindings so that libipa_hbac can be used by
329 Python 2 applications.
330
331 %description -n python-libipa_hbac -l pl.UTF-8
332 Ten pakiet zawiera wiązania pozwalające na używanie libipa_hbac w
333 aplikacjach Pythona 2.
334
335 %package -n python3-libipa_hbac
336 Summary:        Python 3 bindings for the FreeIPA HBAC Evaluator library
337 Summary(pl.UTF-8):      Wiązania Pythona 3 do biblioteki oceniającej FreeIPA HBAC
338 License:        LGPL v3+
339 Group:          Libraries/Python
340 Requires:       libipa_hbac = %{version}-%{release}
341
342 %description -n python3-libipa_hbac
343 This package contains the bindings so that libipa_hbac can be used by
344 Python 3 applications.
345
346 %description -n python3-libipa_hbac -l pl.UTF-8
347 Ten pakiet zawiera wiązania pozwalające na używanie libipa_hbac w
348 aplikacjach Pythona 3.
349
350 %package -n libsss_idmap
351 Summary:        FreeIPA Idmap library
352 Summary(pl.UTF-8):      Biblioteka FreeIPA Idmap
353 Group:          Libraries
354 License:        LGPL v3+
355
356 %description -n libsss_idmap
357 Utility library to convert SIDs to Unix uids and gids.
358
359 %description -n libsss_idmap -l pl.UTF-8
360 Biblioteka narzędziowa konwertująca SID-y na uniksowe uidy i gidy.
361
362 %package -n libsss_idmap-devel
363 Summary:        Development files for FreeIPA Idmap library
364 Summary(pl.UTF-8):      Pliki programistyczne biblioteki FreeIPA Idmap
365 Group:          Development/Libraries
366 License:        LGPL v3+
367 Requires:       libsss_idmap = %{version}-%{release}
368
369 %description -n libsss_idmap-devel
370 Development files for FreeIPA Idmap library.
371
372 %description -n libsss_idmap-devel -l pl.UTF-8
373 Pliki programistyczne biblioteki FreeIPA Idmap.
374
375 %package -n libsss_nss_idmap
376 Summary:        Library for SID based lookups
377 Summary(pl.UTF-8):      Biblioteka do wyszukiwań w oparciu o SID
378 Group:          Libraries
379 License:        LGPL v3+
380
381 %description -n libsss_nss_idmap
382 Utility library for SID based lookups.
383
384 %description -n libsss_nss_idmap -l pl.UTF-8
385 Biblioteka do wyszukiwań w oparciu o SID.
386
387 %package -n libsss_nss_idmap-devel
388 Summary:        Development files for sss_nss_idmap library
389 Summary(pl.UTF-8):      Pliki programistyczne biblioteki sss_nss_idmap
390 Group:          Development/Libraries
391 License:        LGPL v3+
392 Requires:       libsss_nss_idmap = %{version}-%{release}
393
394 %description -n libsss_nss_idmap-devel
395 Development files for sss_nss_idmap library.
396
397 %description -n libsss_nss_idmap-devel -l pl.UTF-8
398 Pliki programistyczne biblioteki sss_nss_idmap.
399
400 %package -n python-libsss_nss_idmap
401 Summary:        Python 2 bindings for libsss_nss_idmap
402 Summary(pl.UTF-8):      Wiązania Pythona 2 do biblioteki libsss_nss_idmap
403 Group:          Libraries/Python
404 License:        LGPL v3+
405 Requires:       libsss_nss_idmap = %{version}-%{release}
406
407 %description -n python-libsss_nss_idmap
408 This package contains the bindings so that libsss_nss_idmap can be
409 used by Python 2 applications.
410
411 %description -n python-libsss_nss_idmap -l pl.UTF-8
412 Ten pakiet zawiera wiązania umożliwiające korzystanie z biblioteki
413 libsss_nss_idmap w aplikacjach Pythona 2.
414
415 %package -n python3-libsss_nss_idmap
416 Summary:        Python 3 bindings for libsss_nss_idmap
417 Summary(pl.UTF-8):      Wiązania Pythona 3 do biblioteki libsss_nss_idmap
418 Group:          Libraries/Python
419 License:        LGPL v3+
420 Requires:       libsss_nss_idmap = %{version}-%{release}
421
422 %description -n python3-libsss_nss_idmap
423 This package contains the bindings so that libsss_nss_idmap can be
424 used by Python 3 applications.
425
426 %description -n python3-libsss_nss_idmap -l pl.UTF-8
427 Ten pakiet zawiera wiązania umożliwiające korzystanie z biblioteki
428 libsss_nss_idmap w aplikacjach Pythona 3.
429
430 %package -n libsss_simpleifp
431 Summary:        A library that simplifies work with the InfoPipe responder
432 Summary(pl.UTF-8):      Biblioteka upraszczająca pracę z responderem InfoPipe
433 Group:          Libraries
434 Requires:       dbus-libs >= 1.0.0
435 Requires:       libdhash >= 0.4.2
436
437 %description -n libsss_simpleifp
438 A library that simplifies work with the InfoPipe responder.
439
440 %description -n libsss_simpleifp -l pl.UTF-8
441 Biblioteka upraszczająca pracę z responderem InfoPipe.
442
443 %package -n libsss_simpleifp-devel
444 Summary:        Header files for libsss_simpleifp library
445 Summary(pl.UTF-8):      Pliki nagłówkowe biblioteki libsss_simpleifp
446 Group:          Development/Libraries
447 Requires:       dbus-devel >= 1.0.0
448 Requires:       libdhash-devel >= 0.4.2
449 Requires:       libsss_simpleifp = %{version}-%{release}
450
451 %description -n libsss_simpleifp-devel
452 Header files for libsss_simpleifp library.
453
454 %description -n libsss_simpleifp-devel -l pl.UTF-8
455 Pliki nagłówkowe biblioteki libsss_simpleifp.
456
457 %prep
458 %setup -q
459 %patch0 -p1
460 %patch1 -p1
461 %patch2 -p1
462 %patch3 -p1
463
464 %build
465 %{__libtoolize}
466 %{__gettextize}
467 %{__aclocal} -I m4
468 %{__autoconf}
469 %{__automake}
470 %configure \
471         NSCD=/usr/sbin/nscd \
472         %{!?with_krb5:--disable-krb5-locator-plugin} \
473         --enable-nfsidmaplibdir=/%{_lib}/libnfsidmap \
474         --enable-nsslibdir=/%{_lib} \
475         %{!?with_krb5:--disable-pac-responder} \
476         --enable-pammoddir=/%{_lib}/security \
477         --disable-rpath \
478         --with-db-path=%{dbpath} \
479         --with-init-dir=/etc/rc.d/init.d \
480         --with-initscript=sysv,systemd \
481         --with-pipe-path=%{pipepath} \
482         --with-pubconf-path=%{pubconfpath} \
483         --with-python2-bindings%{!?with_python2:=no} \
484         --with-python3-bindings%{!?with_python3:=no} \
485         --with-systemdunitdir=%{systemdunitdir} \
486         --with-test-dir=/dev/shm
487
488 %{__make}
489
490 %if %{with tests}
491 export CK_TIMEOUT_MULTIPLIER=10
492 %{__make} check
493 unset CK_TIMEOUT_MULTIPLIER
494 %endif
495
496 %install
497 rm -rf $RPM_BUILD_ROOT
498
499 %{__make} -j1 install \
500         DESTDIR=$RPM_BUILD_ROOT \
501         python3dir=%{py3_sitescriptdir}
502
503 # Prepare language files
504 %find_lang %{name}
505
506 # Copy default sssd.conf file
507 install -d $RPM_BUILD_ROOT%{_sysconfdir}/sssd/sssd.api.d
508 cp -p src/examples/sssd-example.conf $RPM_BUILD_ROOT%{_sysconfdir}/sssd/sssd.conf
509
510 # Copy default logrotate file
511 install -d $RPM_BUILD_ROOT%{_sysconfdir}/logrotate.d
512 cp -p src/examples/logrotate $RPM_BUILD_ROOT%{_sysconfdir}/logrotate.d/sssd
513
514 # Make sure SSSD is able to run on read-only root
515 install -d $RPM_BUILD_ROOT%{_sysconfdir}/rwtab.d
516 #cp -p src/examples/rwtab $RPM_BUILD_ROOT%{_sysconfdir}/rwtab.d/sssd
517
518 # Remove .la files created by libtool
519 %{__rm} \
520         $RPM_BUILD_ROOT/%{_lib}/libnss_sss.la \
521         $RPM_BUILD_ROOT/%{_lib}/libnfsidmap/sss.la \
522         $RPM_BUILD_ROOT/%{_lib}/security/pam_sss.la \
523         $RPM_BUILD_ROOT%{ldb_modulesdir}/memberof.la \
524         $RPM_BUILD_ROOT%{_libdir}/cifs-utils/*.la \
525         %{?with_krb5:$RPM_BUILD_ROOT%{_libdir}/krb5/plugins/libkrb5/sss*.la} \
526         $RPM_BUILD_ROOT%{_libdir}/sssd/libsss_*.la \
527         $RPM_BUILD_ROOT%{_libdir}/sssd/modules/lib*.la \
528         $RPM_BUILD_ROOT%{_libdir}/lib*.la
529 %if %{with python2}
530 %{__rm} $RPM_BUILD_ROOT%{py_sitedir}/*.la
531 %py_postclean
532 %endif
533 %if %{with python3}
534 %{__rm} $RPM_BUILD_ROOT%{py3_sitedir}/*.la
535 %endif
536
537 install -p %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/%{name}
538
539 echo '%%defattr(644,root,root,755)' > sssd_client.lang
540 echo '%%defattr(644,root,root,755)' > sssd_tools.lang
541 for man in $(find $RPM_BUILD_ROOT%{_mandir}/??/man? -type f | sed -e "s#$RPM_BUILD_ROOT%{_mandir}/##"); do
542         lang=$(echo $man | cut -c 1-2)
543         case $(basename $man) in
544         pam_sss.8|sssd_krb5_locator_plugin.8)
545                 echo "%lang(${lang}) %{_mandir}/${man}*" >> sssd_client.lang
546                 ;;
547         sss_debuglevel.8|sss_group*.8|sss_obfuscate.8|sss_seed.8|sss_user*.8)
548                 echo "%lang(${lang}) %{_mandir}/${man}*" >> sssd_tools.lang
549                 ;;
550         *)
551                 echo "%lang(${lang}) %{_mandir}/${man}*" >> sssd.lang
552                 ;;
553         esac
554 done
555
556 %clean
557 rm -rf $RPM_BUILD_ROOT
558
559 %post
560 /sbin/ldconfig
561 /sbin/chkconfig --add %{name}
562 %service %{name} restart
563
564 %preun
565 if [ "$1" = "0" ]; then
566         %service -q %{name} stop
567         /sbin/chkconfig --del %{name}
568 fi
569
570 %postun -p /sbin/ldconfig
571
572 %post   client -p /sbin/ldconfig
573 %postun client -p /sbin/ldconfig
574
575 %post   -n libipa_hbac -p /sbin/ldconfig
576 %postun -n libipa_hbac -p /sbin/ldconfig
577
578 %post   -n libsss_idmap -p /sbin/ldconfig
579 %postun -n libsss_idmap -p /sbin/ldconfig
580
581 %post   -n libsss_nss_idmap -p /sbin/ldconfig
582 %postun -n libsss_nss_idmap -p /sbin/ldconfig
583
584 %post   -n libsss_simpleifp -p /sbin/ldconfig
585 %postun -n libsss_simpleifp -p /sbin/ldconfig
586
587 %files -f sssd.lang
588 %defattr(644,root,root,755)
589 %attr(755,root,root) %{_bindir}/sss_ssh_authorizedkeys
590 %attr(755,root,root) %{_bindir}/sss_ssh_knownhostsproxy
591 %attr(755,root,root) %{_sbindir}/sss_cache
592 %attr(755,root,root) %{_sbindir}/sssd
593 # sudo plugin
594 %attr(755,root,root) %{_libdir}/libsss_sudo.so
595 %dir %{_libdir}/sssd
596 # internal shared libraries
597 %attr(755,root,root) %{_libdir}/sssd/libsss_cert.so
598 %attr(755,root,root) %{_libdir}/sssd/libsss_child.so
599 %attr(755,root,root) %{_libdir}/sssd/libsss_config.so
600 %attr(755,root,root) %{_libdir}/sssd/libsss_crypt.so
601 %attr(755,root,root) %{_libdir}/sssd/libsss_debug.so
602 %attr(755,root,root) %{_libdir}/sssd/libsss_krb5_common.so
603 %attr(755,root,root) %{_libdir}/sssd/libsss_ldap_common.so
604 %attr(755,root,root) %{_libdir}/sssd/libsss_semanage.so
605 %attr(755,root,root) %{_libdir}/sssd/libsss_util.so
606 # modules
607 %attr(755,root,root) %{_libdir}/sssd/libsss_simple.so
608 %attr(755,root,root) %{_libdir}/sssd/libsss_ad.so
609 %attr(755,root,root) %{_libdir}/sssd/libsss_ipa.so
610 %attr(755,root,root) %{_libdir}/sssd/libsss_krb5.so
611 %attr(755,root,root) %{_libdir}/sssd/libsss_ldap.so
612 %attr(755,root,root) %{_libdir}/sssd/libsss_proxy.so
613 %dir %{_libdir}/sssd/modules
614 %attr(755,root,root) %{_libdir}/sssd/modules/libsss_autofs.so
615 %if "%{_libdir}" != "%{_libexecdir}"
616 %dir %{_libexecdir}/sssd
617 %endif
618 %attr(755,root,root) %{_libexecdir}/sssd/gpo_child
619 %attr(755,root,root) %{_libexecdir}/sssd/krb5_child
620 %attr(755,root,root) %{_libexecdir}/sssd/ldap_child
621 %attr(755,root,root) %{_libexecdir}/sssd/p11_child
622 %attr(755,root,root) %{_libexecdir}/sssd/proxy_child
623 %attr(755,root,root) %{_libexecdir}/sssd/selinux_child
624 %attr(755,root,root) %{_libexecdir}/sssd/sss_signal
625 %attr(755,root,root) %{_libexecdir}/sssd/sssd_autofs
626 %attr(755,root,root) %{_libexecdir}/sssd/sssd_be
627 %attr(755,root,root) %{_libexecdir}/sssd/sssd_ifp
628 %attr(755,root,root) %{_libexecdir}/sssd/sssd_nss
629 %if %{with krb5}
630 %attr(755,root,root) %{_libexecdir}/sssd/sssd_pac
631 %endif
632 %attr(755,root,root) %{_libexecdir}/sssd/sssd_pam
633 %attr(755,root,root) %{_libexecdir}/sssd/sssd_ssh
634 %attr(755,root,root) %{_libexecdir}/sssd/sssd_sudo
635 %dir %{_datadir}/sssd
636 %{_datadir}/sssd/sssd.api.conf
637 %dir %{_datadir}/sssd/sssd.api.d
638 %{_datadir}/sssd/sssd.api.d/sssd-ad.conf
639 %{_datadir}/sssd/sssd.api.d/sssd-ipa.conf
640 %{_datadir}/sssd/sssd.api.d/sssd-krb5.conf
641 %{_datadir}/sssd/sssd.api.d/sssd-ldap.conf
642 %{_datadir}/sssd/sssd.api.d/sssd-local.conf
643 %{_datadir}/sssd/sssd.api.d/sssd-proxy.conf
644 %{_datadir}/sssd/sssd.api.d/sssd-simple.conf
645 %attr(755,root,root) /%{_lib}/libnfsidmap/sss.so
646 %attr(755,root,root) %{ldb_modulesdir}/memberof.so
647 %dir %{sssdstatedir}
648 %attr(700,root,root) %dir %{dbpath}
649 %dir %{pipepath}
650 %dir %{pubconfpath}
651 %attr(700,root,root) %dir %{pipepath}/private
652 %attr(750,root,root) %dir %{_var}/log/%{name}
653 %attr(700,root,root) %dir %{_sysconfdir}/sssd
654 %attr(600,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/sssd/sssd.conf
655 %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/sssd
656 #%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rwtab.d/sssd
657 %attr(754,root,root) /etc/rc.d/init.d/sssd
658 %{systemdunitdir}/sssd.service
659 /etc/dbus-1/system.d/org.freedesktop.sssd.infopipe.conf
660 %{_datadir}/dbus-1/system-services/org.freedesktop.sssd.infopipe.service
661 %{_mandir}/man1/sss_ssh_authorizedkeys.1*
662 %{_mandir}/man1/sss_ssh_knownhostsproxy.1*
663 %{_mandir}/man5/sss_rpcidmapd.5*
664 %{_mandir}/man5/sssd.conf.5*
665 %{_mandir}/man5/sssd-ad.5*
666 %{_mandir}/man5/sssd-ifp.5*
667 %{_mandir}/man5/sssd-ipa.5*
668 %{_mandir}/man5/sssd-krb5.5*
669 %{_mandir}/man5/sssd-ldap.5*
670 %{_mandir}/man5/sssd-simple.5*
671 %{_mandir}/man5/sssd-sudo.5*
672 %{_mandir}/man8/sss_cache.8*
673 %{_mandir}/man8/sssd.8*
674
675 %files client -f sssd_client.lang
676 %defattr(644,root,root,755)
677 %attr(755,root,root) /%{_lib}/libnss_sss.so.2
678 %attr(755,root,root) /%{_lib}/security/pam_sss.so
679 %attr(755,root,root) %{_libdir}/cifs-utils/cifs_idmap_sss.so
680 %if %{with krb5}
681 # XXX: verify locations
682 %attr(755,root,root) %{_libdir}/krb5/plugins/libkrb5/sssd_krb5_localauth_plugin.so
683 %attr(755,root,root) %{_libdir}/krb5/plugins/libkrb5/sssd_krb5_locator_plugin.so
684 %attr(755,root,root) %{_libdir}/krb5/plugins/libkrb5/sssd_pac_plugin.so
685 %endif
686 %{_mandir}/man8/pam_sss.8*
687 %{_mandir}/man8/sssd_krb5_locator_plugin.8*
688
689 %files tools -f sssd_tools.lang
690 %defattr(644,root,root,755)
691 %attr(755,root,root) %{_sbindir}/sss_debuglevel
692 %attr(755,root,root) %{_sbindir}/sss_groupadd
693 %attr(755,root,root) %{_sbindir}/sss_groupdel
694 %attr(755,root,root) %{_sbindir}/sss_groupmod
695 %attr(755,root,root) %{_sbindir}/sss_groupshow
696 %attr(755,root,root) %{_sbindir}/sss_obfuscate
697 %attr(755,root,root) %{_sbindir}/sss_override
698 %attr(755,root,root) %{_sbindir}/sss_seed
699 %attr(755,root,root) %{_sbindir}/sss_useradd
700 %attr(755,root,root) %{_sbindir}/sss_userdel
701 %attr(755,root,root) %{_sbindir}/sss_usermod
702 %{_mandir}/man8/sss_debuglevel.8*
703 %{_mandir}/man8/sss_groupadd.8*
704 %{_mandir}/man8/sss_groupdel.8*
705 %{_mandir}/man8/sss_groupmod.8*
706 %{_mandir}/man8/sss_groupshow.8*
707 %{_mandir}/man8/sss_obfuscate.8*
708 %{_mandir}/man8/sss_override.8*
709 %{_mandir}/man8/sss_seed.8*
710 %{_mandir}/man8/sss_useradd.8*
711 %{_mandir}/man8/sss_userdel.8*
712 %{_mandir}/man8/sss_usermod.8*
713
714 %if %{with python2}
715 %files -n python-sss
716 %defattr(644,root,root,755)
717 %attr(755,root,root) %{py_sitedir}/pysss.so
718
719 %files -n python-sss-murmur
720 %defattr(644,root,root,755)
721 %attr(755,root,root) %{py_sitedir}/pysss_murmur.so
722
723 %files -n python-sssdconfig
724 %defattr(644,root,root,755)
725 %dir %{py_sitescriptdir}/SSSDConfig
726 %{py_sitescriptdir}/SSSDConfig/*.py[co]
727 %{py_sitescriptdir}/SSSDConfig-%{version}-py*.egg-info
728 %endif
729
730 %if %{with python3}
731 %files -n python3-sss
732 %defattr(644,root,root,755)
733 %attr(755,root,root) %{py3_sitedir}/pysss.so
734
735 %files -n python3-sss-murmur
736 %defattr(644,root,root,755)
737 %attr(755,root,root) %{py3_sitedir}/pysss_murmur.so
738
739 %files -n python3-sssdconfig
740 %defattr(644,root,root,755)
741 %dir %{py3_sitescriptdir}/SSSDConfig
742 %{py3_sitescriptdir}/SSSDConfig/*.py
743 %{py3_sitescriptdir}/SSSDConfig/__pycache__
744 %{py3_sitescriptdir}/SSSDConfig-%{version}-py*.egg-info
745 %endif
746
747 %files libwbclient
748 %defattr(644,root,root,755)
749 %attr(755,root,root) %{_libdir}/sssd/modules/libwbclient.so.*
750
751 %files libwbclient-devel
752 %defattr(644,root,root,755)
753 %attr(755,root,root) %{_libdir}/sssd/modules/libwbclient.so
754 %{_includedir}/wbclient_sssd.h
755 %{_pkgconfigdir}/wbclient_sssd.pc
756
757 %files -n libipa_hbac
758 %defattr(644,root,root,755)
759 %attr(755,root,root) %{_libdir}/libipa_hbac.so.*.*.*
760 %attr(755,root,root) %ghost %{_libdir}/libipa_hbac.so.0
761
762 %files -n libipa_hbac-devel
763 %defattr(644,root,root,755)
764 %attr(755,root,root) %{_libdir}/libipa_hbac.so
765 %{_includedir}/ipa_hbac.h
766 %{_pkgconfigdir}/ipa_hbac.pc
767
768 %if %{with python2}
769 %files -n python-libipa_hbac
770 %defattr(644,root,root,755)
771 %attr(755,root,root) %{py_sitedir}/pyhbac.so
772 %endif
773
774 %if %{with python3}
775 %files -n python3-libipa_hbac
776 %defattr(644,root,root,755)
777 %attr(755,root,root) %{py3_sitedir}/pyhbac.so
778 %endif
779
780 %files -n libsss_idmap
781 %defattr(644,root,root,755)
782 %attr(755,root,root) %{_libdir}/libsss_idmap.so.*.*.*
783 %attr(755,root,root) %ghost %{_libdir}/libsss_idmap.so.0
784
785 %files -n libsss_idmap-devel
786 %defattr(644,root,root,755)
787 %attr(755,root,root) %{_libdir}/libsss_idmap.so
788 %{_includedir}/sss_idmap.h
789 %{_pkgconfigdir}/sss_idmap.pc
790
791 %files -n libsss_nss_idmap
792 %defattr(644,root,root,755)
793 %attr(755,root,root) %{_libdir}/libsss_nss_idmap.so.*.*.*
794 %attr(755,root,root) %ghost %{_libdir}/libsss_nss_idmap.so.0
795
796 %files -n libsss_nss_idmap-devel
797 %defattr(644,root,root,755)
798 %attr(755,root,root) %{_libdir}/libsss_nss_idmap.so
799 %{_includedir}/sss_nss_idmap.h
800 %{_pkgconfigdir}/sss_nss_idmap.pc
801
802 %if %{with python2}
803 %files -n python-libsss_nss_idmap
804 %defattr(644,root,root,755)
805 %attr(755,root,root) %{py_sitedir}/pysss_nss_idmap.so
806 %endif
807
808 %if %{with python3}
809 %files -n python3-libsss_nss_idmap
810 %defattr(644,root,root,755)
811 %attr(755,root,root) %{py3_sitedir}/pysss_nss_idmap.so
812 %endif
813
814 %files -n libsss_simpleifp
815 %defattr(644,root,root,755)
816 %attr(755,root,root) %{_libdir}/libsss_simpleifp.so.*.*.*
817 %attr(755,root,root) %ghost %{_libdir}/libsss_simpleifp.so.0
818
819 %files -n libsss_simpleifp-devel
820 %defattr(644,root,root,755)
821 %attr(755,root,root) %{_libdir}/libsss_simpleifp.so
822 %{_includedir}/sss_sifp.h
823 %{_includedir}/sss_sifp_dbus.h
824 %{_pkgconfigdir}/sss_simpleifp.pc
This page took 0.223865 seconds and 2 git commands to generate.