diff --git a/.fmf/version b/.fmf/version new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/.fmf/version @@ -0,0 +1 @@ +1 diff --git a/.gitignore b/.gitignore index f13d419..f9433f0 100644 --- a/.gitignore +++ b/.gitignore @@ -8,3 +8,16 @@ fprintd-0.1-04fd09cfa.tar.bz2 /fprintd-0.8.0.tar.xz /fprintd-0.8.1.tar.xz /fprintd-0.9.0.tar.xz +/fprintd-1.90.1.tar.xz +/fprintd-v1.90.4.tar.gz +/fprintd-v1.90.5.tar.gz +/fprintd-v1.90.6.tar.gz +/fprintd-v1.90.7.tar.gz +/fprintd-v1.90.8.tar.gz +/fprintd-v1.90.9.tar.gz +/fprintd-v1.92.0.tar.gz +/fprintd-v1.94.0.tar.gz +/fprintd-v1.94.1.tar.gz +/fprintd-v1.94.2.tar.gz +/fprintd-v1.94.4.tar.gz +/fprintd-v1.94.5.tar.gz diff --git a/0001-pam-Fix-rhost-string-length-check.patch b/0001-pam-Fix-rhost-string-length-check.patch deleted file mode 100644 index b349bad..0000000 --- a/0001-pam-Fix-rhost-string-length-check.patch +++ /dev/null @@ -1,25 +0,0 @@ -From 96444b4156cbc5d0364ac45a7b3288ae28dfbb58 Mon Sep 17 00:00:00 2001 -From: Benjamin Berg -Date: Tue, 13 Aug 2019 14:16:11 +0200 -Subject: [PATCH] pam: Fix rhost string length check - ---- - pam/pam_fprintd.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/pam/pam_fprintd.c b/pam/pam_fprintd.c -index 408b74c..b2eee4d 100644 ---- a/pam/pam_fprintd.c -+++ b/pam/pam_fprintd.c -@@ -481,7 +481,7 @@ PAM_EXTERN int pam_sm_authenticate(pam_handle_t *pamh, int flags, int argc, - * "localhost" if the host is local. - * We want to not run for known remote hosts */ - if (rhost != NULL && -- rhost != '\0' && -+ *rhost != '\0' && - strcmp (rhost, "localhost") != 0) { - return PAM_AUTHINFO_UNAVAIL; - } --- -2.21.0 - diff --git a/fprintd.spec b/fprintd.spec index aa1c675..183fadb 100644 --- a/fprintd.spec +++ b/fprintd.spec @@ -1,24 +1,28 @@ Name: fprintd -Version: 0.9.0 -Release: 2%{?dist} +Version: 1.94.5 +Release: %autorelease Summary: D-Bus service for Fingerprint reader access -License: GPLv2+ -Source0: https://gitlab.freedesktop.org/libfprint/fprintd/uploads/bdd9f91909f535368b7c21f72311704a/%{name}-%{version}.tar.xz +# man page is GFDL-1.1-or-later +License: GPL-2.0-or-later AND GFDL-1.1-or-later +Source0: https://gitlab.freedesktop.org/libfprint/fprintd/-/archive/v%{version}/fprintd-v%{version}.tar.gz Url: http://www.freedesktop.org/wiki/Software/fprint/fprintd -ExcludeArch: s390 s390x -BuildRequires: dbus-glib-devel +BuildRequires: meson +BuildRequires: gcc +BuildRequires: gcc-c++ +BuildRequires: git BuildRequires: pam-devel -BuildRequires: libfprint-devel >= 0.1.0 +BuildRequires: libfprint-devel >= 1.94.0 BuildRequires: polkit-devel BuildRequires: gtk-doc -BuildRequires: intltool -BuildRequires: autoconf automake libtool +BuildRequires: gettext BuildRequires: perl-podlators +BuildRequires: pkgconfig(libsystemd) BuildRequires: pkgconfig(systemd) +BuildRequires: python3-dbusmock +BuildRequires: python3-libpamtest -Patch0: 0001-pam-Fix-rhost-string-length-check.patch %description D-Bus service to access fingerprint readers. @@ -32,7 +36,7 @@ Provides: pam_fprint = %{version}-%{release} Obsoletes: pam_fprint < 0.2-3 Requires(postun): authselect >= 0.3 -License: GPLv2+ +License: GPL-2.0-or-later %description pam PAM module that uses the fprintd D-Bus service for fingerprint @@ -41,7 +45,9 @@ authentication. %package devel Summary: Development files for %{name} Requires: %{name} = %{version}-%{release} -License: GFDLv1.1+ +# dbus interfaces are GPL-2.0-or-later +# documentation is GFDL-1.1-or-later +License: GPL-2.0-or-later AND GFDL-1.1-or-later BuildArch: noarch %description devel @@ -49,20 +55,16 @@ Development documentation for fprintd, the D-Bus service for fingerprint readers access. %prep -%autosetup -p1 -n %{name}-%{version} +%autosetup -S git -n %{name}-v%{version} %build -%configure --libdir=/%{_lib}/ --enable-gtk-doc --enable-pam - -make %{?_smp_mflags} +%meson -Dgtk_doc=true -Dpam=true -Dpam_modules_dir=%{_libdir}/security +%meson_build %install -rm -rf $RPM_BUILD_ROOT -make install DESTDIR=$RPM_BUILD_ROOT +%meson_install mkdir -p $RPM_BUILD_ROOT/%{_localstatedir}/lib/fprint -rm -f $RPM_BUILD_ROOT/%{_lib}/security/pam_fprintd.{a,la,so.*} - %find_lang %{name} %postun pam @@ -76,16 +78,17 @@ fi %{_libexecdir}/fprintd # FIXME This file should be marked as config when it does something useful %{_sysconfdir}/fprintd.conf -%{_sysconfdir}/dbus-1/system.d/net.reactivated.Fprint.conf +%{_datadir}/dbus-1/system.d/net.reactivated.Fprint.conf %{_datadir}/dbus-1/system-services/net.reactivated.Fprint.service -/usr/lib/systemd/system/fprintd.service +%{_unitdir}/fprintd.service %{_datadir}/polkit-1/actions/net.reactivated.fprint.device.policy -%{_localstatedir}/lib/fprint +%attr(0700, -, -) %{_localstatedir}/lib/fprint %{_mandir}/man1/fprintd.1.gz %files pam %doc pam/README -/%{_lib}/security/pam_fprintd.so +%{_libdir}/security/pam_fprintd.so +%{_mandir}/man8/pam_fprintd.8.gz %files devel %{_datadir}/gtk-doc/ @@ -93,167 +96,4 @@ fi %{_datadir}/dbus-1/interfaces/net.reactivated.Fprint.Manager.xml %changelog -* Tue Jan 28 2020 Fedora Release Engineering - 0.9.0-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild - -* Wed Aug 14 2019 Benjamin Berg - 0.9.0-1 -+ fprintd-0.9.0-1 -- Update to 0.9.0 -- Add patch to fix length check of rhost - -* Thu Jul 25 2019 Fedora Release Engineering - 0.8.1-5 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild - -* Thu Jan 31 2019 Fedora Release Engineering - 0.8.1-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild - -* Fri Jul 20 2018 Bastien Nocera - 0.8.1-3 -+ fprintd-0.8.1-3 -- Fix missing .service file in files by installing systemd - -* Fri Jul 13 2018 Fedora Release Engineering - 0.8.1-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild - -* Fri Jun 15 2018 Bastien Nocera - 0.8.1-1 -+ fprintd-0.8.1-1 -- Update to 0.8.1 -- Fixes a possible crash on exit (#1515720) - -* Wed May 30 2018 Bastien Nocera - 0.8.0-4 -+ fprintd-0.8.0-4 -- Rebuild - -* Tue Feb 20 2018 Pavel Březina - 0.8.0-3 -+ fprintd-0.8.0-3 -- Switch from authconfig to authselect - -* Wed Feb 07 2018 Fedora Release Engineering - 0.8.0-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild - -* Wed Sep 13 2017 Bastien Nocera - 0.8.0-1 -+ fprintd-0.8.0-1 -- Update to 0.8.0 - -* Wed Aug 02 2017 Fedora Release Engineering - 0.7.0-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild - -* Wed Jul 26 2017 Fedora Release Engineering - 0.7.0-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild - -* Thu Feb 09 2017 Bastien Nocera - 0.7.0-2 -+ fprintd-0.7.0-2 -- Fix fprintd-pam being disabled after upgrade (#1398371) - -* Wed Oct 12 2016 Bastien Nocera - 0.7.0-1 -+ fprintd-0.7.0-1 -- Update to 0.7.0 - -* Thu Sep 22 2016 Bastien Nocera - 0.6.0-5 -- Fix warning when uninstalling fprintd-pam (#1203671) - -* Wed Feb 03 2016 Fedora Release Engineering - 0.6.0-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild - -* Wed Jun 17 2015 Fedora Release Engineering - 0.6.0-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild - -* Sat Feb 21 2015 Till Maas - 0.6.0-2 -- Rebuilt for Fedora 23 Change - https://fedoraproject.org/wiki/Changes/Harden_all_packages_with_position-independent_code - -* Tue Feb 03 2015 Bastien Nocera 0.6.0-1 -- Update to 0.6.0 - -* Sat Aug 16 2014 Fedora Release Engineering - 0.5.1-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild - -* Sat Jun 07 2014 Fedora Release Engineering - 0.5.1-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild - -* Sun Aug 11 2013 Bastien Nocera 0.5.1-1 -- Update to 0.5.1 - -* Sat Aug 03 2013 Fedora Release Engineering - 0.5.0-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild - -* Tue Mar 05 2013 Bastien Nocera 0.5.0-1 -- Update to 0.5.0 - -* Tue Feb 19 2013 Bastien Nocera 0.4.1-5 -- Co-own the gtk-doc directory (#604351) - -* Wed Feb 13 2013 Fedora Release Engineering - 0.4.1-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild - -* Thu Jul 19 2012 Fedora Release Engineering - 0.4.1-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild - -* Fri Jan 13 2012 Fedora Release Engineering - 0.4.1-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild - -* Thu Nov 10 2011 Bastien Nocera 0.4.1-1 -- Update to 0.4.1 - -* Tue Feb 08 2011 Fedora Release Engineering - 0.2.0-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild - -* Tue Nov 09 2010 Ray Strode 0.2.0-2 -- Don't allow pam module to ever get unmapped, since that causes - crashes in dbus-glib, gobject, etc. - -* Thu Aug 19 2010 Bastien Nocera 0.2.0-1 -- Update to 0.2.0 - -* Wed Dec 09 2009 Bastien Nocera 0.1-16.git04fd09cfa -- Remove use of g_error(), or people think that it crashes when we actually - abort() (#543194) - -* Fri Jul 24 2009 Fedora Release Engineering - 0.1-15.git04fd09cfa -- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild - -* Tue Jul 21 2009 Bastien Nocera 0.1-14.git04fd09cfa -- Merge polkit patch and fix for polkit patch - -* Tue Jul 21 2009 Bastien Nocera 0.1-13.git04fd09cfa -- Make the -devel package noarch (#507698) - -* Thu Jul 9 2009 Matthias Clasen 0.1-12.git04fd09cfa -- Fix the pam module (#510152) - -* Sat Jun 20 2009 Bastien Nocera 0.1-11.git04fd09cfa -- Remove obsolete patch - -* Tue Jun 9 2009 Matthias Clasen 0.1-10.git04fd09cfa -- Port to PolicyKit 1 - -* Thu May 07 2009 Bastien Nocera 0.1-9.git04fd09cfa -- Add /var/lib/fprint to the RPM to avoid SELinux errors (#499513) - -* Tue Apr 21 2009 Karsten Hopp 0.1-8.git04fd09cfa.1 -- Excludearch s390 s390x, as we don't have libusb1 on mainframe, we can't build - the required libfprint package - -* Tue Feb 24 2009 Fedora Release Engineering - 0.1-8.git04fd09cfa -- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild - -* Tue Jan 27 2009 - Bastien Nocera - 0.1-7.git04fd09cfa -- Add a patch to handle device disconnects - -* Mon Jan 26 2009 - Bastien Nocera - 0.1-6.git04fd09cfa -- Update to latest git, fixes some run-time warnings - -* Wed Dec 17 2008 - Bastien Nocera - 0.1-5.git43fe72a2aa -- Add patch to stop leaking a D-Bus connection on failure - -* Tue Dec 09 2008 - Bastien Nocera - 0.1-4.git43fe72a2aa -- Update D-Bus config file for recent D-Bus changes - -* Thu Dec 04 2008 - Bastien Nocera - 0.1-3.git43fe72a2aa -- Update following comments in the review - -* Sun Nov 23 2008 - Bastien Nocera - 0.1-2.gitaf42ec70f3 -- Update to current git master, and add documentation - -* Tue Nov 04 2008 - Bastien Nocera - 0.1-1 -- First package - +%autochangelog diff --git a/gating.yaml b/gating.yaml new file mode 100644 index 0000000..c8a218f --- /dev/null +++ b/gating.yaml @@ -0,0 +1,14 @@ +--- !Policy +product_versions: + - fedora-* +decision_context: bodhi_update_push_stable +subject_type: koji_build +rules: + - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.tier0.functional} +--- !Policy +product_versions: + - fedora-* +decision_context: bodhi_update_push_testing +subject_type: koji_build +rules: + - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.tier0.functional} diff --git a/plans.fmf b/plans.fmf new file mode 100644 index 0000000..c195230 --- /dev/null +++ b/plans.fmf @@ -0,0 +1,19 @@ +summary: Run all tests +discover: + how: fmf + dist-git-source: true + dist-git-merge: true +prepare: + - name: Disable installing everything from srpm + how: install + exclude: ".*" + - name: Install the main package + how: install + package: + - fprintd + - name: "%prep requires git" + how: install + package: + - git +execute: + how: tmt diff --git a/sources b/sources index b5233fe..61cac3d 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (fprintd-0.9.0.tar.xz) = c8e5ff2c8134e23c6ed83c6c96587dfbc14e4503ca13fcdfd4103b9d2c00332456fdef2e16ea11b0dfde7642ad762f219c38cc5f1a4d875c6ed1970144de9514 +SHA512 (fprintd-v1.94.5.tar.gz) = ee71d1d8cfea99fb6711bd4039011702a1f31c59a23d13423fca8be17b43b29bf7a7434e0baf598f2d4bfefd42c08f2f7e3c6ebdf371d53aa9d6b7963d4732dc diff --git a/tests/main.fmf b/tests/main.fmf new file mode 100644 index 0000000..ebe3556 --- /dev/null +++ b/tests/main.fmf @@ -0,0 +1,10 @@ +/fprintd: + summary: Run fprintd.py + test: ./run.sh ./fprintd.py + require: + - python3-gobject-base + - python3-dbus + - python3-cairo + - dbus-daemon + - python3-dbusmock + duration: 10m diff --git a/tests/run.sh b/tests/run.sh new file mode 100755 index 0000000..9a6f061 --- /dev/null +++ b/tests/run.sh @@ -0,0 +1,16 @@ +#!/usr/bin/bash +set -u + +# check if we need to install additional packages +# which is the case if we are on RHEL 8 +source /etc/os-release || exit 1 + +if [[ "$ID" = *"rhel"* ]] && [[ "$VERSION_ID" == *"8"* ]]; then + pip3 install python-dbusmock +fi + +# Switch into the tests directory +cd ../fprintd-*/tests || exit 1 + +# Run actual test +exec python3 "$@"