|
|
|
|
@ -1,49 +1,31 @@
|
|
|
|
|
%if 0%{?fedora} || 0%{?rhel} > 7
|
|
|
|
|
# Enable python3 build by default
|
|
|
|
|
%bcond_without python3
|
|
|
|
|
%else
|
|
|
|
|
%bcond_with python3
|
|
|
|
|
%endif
|
|
|
|
|
|
|
|
|
|
%if 0%{?rhel} > 7 || 0%{?fedora} > 30
|
|
|
|
|
# Disable python2 build by default
|
|
|
|
|
%bcond_with python2
|
|
|
|
|
%else
|
|
|
|
|
%bcond_without python2
|
|
|
|
|
%endif
|
|
|
|
|
|
|
|
|
|
Summary: A library for password generation and password quality checking
|
|
|
|
|
Name: libpwquality
|
|
|
|
|
Version: 1.4.4
|
|
|
|
|
Release: 6%{?dist}
|
|
|
|
|
# The package is BSD licensed with option to relicense as GPLv2+
|
|
|
|
|
# - this option is redundant as the BSD license allows that anyway.
|
|
|
|
|
License: BSD or GPLv2+
|
|
|
|
|
Version: 1.4.5
|
|
|
|
|
Release: 12%{?dist}
|
|
|
|
|
URL: https://github.com/libpwquality/libpwquality/
|
|
|
|
|
Source0: https://github.com/libpwquality/libpwquality/releases/download/libpwquality-%{version}/libpwquality-%{version}.tar.bz2
|
|
|
|
|
|
|
|
|
|
Patch100: libpwquality-1.4.4-rhel8-i18n.patch
|
|
|
|
|
# Use setuptools instead of distutils
|
|
|
|
|
# This fixes the build with Python 3.12+
|
|
|
|
|
# https://bugzilla.redhat.com/2165572
|
|
|
|
|
# Upstream PR: https://github.com/libpwquality/libpwquality/pull/74
|
|
|
|
|
Patch1: setuptools.patch
|
|
|
|
|
|
|
|
|
|
# The package is BSD licensed with option to relicense as GPLv2+
|
|
|
|
|
# - this option is redundant as the BSD license allows that anyway.
|
|
|
|
|
License: BSD-3-Clause OR GPL-2.0-or-later
|
|
|
|
|
|
|
|
|
|
%global _pwqlibdir %{_libdir}
|
|
|
|
|
%global _moduledir %{_libdir}/security
|
|
|
|
|
%global _secconfdir %{_sysconfdir}/security
|
|
|
|
|
|
|
|
|
|
Requires: cracklib-dicts >= 2.8
|
|
|
|
|
Requires: pam%{?_isa}
|
|
|
|
|
Requires: cracklib
|
|
|
|
|
BuildRequires: gcc make
|
|
|
|
|
BuildRequires: cracklib-devel
|
|
|
|
|
BuildRequires: gettext
|
|
|
|
|
BuildRequires: pam-devel
|
|
|
|
|
%if %{with python2}
|
|
|
|
|
BuildRequires: python2-devel
|
|
|
|
|
%endif
|
|
|
|
|
%if %{with python3}
|
|
|
|
|
BuildRequires: python3-devel
|
|
|
|
|
%endif
|
|
|
|
|
|
|
|
|
|
URL: https://github.com/libpwquality/libpwquality/
|
|
|
|
|
|
|
|
|
|
# we don't want to provide private python extension libs
|
|
|
|
|
%define __provides_exclude_from ^(%{python_sitearch}|%{python3_sitearch})/.*\.so$.
|
|
|
|
|
BuildRequires: python3-setuptools
|
|
|
|
|
|
|
|
|
|
%description
|
|
|
|
|
This is a library for password quality checks and generation
|
|
|
|
|
@ -61,20 +43,6 @@ Files needed for development of applications using the libpwquality
|
|
|
|
|
library.
|
|
|
|
|
See the pwquality.h header file for the API.
|
|
|
|
|
|
|
|
|
|
%if %{with python2}
|
|
|
|
|
%package -n python2-pwquality
|
|
|
|
|
%{?python_provide:%python_provide python2-pwquality}
|
|
|
|
|
Summary: Python bindings for the libpwquality library
|
|
|
|
|
Requires: libpwquality%{?_isa} = %{version}-%{release}
|
|
|
|
|
|
|
|
|
|
%description -n python2-pwquality
|
|
|
|
|
This is pwquality Python module that provides Python bindings
|
|
|
|
|
for the libpwquality library. These bindings can be used
|
|
|
|
|
for easy password quality checking and generation of random
|
|
|
|
|
pronounceable passwords from Python applications.
|
|
|
|
|
%endif
|
|
|
|
|
|
|
|
|
|
%if %{with python3}
|
|
|
|
|
%package -n python3-pwquality
|
|
|
|
|
Summary: Python bindings for the libpwquality library
|
|
|
|
|
Requires: libpwquality%{?_isa} = %{version}-%{release}
|
|
|
|
|
@ -84,62 +52,25 @@ This is pwquality Python module that provides Python bindings
|
|
|
|
|
for the libpwquality library. These bindings can be used
|
|
|
|
|
for easy password quality checking and generation of random
|
|
|
|
|
pronounceable passwords from Python applications.
|
|
|
|
|
%endif
|
|
|
|
|
|
|
|
|
|
%prep
|
|
|
|
|
%setup -q
|
|
|
|
|
|
|
|
|
|
%if %{with python3} && %{with python2}
|
|
|
|
|
rm -rf %{py3dir}
|
|
|
|
|
cp -a . %{py3dir}
|
|
|
|
|
%endif
|
|
|
|
|
%patch100 -p1 -b .nodot
|
|
|
|
|
%autosetup -p1
|
|
|
|
|
|
|
|
|
|
%build
|
|
|
|
|
%if %{with python2}
|
|
|
|
|
%configure \
|
|
|
|
|
--with-securedir=%{_moduledir} \
|
|
|
|
|
--with-pythonsitedir=%{python2_sitearch} \
|
|
|
|
|
--with-python-binary=%{__python2} \
|
|
|
|
|
--disable-static
|
|
|
|
|
|
|
|
|
|
make %{?_smp_mflags}
|
|
|
|
|
%endif
|
|
|
|
|
%if %{with python3} && %{with python2}
|
|
|
|
|
pushd %{py3dir}
|
|
|
|
|
%endif
|
|
|
|
|
%if %{with python3}
|
|
|
|
|
%configure \
|
|
|
|
|
--with-securedir=%{_moduledir} \
|
|
|
|
|
--with-pythonsitedir=%{python3_sitearch} \
|
|
|
|
|
--with-python-binary=%{__python3} \
|
|
|
|
|
--disable-static
|
|
|
|
|
|
|
|
|
|
make %{?_smp_mflags}
|
|
|
|
|
%endif
|
|
|
|
|
%if %{with python3} && %{with python2}
|
|
|
|
|
popd
|
|
|
|
|
%endif
|
|
|
|
|
%make_build
|
|
|
|
|
|
|
|
|
|
%install
|
|
|
|
|
make install DESTDIR=$RPM_BUILD_ROOT INSTALL='install -p'
|
|
|
|
|
%make_install
|
|
|
|
|
|
|
|
|
|
%if %{with python3} && %{with python2}
|
|
|
|
|
pushd %{py3dir}
|
|
|
|
|
make -C python install DESTDIR=$RPM_BUILD_ROOT INSTALL='install -p'
|
|
|
|
|
popd
|
|
|
|
|
%endif
|
|
|
|
|
|
|
|
|
|
%if "%{_pwqlibdir}" != "%{_libdir}"
|
|
|
|
|
pushd $RPM_BUILD_ROOT%{_libdir}
|
|
|
|
|
mv libpwquality.so.* $RPM_BUILD_ROOT%{_pwqlibdir}
|
|
|
|
|
ln -sf %{_pwqlibdir}/libpwquality.so.*.* libpwquality.so
|
|
|
|
|
popd
|
|
|
|
|
%endif
|
|
|
|
|
rm -f $RPM_BUILD_ROOT%{_libdir}/*.la
|
|
|
|
|
rm -f $RPM_BUILD_ROOT%{_moduledir}/*.la
|
|
|
|
|
|
|
|
|
|
mkdir $RPM_BUILD_ROOT%{_secconfdir}/pwquality.conf.d
|
|
|
|
|
rm -f %{buildroot}%{_libdir}/*.la
|
|
|
|
|
rm -f %{buildroot}%{_moduledir}/*.la
|
|
|
|
|
mkdir %{buildroot}%{_secconfdir}/pwquality.conf.d
|
|
|
|
|
|
|
|
|
|
%find_lang libpwquality
|
|
|
|
|
|
|
|
|
|
@ -149,15 +80,16 @@ mkdir $RPM_BUILD_ROOT%{_secconfdir}/pwquality.conf.d
|
|
|
|
|
%ldconfig_scriptlets
|
|
|
|
|
|
|
|
|
|
%files -f libpwquality.lang
|
|
|
|
|
%{!?_licensedir:%global license %%doc}
|
|
|
|
|
%license COPYING
|
|
|
|
|
%doc README NEWS AUTHORS
|
|
|
|
|
%{_bindir}/pwmake
|
|
|
|
|
%{_bindir}/pwscore
|
|
|
|
|
%dir %{_moduledir}
|
|
|
|
|
%{_moduledir}/pam_pwquality.so
|
|
|
|
|
%{_pwqlibdir}/libpwquality.so.*
|
|
|
|
|
%{_libdir}/libpwquality.so.*
|
|
|
|
|
%dir %{_secconfdir}
|
|
|
|
|
%config(noreplace) %{_secconfdir}/pwquality.conf
|
|
|
|
|
%{_secconfdir}/pwquality.conf.d
|
|
|
|
|
%dir %{_secconfdir}/pwquality.conf.d
|
|
|
|
|
%{_mandir}/man1/*
|
|
|
|
|
%{_mandir}/man5/*
|
|
|
|
|
%{_mandir}/man8/*
|
|
|
|
|
@ -168,55 +100,105 @@ mkdir $RPM_BUILD_ROOT%{_secconfdir}/pwquality.conf.d
|
|
|
|
|
%{_libdir}/pkgconfig/*.pc
|
|
|
|
|
%{_mandir}/man3/*
|
|
|
|
|
|
|
|
|
|
%if %{with python2}
|
|
|
|
|
%files -n python2-pwquality
|
|
|
|
|
%{python2_sitearch}/pwquality.so
|
|
|
|
|
%{python2_sitearch}/*.egg-info
|
|
|
|
|
%endif
|
|
|
|
|
|
|
|
|
|
%if %{with python3}
|
|
|
|
|
%files -n python3-pwquality
|
|
|
|
|
%{python3_sitearch}/*.so
|
|
|
|
|
%{python3_sitearch}/*.egg-info
|
|
|
|
|
%endif
|
|
|
|
|
|
|
|
|
|
%changelog
|
|
|
|
|
* Tue Feb 14 2023 Dmitry Belyavskiy <dbelyavs@redhat.com> - 1.4.4-6
|
|
|
|
|
- rebuilt
|
|
|
|
|
* Tue Oct 29 2024 Troy Dawson <tdawson@redhat.com> - 1.4.5-12
|
|
|
|
|
- Bump release for October 2024 mass rebuild:
|
|
|
|
|
Resolves: RHEL-64018
|
|
|
|
|
|
|
|
|
|
* Mon Feb 13 2023 Dmitry Belyavskiy - 1.4.4-5
|
|
|
|
|
- rebuilt
|
|
|
|
|
* Tue Jul 30 2024 Veronika Hanulikova <vhanulik@redhat.com> - 1.4.5-11
|
|
|
|
|
- Add cracklib dependency (RHEL-39973)
|
|
|
|
|
|
|
|
|
|
* Tue Aug 30 2022 Dmitry Belyavskiy - 1.4.4-4
|
|
|
|
|
- Japan translation update (remove extra dot)
|
|
|
|
|
Resolves: rhbz#2122609
|
|
|
|
|
* Mon Jun 24 2024 Troy Dawson <tdawson@redhat.com> - 1.4.5-10
|
|
|
|
|
- Bump release for June 2024 mass rebuild
|
|
|
|
|
|
|
|
|
|
* Mon Feb 22 2021 Dmitry Belyavskiy <dbelyavs@redhat.com> - 1.4.4-3
|
|
|
|
|
* Thu Jan 25 2024 Fedora Release Engineering <releng@fedoraproject.org> - 1.4.5-9
|
|
|
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
|
|
|
|
|
|
|
|
|
|
* Sun Jan 21 2024 Fedora Release Engineering <releng@fedoraproject.org> - 1.4.5-8
|
|
|
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
|
|
|
|
|
|
|
|
|
|
* Fri Aug 04 2023 Dmitry Belyavskiy <dbelyavs@redhat.com> - 1.4.5-7
|
|
|
|
|
- migrated to SPDX license
|
|
|
|
|
|
|
|
|
|
* Thu Jul 20 2023 Fedora Release Engineering <releng@fedoraproject.org> - 1.4.5-6
|
|
|
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
|
|
|
|
|
|
|
|
|
|
* Tue Jun 13 2023 Python Maint <python-maint@redhat.com> - 1.4.5-5
|
|
|
|
|
- Rebuilt for Python 3.12
|
|
|
|
|
|
|
|
|
|
* Fri Mar 31 2023 Miro Hrončok <mhroncok@redhat.com> - 1.4.5-4
|
|
|
|
|
- Use setuptools instead of distutils to build this package
|
|
|
|
|
- Resolves: rhbz#2165572
|
|
|
|
|
|
|
|
|
|
* Wed Feb 01 2023 Adam Williamson <awilliam@redhat.com> - 1.4.5-3
|
|
|
|
|
- Strengthen cracklib-dicts dependency to Recommends (#2158891)
|
|
|
|
|
|
|
|
|
|
* Thu Jan 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 1.4.5-2
|
|
|
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
|
|
|
|
|
|
|
|
|
|
* Thu Dec 22 2022 Paul Wouters <paul.wouters@aiven.io - 1.4.5-1
|
|
|
|
|
- Resolves: rhbz#2154991 libpwquality fails to build with Python 3.12: ModuleNotFoundError: No module named 'distutils'
|
|
|
|
|
- Resolves: rhbz#2006063 RFE: Support running without cracklib-dicts installed
|
|
|
|
|
- Cleanup and remove python2/3 conditional macros
|
|
|
|
|
|
|
|
|
|
* Thu Jul 21 2022 Fedora Release Engineering <releng@fedoraproject.org> - 1.4.4-11
|
|
|
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
|
|
|
|
|
|
|
|
|
|
* Mon Jun 13 2022 Python Maint <python-maint@redhat.com> - 1.4.4-10
|
|
|
|
|
- Rebuilt for Python 3.11
|
|
|
|
|
|
|
|
|
|
* Fri Mar 04 2022 Karolina Surma <ksurma@redhat.com> - 1.4.4-9
|
|
|
|
|
- Don't BR setuptools, use Python's bundled distutils
|
|
|
|
|
|
|
|
|
|
* Wed Feb 16 2022 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> - 1.4.4-8
|
|
|
|
|
- Co-own security directory instead of pulling in pam (#2018913)
|
|
|
|
|
|
|
|
|
|
* Thu Jan 20 2022 Fedora Release Engineering <releng@fedoraproject.org> - 1.4.4-7
|
|
|
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
|
|
|
|
|
|
|
|
|
|
* Wed Aug 11 2021 Paul Wouters <paul.wouters@aiven.io> - 1.4.4-6
|
|
|
|
|
- Resolves: rhbz#1992607 libpwquality: regression in minimal image size because of hard dependency on cracklib-dicts
|
|
|
|
|
|
|
|
|
|
* Thu Jul 22 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1.4.4-5
|
|
|
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
|
|
|
|
|
|
|
|
|
|
* Thu Jun 03 2021 Python Maint <python-maint@redhat.com> - 1.4.4-4
|
|
|
|
|
- Rebuilt for Python 3.10
|
|
|
|
|
|
|
|
|
|
* Thu Mar 11 2021 Dmitry Belyavskiy <dbelyavs@redhat.com> - 1.4.4-3
|
|
|
|
|
- Resolves: rhbz#1919026 libpwquaily rpm requires cracklib to function but RPM missing requirement [updated]
|
|
|
|
|
|
|
|
|
|
* Wed Feb 17 2021 Dmitry Belyavskiy <dbelyavs@redhat.com> - 1.4.4-2
|
|
|
|
|
- Resolves: rhbz#1919026 libpwquaily rpm requires cracklib to function but RPM missing requirement
|
|
|
|
|
* Tue Jan 26 10:55:14 EST 2021 Paul Wouters <pwouters@redhat.com> - 1.4.4-2
|
|
|
|
|
- Resolves rhbz#1919026 libpwquaily rpm requires cracklib-dict to function but RPM missing requirement
|
|
|
|
|
|
|
|
|
|
* Tue Oct 13 2020 Tomáš Mráz <tmraz@redhat.com> 1.4.4-1
|
|
|
|
|
- Translation updates
|
|
|
|
|
- Fix regression with enabling the cracklib check during build
|
|
|
|
|
|
|
|
|
|
* Mon Oct 12 2020 Tomáš Mráz <tmraz@redhat.com> 1.4.3-1
|
|
|
|
|
- Multiple translation updates
|
|
|
|
|
- Add usersubstr check for substrings of N characters from the username
|
|
|
|
|
patch by Danny Sauer
|
|
|
|
|
|
|
|
|
|
* Mon Jul 13 2020 Tom Stellard <tstellar@redhat.com> - 1.4.2-4
|
|
|
|
|
- Use make macros
|
|
|
|
|
- https://fedoraproject.org/wiki/Changes/UseMakeBuildInstallMacro
|
|
|
|
|
|
|
|
|
|
* Thu Oct 31 2019 Tomáš Mráz <tmraz@redhat.com> 1.4.2-1
|
|
|
|
|
- Fix previous release regression in handling retry, enforce_for_root,
|
|
|
|
|
and local_users_only options
|
|
|
|
|
|
|
|
|
|
* Tue Sep 17 2019 Tomáš Mráz <tmraz@redhat.com> 1.4.1-1
|
|
|
|
|
- Disable python2 bindings in Fedora 31 and above
|
|
|
|
|
- Add conditionals for Python2 and Python3
|
|
|
|
|
- pam_pwquality: Abort the retry loop if user requests it
|
|
|
|
|
- Allow setting retry, enforce_for_root, and local_users_only options
|
|
|
|
|
in the pwquality.conf config file
|
|
|
|
|
|
|
|
|
|
* Mon Oct 22 2018 Tomáš Mráz <tmraz@redhat.com> 1.4.0-9
|
|
|
|
|
- Fix an issue found in Coverity scan
|
|
|
|
|
|
|
|
|
|
* Fri Jun 22 2018 Tomáš Mráz <tmraz@redhat.com> 1.4.0-8
|
|
|
|
|
- Properly conditionalize the python buildrequires
|
|
|
|
|
|
|
|
|
|
* Thu Mar 22 2018 Tomáš Mráz <tmraz@redhat.com> 1.4.0-7
|
|
|
|
|
- Add conditionals for Python2 and Python3
|
|
|
|
|
|
|
|
|
|
* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1.4.0-6
|
|
|
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
|
|
|
|
|
|
|
|
|
|
* Sat Feb 03 2018 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 1.4.0-5
|
|
|
|
|
- Switch to %%ldconfig_scriptlets
|
|
|
|
|
|
|
|
|
|
@ -224,12 +206,6 @@ mkdir $RPM_BUILD_ROOT%{_secconfdir}/pwquality.conf.d
|
|
|
|
|
- Python 2 binary package renamed to python2-pwquality
|
|
|
|
|
See https://fedoraproject.org/wiki/FinalizingFedoraSwitchtoPython3
|
|
|
|
|
|
|
|
|
|
* Thu Aug 03 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.4.0-3
|
|
|
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
|
|
|
|
|
|
|
|
|
|
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.4.0-2
|
|
|
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
|
|
|
|
|
|
|
|
|
|
* Fri May 26 2017 Tomáš Mráz <tmraz@redhat.com> 1.4.0-1
|
|
|
|
|
- Do not try to check presence of too short username in password
|
|
|
|
|
- Make the user name check optional (via usercheck option)
|