3 %bcond_without selinux # build without SE-Linux support
4 %bcond_with shared # build with shared libshadow
6 Summary: Shadow password file utilities for Linux
7 Summary(de): Shadow-Paßwortdatei-Dienstprogramme für Linux
8 Summary(es): Utilitarios para el archivo de contraseñas Shadow
9 Summary(fr): Fichiers utilitaires pour Shadow password pour Linux
10 Summary(pl): Narzêdzia do obs³ugi mechanizmu ukrytych hase³
11 Summary(tr): Gölge parola dosyasý araçlarý
12 Summary(pt_BR): Utilitários para o arquivo de senhas Shadow
18 Group: Applications/System
19 Source0: ftp://ftp.pld.org.pl/software/shadow/%{name}-%{version}.tar.bz2
20 # Source0-md5: 3ca79b02c0aaa82128f4c32cb68ffe4f
21 Source1: %{name}-login.defs
22 Source2: %{name}.useradd
29 Patch0: %{name}-utmpx.patch
30 Patch1: %{name}-man_and_po.patch
31 Patch5: %{name}-pld.patch
32 Patch6: %{name}-chage_expdays.patch
33 Patch7: %{name}-selinux.patch
34 Patch8: %{name}-setlocale_hack.patch
35 BuildRequires: autoconf
36 BuildRequires: automake >= 1.0
37 BuildRequires: gettext-devel >= 0.12.1
38 BuildRequires: pam-devel
39 BuildRequires: libtool
40 %{?with_selinux:BuildRequires: libselinux-devel}
41 Requires: pam >= 0.77.3
42 # to force proper coreutils version, so "groups" command exists
43 Requires: /usr/bin/groups
45 Provides: shadow-utils
47 Obsoletes: shadow-utils
49 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
52 This package includes the programs necessary to convert standard UNIX
53 password files to the shadow password format, as well as programs for
54 command-line management of the user's accounts.
55 - pwconv - converts everything to the shadow password format,
56 - pwunconv - unconverts from shadow password, generating a file in the
57 current directory called npasswd that is a standard UNIX password
59 - pwck - checks the integrity of the password and shadow files,
60 - lastlog - prints out the last login times of all users,
61 - useradd, userdel, usermod - for accounts management,
62 - groupadd, groupdel, groupmod - for group management.
64 A number of man pages are also included that relate to these
65 utilities, and shadow passwords in general.
68 Este paquete incluye los programas necesarios para convertir Archivos
69 padrón UNIX de contraseña al formato shadow.
70 - pwconv5 - convierte todo al formato de contraseñas del shadow,
71 - pwunconv - deshace la conversión de contraseñas shadow, creando un
72 archivo en el directorio corriente llamado npasswd que es el archivo
73 padrón UNIX de contraseña,
74 - pwck - chequea la integridad de la contraseña y de los archivos
76 - lastlog enseña el último momento de login de todos los usuarios.
77 Están también incluidas, en general, varias páginas de manual sobre
78 estos utilitarios y contraseñas shadow.
81 Pakiet zawiera programy do obs³ugi mechanizmu ukrytych hase³ (shadow
82 password). Znajduj± siê w nim programy do konwersji standardowego
83 pliku hase³ do wersji shadow password a tak¿e programy do zarz±dzania
84 kontami u¿ytkowników w systemie:
85 - pwconv - konwertuje do formatu shadow password
86 - pwunconv - konwertuje z shadow password do formatu standardowego
87 pliku hase³. W bie¿±cym katalogu tworzy plik npasswd bêd±cy
88 standardowym plikiem z has³ami,
89 - lastlog - wy¶wietla czas logowania u¿ytkowników,
90 - useradd, userdel, usermod - do zarz±dzania kontami u¿ytkowników,
91 - groupadd, groupdel, groupmod - do zarz±dzania grupami.
95 Programy znajduj±ce siê w tym pakiecie s± niezbêdne do prawid³owej
96 pracy systemu i podobnie jak pakiet z bibliotekami systemowymi (glibc)
97 nigdy nie powinien zostaæ odinstalowany!
100 Este pacote inclui os programas necessários para converter
101 arquivos-padrão UNIX de senha para o formato shadow.
102 - pwconv - converte tudo para o formato de senhas do shadow,
103 - pwunconv - desconverte senhas shadow, gerando um arquivo no
104 diretório corrente chamado npasswd que é o arquivo-padrão UNIX de
106 - pwck - checa a integridade da senha e dos arquivos shadow,
107 - lastlog - mostra o último momento de login de todos os usuários.
109 Várias páginas de manual estão também incluídas sobre estes
110 utilitários e senhas shadow em geral.
113 Summary: shadow - not often used programs
114 Summary(pl): shadow - programy nieczêsto u¿ywane
115 Group: Applications/System
116 Requires: %{name} = %{epoch}:%{version}-%{release}
118 Conflicts: util-linux < 2.12-10
121 Programs for shadow not often used. If you have small system you may
124 %description extras -l pl
125 Programy nieczêsto u¿ywane. W ma³ych systemach mo¿na je pomin±æ.
129 #%patch0 -p1 -I need help with this one ;-)
133 %{?with_selinux:%patch7 -p1}
144 %{?with_shared:--enable-shared --disable-static} \
150 %{?with_selinux:--with-selinux} \
151 --without-included-gettext
155 rm -rf $RPM_BUILD_ROOT
156 install -d $RPM_BUILD_ROOT%{_sysconfdir}/{default,pam.d,security,skel/tmp}
159 DESTDIR=$RPM_BUILD_ROOT
161 install %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/login.defs
162 install %{SOURCE2} $RPM_BUILD_ROOT%{_sysconfdir}/default/useradd
163 install %{SOURCE3} $RPM_BUILD_ROOT/etc/pam.d/chage
164 install %{SOURCE4} $RPM_BUILD_ROOT/etc/pam.d/shadow
165 install %{SOURCE5} $RPM_BUILD_ROOT/etc/pam.d/chsh
166 install %{SOURCE6} $RPM_BUILD_ROOT/etc/pam.d/chfn
167 install %{SOURCE7} $RPM_BUILD_ROOT/etc/pam.d/passwd
168 install %{SOURCE8} $RPM_BUILD_ROOT/etc/pam.d/useradd
170 > $RPM_BUILD_ROOT%{_sysconfdir}/shadow
171 > $RPM_BUILD_ROOT/etc/security/chfn.allow
172 > $RPM_BUILD_ROOT/etc/security/chsh.allow
174 # vigr symlink is created by make install, but in wrong dir
175 ln -sf vipw $RPM_BUILD_ROOT%{_sbindir}/vigr
177 echo '.so newgrp.1' > $RPM_BUILD_ROOT%{_mandir}/fr/man1/sg.1
178 echo '.so newgrp.1' > $RPM_BUILD_ROOT%{_mandir}/it/man1/sg.1
179 echo '.so newgrp.1' > $RPM_BUILD_ROOT%{_mandir}/ko/man1/sg.1
184 rm -rf $RPM_BUILD_ROOT
187 %{?with_shared:/sbin/ldconfig}
188 if [ ! -f /etc/shadow ]; then
192 %{?with_shared:%postun -p /sbin/ldconfig}
194 %files -f %{name}.lang
195 %defattr(644,root,root,755)
196 %doc ChangeLog NEWS TODO doc/{HOWTO,README,README.linux,README.pam,WISHLIST}
197 %attr(750,root,root) %dir %{_sysconfdir}/default
198 %attr(640,root,root) %config %verify(not md5 size mtime) %{_sysconfdir}/default/*
199 %attr(640,root,root) %config(noreplace) %verify(not md5 size mtime) /etc/pam.d/chage
200 %attr(640,root,root) %config(noreplace) %verify(not md5 size mtime) /etc/pam.d/passwd
201 %attr(640,root,root) %config(noreplace) %verify(not md5 size mtime) /etc/pam.d/shadow
202 %attr(640,root,root) %config(noreplace) %verify(not md5 size mtime) /etc/pam.d/useradd
203 %config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/login.defs
204 %attr(600,root,root) %config(noreplace) %verify(not md5 size mtime) %ghost %{_sysconfdir}/shadow
207 %{?with_shared:%attr(755,root,root) %{_libdir}/lib*.so.*.*}
208 #%attr(644,root,root) %{_libdir}/lib*.a
209 %attr(755,root,root) %{_sbindir}/chpasswd
210 %attr(755,root,root) %{_sbindir}/groupadd
211 %attr(755,root,root) %{_sbindir}/groupdel
212 %attr(755,root,root) %{_sbindir}/groupmod
213 %attr(755,root,root) %{_sbindir}/grpck
214 %attr(755,root,root) %{_sbindir}/grpconv
215 %attr(755,root,root) %{_sbindir}/grpunconv
216 %attr(755,root,root) %{_sbindir}/pwck
217 %attr(755,root,root) %{_sbindir}/pwconv
218 %attr(755,root,root) %{_sbindir}/pwunconv
219 %attr(755,root,root) %{_sbindir}/useradd
220 %attr(755,root,root) %{_sbindir}/userdel
221 %attr(755,root,root) %{_sbindir}/usermod
222 %attr(755,root,root) %{_sbindir}/vigr
223 %attr(755,root,root) %{_sbindir}/vipw
224 %attr(755,root,root) %{_bindir}/faillog
225 %attr(755,root,root) %{_bindir}/lastlog
226 %attr(4755,root,root) %{_bindir}/passwd
227 %{_mandir}/man1/passwd.1*
228 %{_mandir}/man5/faillog.5*
229 %{_mandir}/man5/login.access.5*
230 %{_mandir}/man5/login.defs.5*
231 %{_mandir}/man5/passwd.5*
232 %{_mandir}/man5/shadow.5*
233 %{_mandir}/man5/suauth.5*
234 %{_mandir}/man8/faillog.8*
235 %{_mandir}/man8/groupadd.8*
236 %{_mandir}/man8/groupdel.8*
237 %{_mandir}/man8/groupmod.8*
238 %{_mandir}/man8/grpck.8*
239 %{_mandir}/man8/grpconv.8*
240 %{_mandir}/man8/grpunconv.8*
241 %{_mandir}/man8/lastlog.8*
242 %{_mandir}/man8/pwck.8*
243 %{_mandir}/man8/pwconv.8*
244 %{_mandir}/man8/pwunconv.8*
245 %{_mandir}/man8/useradd.8*
246 %{_mandir}/man8/userdel.8*
247 %{_mandir}/man8/usermod.8*
248 %{_mandir}/man8/vigr.8*
249 %{_mandir}/man8/vipw.8*
250 %{_mandir}/man8/chpasswd.8*
252 %lang(cs) %{_mandir}/cs/man5/passwd.5*
253 %lang(cs) %{_mandir}/cs/man5/shadow.5*
255 %lang(de) %{_mandir}/de/man1/passwd.1*
257 %lang(es) %{_mandir}/es/man1/passwd.1*
259 %lang(fr) %{_mandir}/fr/man1/passwd.1*
260 %lang(fr) %{_mandir}/fr/man5/faillog.5*
261 %lang(fr) %{_mandir}/fr/man5/passwd.5*
262 %lang(fr) %{_mandir}/fr/man5/shadow.5*
263 %lang(fr) %{_mandir}/fr/man8/chpasswd.8*
264 %lang(fr) %{_mandir}/fr/man8/useradd.8*
265 %lang(fr) %{_mandir}/fr/man8/userdel.8*
266 %lang(fr) %{_mandir}/fr/man8/usermod.8*
268 %lang(hu) %{_mandir}/hu/man1/passwd.1*
270 %lang(id) %{_mandir}/id/man8/useradd.8*
272 %lang(it) %{_mandir}/it/man1/passwd.1*
273 %lang(it) %{_mandir}/it/man5/passwd.5*
274 %lang(it) %{_mandir}/it/man5/shadow.5*
275 %lang(it) %{_mandir}/it/man8/groupadd.8*
276 %lang(it) %{_mandir}/it/man8/groupdel.8*
277 %lang(it) %{_mandir}/it/man8/groupmod.8*
278 %lang(it) %{_mandir}/it/man8/grpck.8*
279 %lang(it) %{_mandir}/it/man8/grpconv.8*
280 %lang(it) %{_mandir}/it/man8/grpunconv.8*
281 %lang(it) %{_mandir}/it/man8/lastlog.8*
282 %lang(it) %{_mandir}/it/man8/pwconv.8*
283 %lang(it) %{_mandir}/it/man8/pwunconv.8*
284 %lang(it) %{_mandir}/it/man8/useradd.8*
285 %lang(it) %{_mandir}/it/man8/userdel.8*
286 %lang(it) %{_mandir}/it/man8/usermod.8*
287 %lang(it) %{_mandir}/it/man8/vigr.8*
288 %lang(it) %{_mandir}/it/man8/vipw.8*
290 %lang(ja) %{_mandir}/ja/man1/passwd.1*
291 %lang(ja) %{_mandir}/ja/man5/faillog.5*
292 %lang(ja) %{_mandir}/ja/man5/login.access.5*
293 %lang(ja) %{_mandir}/ja/man5/login.defs.5*
294 %lang(ja) %{_mandir}/ja/man5/passwd.5*
295 %lang(ja) %{_mandir}/ja/man5/shadow.5*
296 %lang(ja) %{_mandir}/ja/man5/suauth.5*
297 %lang(ja) %{_mandir}/ja/man8/faillog.8*
298 %lang(ja) %{_mandir}/ja/man8/groupadd.8*
299 %lang(ja) %{_mandir}/ja/man8/groupdel.8*
300 %lang(ja) %{_mandir}/ja/man8/groupmod.8*
301 %lang(ja) %{_mandir}/ja/man8/grpck.8*
302 %lang(ja) %{_mandir}/ja/man8/grpconv.8*
303 %lang(ja) %{_mandir}/ja/man8/grpunconv.8*
304 %lang(ja) %{_mandir}/ja/man8/lastlog.8*
305 %lang(ja) %{_mandir}/ja/man8/pwck.8*
306 %lang(ja) %{_mandir}/ja/man8/pwconv.8*
307 %lang(ja) %{_mandir}/ja/man8/pwunconv.8*
308 %lang(ja) %{_mandir}/ja/man8/useradd.8*
309 %lang(ja) %{_mandir}/ja/man8/userdel.8*
310 %lang(ja) %{_mandir}/ja/man8/usermod.8*
311 %lang(ja) %{_mandir}/ja/man8/vipw.8*
312 %lang(ja) %{_mandir}/ja/man8/vigr.8*
314 %lang(ko) %{_mandir}/ko/man5/passwd.5*
316 %lang(pl) %{_mandir}/pl/man1/passwd.1*
317 %lang(pl) %{_mandir}/pl/man5/faillog.5*
318 %lang(pl) %{_mandir}/pl/man5/login.access.5*
319 %lang(pl) %{_mandir}/pl/man5/login.defs.5*
320 %lang(pl) %{_mandir}/pl/man5/passwd.5*
321 %lang(pl) %{_mandir}/pl/man5/shadow.5*
322 %lang(pl) %{_mandir}/pl/man5/suauth.5*
323 %lang(pl) %{_mandir}/pl/man8/faillog.8*
324 %lang(pl) %{_mandir}/pl/man8/groupadd.8*
325 %lang(pl) %{_mandir}/pl/man8/groupdel.8*
326 %lang(pl) %{_mandir}/pl/man8/groupmod.8*
327 %lang(pl) %{_mandir}/pl/man8/grpck.8*
328 %lang(pl) %{_mandir}/pl/man8/grpconv.8*
329 %lang(pl) %{_mandir}/pl/man8/grpunconv.8*
330 %lang(pl) %{_mandir}/pl/man8/lastlog.8*
331 %lang(pl) %{_mandir}/pl/man8/pwck.8*
332 %lang(pl) %{_mandir}/pl/man8/pwconv.8*
333 %lang(pl) %{_mandir}/pl/man8/pwunconv.8*
334 %lang(pl) %{_mandir}/pl/man8/useradd.8*
335 %lang(pl) %{_mandir}/pl/man8/userdel.8*
336 %lang(pl) %{_mandir}/pl/man8/usermod.8*
337 %lang(pl) %{_mandir}/pl/man8/vigr.8*
338 %lang(pl) %{_mandir}/pl/man8/vipw.8*
340 %lang(pt_BR) %{_mandir}/pt_BR/man5/shadow.5*
341 %lang(pt_BR) %{_mandir}/pt_BR/man8/groupadd.8*
342 %lang(pt_BR) %{_mandir}/pt_BR/man8/groupdel.8*
343 %lang(pt_BR) %{_mandir}/pt_BR/man8/groupmod.8*
345 %lang(ru) %{_mandir}/ru/man5/passwd.5*
347 %lang(zh_CN) %{_mandir}/zh_CN/man8/chpasswd.8*
348 %lang(zh_CN) %{_mandir}/zh_CN/man8/groupadd.8*
349 %lang(zh_CN) %{_mandir}/zh_CN/man8/groupdel.8*
350 %lang(zh_CN) %{_mandir}/zh_CN/man8/groupmod.8*
351 %lang(zh_CN) %{_mandir}/zh_CN/man8/useradd.8*
352 %lang(zh_CN) %{_mandir}/zh_CN/man8/userdel.8*
353 %lang(zh_CN) %{_mandir}/zh_CN/man8/usermod.8*
355 %lang(zh_TW) %{_mandir}/zh_TW/man8/groupadd.8*
356 %lang(zh_TW) %{_mandir}/zh_TW/man8/groupdel.8*
357 %lang(zh_TW) %{_mandir}/zh_TW/man8/groupmod.8*
358 %lang(zh_TW) %{_mandir}/zh_TW/man8/useradd.8*
359 %lang(zh_TW) %{_mandir}/zh_TW/man8/userdel.8*
360 %lang(zh_TW) %{_mandir}/zh_TW/man8/usermod.8*
363 %defattr(644,root,root,755)
364 %attr(640,root,root) %config(noreplace) %verify(not md5 size mtime) /etc/pam.d/chfn
365 %attr(640,root,root) %config(noreplace) %verify(not md5 size mtime) /etc/pam.d/chsh
366 %attr(640,root,root) %config %verify(not md5 size mtime) /etc/security/*
367 %attr(755,root,root) %{_bindir}/chage
368 %attr(4755,root,root) %{_bindir}/chfn
369 %attr(4755,root,root) %{_bindir}/chsh
370 %attr(4755,root,root) %{_bindir}/expiry
371 %attr(4755,root,root) %{_bindir}/gpasswd
372 %attr(755,root,root) %{_bindir}/newgrp
373 %attr(755,root,root) %{_bindir}/sg
374 %attr(755,root,root) %{_sbindir}/mkpasswd
375 %attr(755,root,root) %{_sbindir}/newusers
377 %{_mandir}/man1/chage.1*
378 %{_mandir}/man1/chfn.1*
379 %{_mandir}/man1/chsh.1*
380 %{_mandir}/man1/expiry.1*
381 %{_mandir}/man1/gpasswd.1*
382 %{_mandir}/man1/newgrp.1*
383 %{_mandir}/man1/sg.1*
384 %{_mandir}/man8/mkpasswd.8*
385 %{_mandir}/man8/newusers.8*
387 %lang(de) %{_mandir}/de/man1/chfn.1*
388 %lang(de) %{_mandir}/de/man1/chsh.1*
390 %lang(fr) %{_mandir}/fr/man1/chage.1*
391 %lang(fr) %{_mandir}/fr/man1/chsh.1*
392 %lang(fr) %{_mandir}/fr/man1/gpasswd.1*
393 %lang(fr) %{_mandir}/fr/man1/newgrp.1*
394 %lang(fr) %{_mandir}/fr/man1/sg.1*
396 %lang(hu) %{_mandir}/hu/man1/chsh.1*
397 %lang(hu) %{_mandir}/hu/man1/gpasswd.1*
398 %lang(hu) %{_mandir}/hu/man1/newgrp.1*
399 %lang(hu) %{_mandir}/hu/man1/sg.1*
401 %lang(id) %{_mandir}/id/man1/chsh.1*
403 %lang(it) %{_mandir}/it/man1/chfn.1*
404 %lang(it) %{_mandir}/it/man1/chsh.1*
405 %lang(it) %{_mandir}/it/man1/gpasswd.1*
406 %lang(it) %{_mandir}/it/man1/newgrp.1*
407 %lang(it) %{_mandir}/it/man1/sg.1*
409 %lang(ja) %{_mandir}/ja/man1/chage.1*
410 %lang(ja) %{_mandir}/ja/man1/chfn.1*
411 %lang(ja) %{_mandir}/ja/man1/chsh.1*
412 %lang(ja) %{_mandir}/ja/man1/expiry.1*
413 %lang(ja) %{_mandir}/ja/man1/gpasswd.1*
414 %lang(ja) %{_mandir}/ja/man1/newgrp.1*
415 %lang(ja) %{_mandir}/ja/man1/sg.1*
416 %lang(ja) %{_mandir}/ja/man8/chpasswd.8*
417 %lang(ja) %{_mandir}/ja/man8/mkpasswd.8*
418 %lang(ja) %{_mandir}/ja/man8/newusers.8*
420 %lang(ko) %{_mandir}/ko/man1/chfn.1*
421 %lang(ko) %{_mandir}/ko/man1/chsh.1*
422 %lang(ko) %{_mandir}/ko/man1/newgrp.1*
423 %lang(ko) %{_mandir}/ko/man1/sg.1*
425 %lang(pl) %{_mandir}/pl/man1/chage.1*
426 %lang(pl) %{_mandir}/pl/man1/chfn.1*
427 %lang(pl) %{_mandir}/pl/man1/chsh.1*
428 %lang(pl) %{_mandir}/pl/man1/expiry.1*
429 %lang(pl) %{_mandir}/pl/man1/gpasswd.1*
430 %lang(pl) %{_mandir}/pl/man1/newgrp.1*
431 %lang(pl) %{_mandir}/pl/man1/sg.1*
432 %lang(pl) %{_mandir}/pl/man8/chpasswd.8*
433 %lang(pl) %{_mandir}/pl/man8/mkpasswd.8*
434 %lang(pl) %{_mandir}/pl/man8/newusers.8*
436 %lang(pt_BR) %{_mandir}/pt_BR/man1/gpasswd.1*
438 %lang(zh_CN) %{_mandir}/zh_CN/man1/chfn.1*
439 %lang(zh_CN) %{_mandir}/zh_CN/man1/chsh.1*
441 %lang(zh_TW) %{_mandir}/zh_TW/man1/chfn.1*
442 %lang(zh_TW) %{_mandir}/zh_TW/man1/chsh.1*
445 # - /bin/login already in login (from util-linux.spec)
446 #%attr(755,root,root) %{_bindir}/login
447 #%{_mandir}/man1/login.1*
448 #%{_mandir}/man5/porttime.5*
449 #%lang(hu) %{_mandir}/hu/man1/login.1*
450 #%lang(id) %{_mandir}/id/man1/login.1*
451 #%lang(it) %{_mandir}/it/man1/login.1*
452 #%lang(ja) %{_mandir}/ja/man1/login.1*
453 #%lang(ja) %{_mandir}/ja/man5/porttime.5*
454 #%lang(ko) %{_mandir}/ko/man1/login.1*
455 #%lang(pl) %{_mandir}/pl/man1/login.1*
456 #%lang(pl) %{_mandir}/pl/man5/porttime.5*
458 # - /bin/su already in coreutils
459 #%attr(4755,root,root) %{_bindir}/su
460 #%{_mandir}/man1/su.1*
461 #%lang(ja) %{_mandir}/ja/man1/su.1*
462 #%lang(pl) %{_mandir}/pl/man1/su.1*
464 # - unknown reason (removed w/o comment in rev 1.27)
465 #%attr(755,root,root) %{_sbindir}/logoutd
466 #%{_mandir}/man8/logoutd.8*
467 #%lang(ja) %{_mandir}/ja/man8/logoutd.8*
468 #%lang(pl) %{_mandir}/pl/man8/logoutd.8*