pam-config/pam-config.spec

102 lines
2.9 KiB
RPMSpec
Raw Normal View History

#
# spec file for package pam-config
#
# Copyright (c) 2011 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
# norootforbuild
Name: pam-config
Summary: Modify common PAM configuration files
Version: 0.79
Release: 1
License: GPLv2
AutoReqProv: on
PreReq: pam >= 0.99
Requires: pam-modules >= 10.2
Group: System/Management
Source: %{name}-%{version}.tar.bz2
Patch0: pam_systemd.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%description
pam-config is a command line utility to maintain the common PAM
configuration files included by most PAM application configuration
files. It can be used to configure a system for different network or
hardware based authentication schemes. pam-config can also
add/adjust/remove other PAM modules and their options.
%prep
%setup -q
%patch0 -p1
%build
#needed by patch0
autoreconf
%configure
make %{?jobs:-j%jobs};
%install
make install DESTDIR=$RPM_BUILD_ROOT
mkdir -p $RPM_BUILD_ROOT/%{_sysconfdir}/pam.d
for i in account auth password session ; do
touch $RPM_BUILD_ROOT/%{_sysconfdir}/pam.d/common-$i-pc
done
%{find_lang} pam-config
%clean
rm -rf $RPM_BUILD_ROOT
%post
if [ ! -f /etc/pam.d/common-auth-pc ] ; then
pam-config --debug --initialize
else
pam-config --debug --update ||:
fi
%postun
if [ $1 == 0 ]; then
# Deinstall
dir=/etc/security
for conf in pam_unix2.conf pam_pwcheck.conf ; do
if [ -f $dir/$conf.pam-config-backup -a ! -f $dir/$conf ]; then
mv -v $dir/$conf.pam-config-backup $dir/$conf
fi
done
dir=/etc/pam.d
for pamd in common-account common-auth common-password common-session ; do
if [ -f $dir/$pamd.pam-config-backup -a -L $dir/$pamd ]; then
rm -v $dir/$pamd && mv -v $dir/$pamd.pam-config-backup $dir/$pamd
fi
# common-*-pc are %ghost, so we have to move them away...
if [ -f $dir/$pamd-pc ]; then
mv -v $dir/$pamd-pc $dir/$pamd-pc.bak
fi
done
fi
%files -f pam-config.lang
%defattr(-,root,root)
%{_sbindir}/pam-config
%doc %{_mandir}/man8/pam-config.8*
%ghost %config %{_sysconfdir}/pam.d/common-account-pc
%ghost %config %{_sysconfdir}/pam.d/common-auth-pc
%ghost %config %{_sysconfdir}/pam.d/common-password-pc
%ghost %config %{_sysconfdir}/pam.d/common-session-pc
%changelog