]> git.pld-linux.org Git - packages/pwdutils.git/blob - pwdutils.spec
Fix build with glibc >= 2.16
[packages/pwdutils.git] / pwdutils.spec
1 #
2 # Conditional build:
3 %bcond_without  audit           # don't build audit log plugin
4 %bcond_without  ldap            # build without LDAP support
5 %bcond_without  selinux         # build without SELinux support
6 %bcond_with     bioapi          # with BioAPI support in passwd
7 %bcond_with     gnutls          # use GnuTLS instead of OpenSSL
8 #
9 Summary:        Utilities to manage the passwd and shadow user information
10 Summary(pl.UTF-8):      Narzędzia do zarządzania informacjami o użytkownikach z passwd i shadow
11 Name:           pwdutils
12 Version:        3.2.19
13 Release:        1
14 License:        GPL v2
15 Group:          Base
16 #Source0:       ftp://ftp.kernel.org/pub/linux/utils/net/NIS/%{name}-%{version}.tar.bz2
17 Source0:        http://www.linux-nis.org/download/pwdutils/%{name}-%{version}.tar.bz2
18 # Source0-md5:  25a77a0ab376eacf24ad5eab7af4cdce
19 Source1:        %{name}.useradd
20 Source2:        %{name}.rpasswdd.init
21 Source3:        %{name}.login.defs
22 Source4:        chage.pamd
23 Source5:        chfn.pamd
24 Source6:        chsh.pamd
25 Source7:        passwd.pamd
26 Source8:        useradd.pamd
27 Source9:        userdb.pamd
28 Source10:       rpasswd.pamd
29 Patch0:         %{name}-f-option.patch
30 Patch1:         %{name}-no_bash.patch
31 Patch2:         %{name}-silent_crontab.patch
32 Patch3:         %{name}-pl.po-update.patch
33 Patch4:         %{name}-selinux.patch
34 Patch5:         %{name}-am.patch
35 Patch6:         %{name}-libc-lock.patch
36 URL:            http://www.thkukuk.de/pam/pwdutils/
37 %{?with_audit:BuildRequires:    audit-libs-devel}
38 BuildRequires:  autoconf
39 BuildRequires:  automake >= 1:1.9
40 %{?with_bioapi:BuildRequires:   bioapi-devel}
41 BuildRequires:  gcc >= 5:3.2
42 BuildRequires:  gettext-devel
43 %{?with_gnutls:BuildRequires:   gnutls-devel >= 1.0.0}
44 BuildRequires:  libnscd-devel
45 %{?with_selinux:BuildRequires:  libselinux-devel}
46 BuildRequires:  libtool
47 BuildRequires:  libxcrypt-devel
48 %{?with_ldap:BuildRequires:     openldap-devel >= 2.4.6}
49 BuildRequires:  openslp-devel
50 %{!?with_gnutls:BuildRequires:  openssl-devel >= 0.9.7d}
51 BuildRequires:  pam-devel
52 BuildRequires:  rpmbuild(macros) >= 1.268
53 BuildRequires:  sed >= 4.0
54 Requires:       pam >= 0.99.7.1
55 Provides:       shadow = 2:%{version}-%{release}
56 Provides:       shadow-extras = 2:%{version}-%{release}
57 Obsoletes:      shadow
58 Obsoletes:      shadow-extras
59 Obsoletes:      shadow-utils
60 Conflicts:      util-linux < 2.12-10
61 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
62
63 # for pam module in /%{_lib}/security
64 %define         _libdir         /%{_lib}
65
66 %description
67 pwdutils is a collection of utilities to manage the passwd and shadow
68 user information. The difference to the shadow suite is that these
69 utilities can also modify the information stored in NIS, NIS+, or
70 LDAP. PAM is used for user authentication and changing the pasword. It
71 contains passwd, chage, chfn, chsh, and a daemon for changing the
72 password on a remote machine over a secure SSL connection. The daemon
73 also uses PAM so that it can change passwords independent of where
74 they are stored.
75
76 %description -l pl.UTF-8
77 pwdutils to zestaw narzędzi do zarządzania informacjami o
78 użytkownikach z passwd i shadow. Różnica w stosunku do pakietu shadow
79 polega na tym, że te narzędzia mogą także modyfikować informacje
80 zapisane w bazie NIS, NIS+ lub LDAP. PAM jest używany do
81 uwierzytelniania użytkowników i zmiany haseł. Zestaw zawiera passwd,
82 chage, chfn, chsh oraz demona do zmiany hasła na zdalnej maszynie po
83 bezpiecznym połączeniu SSL. Demon także używa PAM, więc można zmieniać
84 hasła niezależnie od tego, gdzie są przechowywane.
85
86 %package log-audit
87 Summary:        audit log plugin for pwdutils
88 Summary(pl.UTF-8):      Wtyczka logująca audit dla pwdutils
89 Group:          Libraries
90 Requires:       %{name} = %{version}-%{release}
91
92 %description log-audit
93 audit log plugin for pwdutils.
94
95 %description log-audit -l pl.UTF-8
96 Wtyczka logująca audit dla pwdutils.
97
98 %package -n rpasswd
99 Summary:        Remote password update client
100 Summary(pl.UTF-8):      Klient do zdalnego uaktualniania haseł
101 Group:          Applications/System
102
103 %description -n rpasswd
104 rpasswd changes passwords for user accounts on a remote server over a
105 secure SSL connection. A normal user may only change the password for
106 their own account, if the user knows the password of the administrator
107 account (in the moment this is the root password on the server), he
108 may change the password for any account if he calls rpasswd with the
109 -a option.
110
111 %description -n rpasswd -l pl.UTF-8
112 rpasswd pozwala zmieniać hasła użytkowników na zdalnym serwerze przy
113 użyciu bezpiecznego połączenia SSL. Zwykły użytkownik może zmienić
114 jedynie swoje hasło, a jeśli zna hasło administratora (obecnie jest to
115 hasło roota na serwerze), może zmienić hasło dla dowolnego konta
116 wywołując rpasswd z opcją -a.
117
118 %package -n rpasswdd
119 Summary:        Remote password update daemon
120 Summary(pl.UTF-8):      Demon do zdalnego uaktualniania haseł
121 Group:          Applications/System
122 Requires(post,preun):   /sbin/chkconfig
123 Requires:       rc-scripts
124
125 %description -n rpasswdd
126 rpasswdd is a daemon that lets users change their passwords in the
127 presence of a directory service like NIS, NIS+ or LDAP over a secure
128 SSL connection. rpasswdd behaves like the normal passwd(1) program and
129 uses PAM for authentication and changing the password, so it can be
130 configured very flexible for the local requirements.
131
132 %description -n rpasswdd -l pl.UTF-8
133 rpasswdd to demon pozwalający użytkownikom zmieniać hasła w obecności
134 usług katalogowych takich jak NIS, NIS+ czy LDAP po bezpiecznym
135 połączeniu SSL. rpasswdd zachowuje się tak, jak normalny program
136 passwd(1) i używam PAM do uwierzytelniania i zmiany haseł, więc może
137 być bardzo elastycznie konfigurowany dla lokalnych wymagań.
138
139 %package -n pam-pam_rpasswd
140 Summary:        pam_rpasswd - PAM module to change remote password
141 Summary(pl.UTF-8):      pam_rpasswd - moduł PAM do zdalnej zmiany hasła
142 Group:          Base
143 # rpasswd.conf is in rpasswd
144 Requires:       rpasswd = %{version}-%{release}
145
146 %description -n pam-pam_rpasswd
147 The pam_rpasswd PAM module is for changing the password of user
148 accounts on a remote server over a secure SSL connection. It only
149 provides functionality for one PAM management group: password
150 changing.
151
152 %description -n pam-pam_rpasswd -l pl.UTF-8
153 Moduł PAM pam_rpasswd służy do zmiany haseł dla kont użytkowników na
154 zdalnym serwerze po bezpiecznym połączeniu SSL. Udostępnia
155 funkcjonalność tylko dla jednej grupy zarządzania PAM: zmiany haseł.
156
157 %prep
158 %setup -q
159 %patch0 -p1
160 %patch1 -p1
161 %patch2 -p1
162 %patch3 -p1
163 %patch4 -p1
164 %patch5 -p1
165 %patch6 -p1
166
167 %{__rm} po/stamp-po
168
169 %build
170 %{__gettextize}
171 %{__libtoolize}
172 %{__aclocal} -I m4
173 %{__autoconf}
174 %{__autoheader}
175 %{__automake}
176 %configure \
177         %{?with_bioapi:CPPFLAGS="-I/usr/include/bioapi"} \
178         %{!?with_bioapi:ac_cv_header_bioapi_h=no ac_cv_lib_bioapi100_BioAPI_Init=no} \
179         %{?with_audit:--enable-audit-plugin} \
180         %{!?with_gnutls:--disable-gnutls} \
181         --%{?with_ldap:en}%{!?with_ldap:dis}able-ldap \
182         --enable-nls \
183         --enable-pam_rpasswd \
184         --%{?with_selinux:en}%{!?with_selinux:dis}able-selinux \
185         --enable-slp \
186         --disable-rpath
187 %{__make}
188
189 %install
190 rm -rf $RPM_BUILD_ROOT
191 install -d $RPM_BUILD_ROOT/etc/{rc.d/init.d,pwdutils,security,skel/{etc,tmp}}
192
193 %{__make} install \
194         DESTDIR=$RPM_BUILD_ROOT
195
196 mv -f $RPM_BUILD_ROOT%{_sbindir}/*.local $RPM_BUILD_ROOT%{_sysconfdir}/pwdutils
197 install %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/default/useradd
198 install %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/rpasswdd
199 install %{SOURCE3} $RPM_BUILD_ROOT%{_sysconfdir}/login.defs
200
201 install %{SOURCE4} $RPM_BUILD_ROOT/etc/pam.d/chage
202 install %{SOURCE5} $RPM_BUILD_ROOT/etc/pam.d/chfn
203 install %{SOURCE6} $RPM_BUILD_ROOT/etc/pam.d/chsh
204 install %{SOURCE7} $RPM_BUILD_ROOT/etc/pam.d/passwd
205 install %{SOURCE8} $RPM_BUILD_ROOT/etc/pam.d/useradd
206 install %{SOURCE9} $RPM_BUILD_ROOT/etc/pam.d/shadow
207 install %{SOURCE10} $RPM_BUILD_ROOT/etc/pam.d/rpasswd
208
209 %{__rm} $RPM_BUILD_ROOT%{_libdir}/pwdutils/*.{la,a}
210 %{__rm} $RPM_BUILD_ROOT/%{_lib}/security/pam_*.la
211 %{__rm} $RPM_BUILD_ROOT%{_sysconfdir}/init.d/rpasswdd
212
213 :> $RPM_BUILD_ROOT%{_sysconfdir}/shadow
214 :> $RPM_BUILD_ROOT/etc/security/chfn.allow
215 :> $RPM_BUILD_ROOT/etc/security/chsh.allow
216
217 %find_lang %{name}
218
219 %clean
220 rm -rf $RPM_BUILD_ROOT
221
222 %post
223 if [ ! -f %{_sysconfdir}/shadow ]; then
224         %{_sbindir}/pwconv
225 fi
226
227 %post -n rpasswdd
228 /sbin/chkconfig --add rpasswdd
229 %service rpasswdd restart "rpasswdd daemon"
230
231 %preun -n rpasswdd
232 if [ "$1" = "0" ]; then
233         %service rpasswdd stop
234         /sbin/chkconfig --del rpasswdd
235 fi
236
237 %files -f %{name}.lang
238 %defattr(644,root,root,755)
239 %doc AUTHORS ChangeLog NEWS README THANKS TODO
240 %attr(600,root,root) %config(noreplace) %verify(not md5 mtime size) %ghost %{_sysconfdir}/shadow
241 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/default/*
242 %attr(750,root,root) %dir %{_sysconfdir}/%{name}
243 %attr(750,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/*.local
244 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/logging
245 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/pam.d/chage
246 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/pam.d/chfn
247 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/pam.d/chsh
248 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/pam.d/passwd
249 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/pam.d/useradd
250 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/pam.d/shadow
251 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/login.defs
252 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/security/chfn.allow
253 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/security/chsh.allow
254 %dir /etc/skel
255 %dir %config(missingok) %attr(750,root,root) /etc/skel/etc
256 %dir %config(missingok) %attr(700,root,root) /etc/skel/tmp
257 %attr(755,root,root) %{_bindir}/chage
258 %attr(4755,root,root) %{_bindir}/chfn
259 %attr(4755,root,root) %{_bindir}/chsh
260 %attr(4755,root,root) %{_bindir}/expiry
261 %attr(4755,root,root) %{_bindir}/gpasswd
262 %attr(4755,root,root) %{_bindir}/newgrp
263 %attr(4755,root,root) %{_bindir}/passwd
264 %attr(4755,root,root) %{_bindir}/sg
265 %attr(755,root,root) %{_sbindir}/chpasswd
266 %attr(755,root,root) %{_sbindir}/groupadd
267 %attr(755,root,root) %{_sbindir}/groupdel
268 %attr(755,root,root) %{_sbindir}/groupmod
269 %attr(755,root,root) %{_sbindir}/grpconv
270 %attr(755,root,root) %{_sbindir}/grpck
271 %attr(755,root,root) %{_sbindir}/grpunconv
272 %attr(755,root,root) %{_sbindir}/pwconv
273 %attr(755,root,root) %{_sbindir}/pwck
274 %attr(755,root,root) %{_sbindir}/pwunconv
275 %attr(755,root,root) %{_sbindir}/useradd
276 %attr(755,root,root) %{_sbindir}/userdel
277 %attr(755,root,root) %{_sbindir}/usermod
278 %attr(755,root,root) %{_sbindir}/vigr
279 %attr(755,root,root) %{_sbindir}/vipw
280 %dir %{_libdir}/pwdutils
281 %attr(755,root,root) %{_libdir}/pwdutils/liblog_syslog.so*
282 %{_mandir}/man1/chage.1*
283 %{_mandir}/man1/chfn.1*
284 %{_mandir}/man1/chsh.1*
285 %{_mandir}/man1/expiry.1*
286 %{_mandir}/man1/gpasswd.1*
287 %{_mandir}/man1/newgrp.1*
288 %{_mandir}/man1/passwd.1*
289 %{_mandir}/man1/sg.1*
290 %{_mandir}/man5/login.defs.5*
291 %{_mandir}/man8/chpasswd.8*
292 %{_mandir}/man8/groupadd.8*
293 %{_mandir}/man8/groupdel.8*
294 %{_mandir}/man8/groupmod.8*
295 %{_mandir}/man8/grpck.8*
296 %{_mandir}/man8/grpconv.8*
297 %{_mandir}/man8/grpunconv.8*
298 %{_mandir}/man8/pwck.8*
299 %{_mandir}/man8/pwconv.8*
300 %{_mandir}/man8/pwunconv.8*
301 %{_mandir}/man8/useradd.8*
302 %{_mandir}/man8/userdel.8*
303 %{_mandir}/man8/usermod.8*
304 %{_mandir}/man8/vigr.8*
305 %{_mandir}/man8/vipw.8*
306
307 %if %{with audit}
308 %files log-audit
309 %defattr(644,root,root,755)
310 %attr(755,root,root) %{_libdir}/pwdutils/liblog_audit.so*
311 %endif
312
313 %files -n rpasswd
314 %defattr(644,root,root,755)
315 %attr(755,root,root) %{_bindir}/rpasswd
316 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rpasswd.conf
317 %{_mandir}/man1/rpasswd.1*
318 %{_mandir}/man5/rpasswd.conf.5*
319
320 %files -n rpasswdd
321 %defattr(644,root,root,755)
322 %attr(755,root,root) %{_sbindir}/rpasswdd
323 %attr(754,root,root) /etc/rc.d/init.d/rpasswdd
324 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/pam.d/rpasswd
325 %{_mandir}/man8/rpasswdd.8*
326
327 %files -n pam-pam_rpasswd
328 %defattr(644,root,root,755)
329 %attr(755,root,root) /%{_lib}/security/pam_rpasswd.so
330 %{_mandir}/man8/pam_rpasswd.8*
This page took 0.067938 seconds and 4 git commands to generate.