diff --git a/.gitignore b/.gitignore index 968e2fb..2d636a2 100644 --- a/.gitignore +++ b/.gitignore @@ -1,8 +1,3 @@ -/zulucrypt-064e9db3a81f0c3e2030eabc1931914461c7a829.tar.gz /zulucrypt-gui.policy /zulumount-gui.policy -/zulucrypt-5.0.1.tar.gz -/zulucrypt-5.0.2.tar.gz -/zulucrypt-5.1.0.tar.gz -/zulucrypt-5.2.0.tar.gz -/zulucrypt-5.4.0.tar.gz +/zulucrypt-*.tar.gz diff --git a/sources b/sources index ac9802c..1b7262d 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (zulucrypt-5.4.0.tar.gz) = 0d7f2dffa0f801be0b844cbdead5afb1ab9af7c89262daa5f90f52c26c7e66056ee1aaa0ba4681b2e43847e563f45d5c15916d21e5d6a80901ab238fd2cb0f4b +SHA512 (zulucrypt-7.1.1.tar.gz) = 4531e6f9ccafc18341d65fcc9b0fd185ccd9f8c21ffe5eee9048efd045ce2233352f477f1c7fd97775931cfd636e0284a897ba79272b14bd27eec7464a39b5a2 diff --git a/zulucrypt.spec b/zulucrypt.spec index d2c8981..8bccf44 100644 --- a/zulucrypt.spec +++ b/zulucrypt.spec @@ -1,58 +1,53 @@ -# -# Spec file for package zuluCrypt -# -# Copyright © 2011-2015 Francis Banyikwa -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see . - +%bcond_without use_qt6 %bcond_with bundle_lxqtwallet %bcond_without bundle_tcplay - %global srcname zuluCrypt -%global srcurl https://github.com/mhogomchungu/%{srcname} Name: zulucrypt -Version: 5.4.0 +Version: 7.1.1 Release: 1%{?dist} Summary: Qt GUI front end to cryptsetup -# major license is GPLv3+ (but GPLv2+ for some source files) -# BSD for lxqt_wallet and tcplay (both bundled) -# Public Domain for bundled md5-openssl -License: GPLv3+ and GPLv2+ and BSD and Public Domain -URL: https://mhogomchungu.github.io/%{srcname} -Source0: %{srcurl}/archive/%{version}/%{name}-%{version}.tar.gz +# More details available in the copyright file in the source tarball. +# Major license is GPLv2+ (but GPLv3+ for some files) +# BSD for zuluwallet and dependencies lxqt_wallet and tcplay (at least tcplay is always bundled) +# CRC32 for a file in tcplay +# generic-xts for a part of tcplay +License: GPL-3.0-or-later AND GPL-2.0-or-later AND BSD-2-clause AND BSD-3-clause AND generic-xts AND LicenseRef-Fedora-UltraPermissive +URL: https://mhogomchungu.github.io/zuluCrypt +Source0: https://github.com/mhogomchungu/zuluCrypt/archive/%{version}/%{name}-%{version}.tar.gz -# polkit policy stolen from debian, https://github.com/marciosouza20/zulucrypt +# polkit policy stolen from Debian, https://github.com/marciosouza20/zulucrypt Source10: zulucrypt-gui.policy Source11: zulumount-gui.policy - BuildRequires: gcc gcc-c++ BuildRequires: kf5-rpm-macros + +# These are only needed for building the lxqt-wallet bundled library +%if %{with bundle_lxqtwallet} BuildRequires: cmake(KF5Wallet) BuildRequires: cmake(KF5Notifications) +%endif +%if %{with use_qt6} +BuildRequires: pkgconfig(Qt6Core) +BuildRequires: pkgconfig(Qt6Gui) +BuildRequires: pkgconfig(Qt6Network) +BuildRequires: pkgconfig(Qt6Widgets) +%else BuildRequires: pkgconfig(Qt5Core) BuildRequires: pkgconfig(Qt5Gui) BuildRequires: pkgconfig(Qt5Network) BuildRequires: pkgconfig(Qt5Widgets) +%endif BuildRequires: pkgconfig(libsecret-1) BuildRequires: pkgconfig(devmapper) BuildRequires: pkgconfig(blkid) +BuildRequires: pkgconfig(uuid) +BuildRequires: pkgconfig(ossp-uuid) BuildRequires: pkgconfig(pwquality) BuildRequires: pkgconfig(libcryptsetup) @@ -60,17 +55,19 @@ BuildRequires: libgcrypt-devel BuildRequires: desktop-file-utils -# upstream: 'extended my "personal" copy of the library in incompatible ways' +# upstream: 'extended the "personal" copy of the library in incompatible ways' %if %{with bundle_tcplay} Provides: bundled(tcplay) = 2.0 %else #BuildRequires: tcplay-devel >= 2.0 %endif +# NB: LXQT version 4.0.0 is only built with QT6 %if %{with bundle_lxqtwallet} -Provides: bundled(lxqt-wallet) = 2.0.0 +# Version 6.2.0 bundles lxqt-wallet 3.2.2 +Provides: bundled(lxqt-wallet) = 3.2.0 %else -BuildRequires: pkgconfig(lxqt-wallet) >= 2.0.0 +BuildRequires: pkgconfig(lxqt-wallet) >= 4.0.0 %endif Requires: %{name}-libs%{?_isa} = %{version}-%{release} @@ -86,15 +83,11 @@ Requires: shared-mime-info Suggests: ecryptfs-simple %endif - %description -zuluCrypt is a front end to cryptsetup. -It makes it easier to use cryptsetup by providing -a Qt-based GUI and a simpler to use CLI frontend -to cryptsetup. -It does the same thing truecrypt does but without -licensing problems or requiring a user to setup -sudo for it or presenting root's password. +zuluCrypt is a front end to cryptsetup. It makes it easier to use cryptsetup +by providing a Qt-based GUI and a simpler to use CLI frontend to cryptsetup. +It does the same thing truecrypt does but without licensing problems or +requiring a user to setup sudo for it or presenting root's password. This package contains the applications. %package console @@ -102,18 +95,17 @@ Summary: Console tools of %{name} Requires: %{name}-libs%{?_isa} = %{version}-%{release} %description console -This package contains the console (CLI) frontends of -zuluCrypt. Those got split into an own subpackage to -provide possible independence from Qt as some minimum. +This package contains the console (CLI) frontends of zuluCrypt. Those got +split into an own subpackage to provide possible independence from Qt as some +minimum. %package libs Summary: Library for %{name} %description libs -This package contains libraries that provide higher -level access to cryptsetup API and provide -mounting/unmounting API to easy opening and closing -of volume. +This package contains libraries that provide higher level access to +cryptsetup API and provide mounting/unmounting API to easy opening and +closing of volume. %package devel Summary: Development files for %{name} @@ -130,17 +122,16 @@ BuildArch: noarch %description doc %{summary}. -########################################################################################### %prep -%autosetup -n%{srcname}-%{version} +%autosetup -n %{srcname}-%{version} -p1 -# documentation later with %%doc +# Documentation later with %%doc mv 'ABOUT ME' AUTHORS sed -i /docs/d CMakeLists.txt -# drop rpath, https://fedoraproject.org/wiki/Packaging:Guidelines#Beware_of_Rpath +# Drop rpath, https://fedoraproject.org/wiki/Packaging:Guidelines#Beware_of_Rpath # better use CMAKE_SKIP_INSTALL_RPATH=ON, https://fedorahosted.org/fpc/ticket/641 #find . -name CMakeLists.txt |xargs sed -i /INSTALL_RPATH/d -# handle zuluSafe as a GUI application, binary needs Qt +# Handle zuluSafe as a GUI application, binary needs Qt sed -i -r 's:(zuluSafe)-cli:\1:g' CMakeLists.txt zuluSafe/CMakeLists.txt zuluSafe-cli.1 mv zuluSafe-cli.1 zuluSafe.1 @@ -154,67 +145,44 @@ rm -rf external_libraries/tc-play %build -mkdir -p %{_target_platform} -pushd %{_target_platform} %{cmake_kf5} \ -DCMAKE_INSTALL_DOCDIR=%{_docdir}/%{name} \ -DCMAKE_SKIP_INSTALL_RPATH=ON \ -DREUSEMOUNTPOINT=false \ -DUDEVSUPPORT=true \ -DNOGUI=false \ +%if %{with use_qt6} + -DBUILD_WITH_QT6=true \ +%else -DQT5=true \ +%endif -DHOMEMOUNTPREFIX=false \ -DNOGNOME=false \ -DNOKDE=false \ -DUSE_POLKIT=true \ - .. -popd -%make_build -C %{_target_platform} - + %{nil} +%cmake_build %install -%make_install -C %{_target_platform} +%cmake_install %find_lang %{name} --with-qt --all-name %if 0%{?rhel} -# explicitly create folders in epel, install does not know target option +# Explicitly create folders in epel, install does not know target option #mkdir -p %{buildroot}%{_datadir}/polkit-1/actions %endif install -p -m0644 -t %{buildroot}%{_datadir}/polkit-1/actions -D %{SOURCE10} %{SOURCE11} - %check desktop-file-validate %{buildroot}%{_datadir}/applications/zulu*.desktop +%ldconfig_scriptlets libs -########################################################################################### -%post -/usr/bin/update-desktop-database &> /dev/null || : -/bin/touch --no-create %{_datadir}/icons/hicolor &>/dev/null ||: ; - -%postun -/usr/bin/update-desktop-database &> /dev/null || : -if [ $1 -eq 0 ] ; then - /bin/touch --no-create %{_datadir}/icons/hicolor &>/dev/null ; - /usr/bin/gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null ||: ; -fi - -%posttrans -/usr/bin/gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null ||: ; - -# rpmlint does not like -p option for a subpackage -%post libs -/sbin/ldconfig - -%postun libs -/sbin/ldconfig - -########################################################################################### %files -f %{name}.lang %{_bindir}/zuluCrypt-gui %{_bindir}/zuluMount-gui %{_bindir}/zuluPolkit %{_bindir}/zuluSafe -# specific GUI plugins stored to libdir, need Qt +# Specific GUI plugins stored to libdir, need Qt %{_libdir}/%{srcname}/ %{_datadir}/applications/zulu*.desktop %{_datadir}/icons/hicolor/*/apps/zulu*.png @@ -247,10 +215,110 @@ fi %files doc %license COPYING GPLv* LICENSE %doc docs/*.pdf -%doc docs/README docs/*.jpg images/*.jpeg +%doc docs/README docs/*.jpg -########################################################################################### %changelog +* Sun Aug 02 2026 Filipe Rosset - 7.1.1-1 +- Update to 7.1.1 +- Resolves: rhbz#2480347 +- Resolves: rhbz#2505401 + +* Fri Jul 17 2026 Fedora Release Engineering - 7.1.0-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_45_Mass_Rebuild + +* Sat Jan 17 2026 Fedora Release Engineering - 7.1.0-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild + +* Fri Jul 25 2025 Fedora Release Engineering - 7.1.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild + +* Sun Jan 19 2025 Fedora Release Engineering - 7.1.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild + +* Tue Dec 10 2024 Ian McInerney - 7.1.0-1 +- Update to upstream 7.1.0 (fixes rhbz#2330000, rhbz#2331292) +- Update license string with final SPDX expression + +* Wed Nov 06 2024 Ian McInerney - 7.0.0-2 +- Switch to QT6 for new lxqt-wallet version 4.0.0 update +- Spec file cleanup + +* Sun Sep 01 2024 Ian McInerney - 7.0.0-1 +- Update to upstream 7.0.0 (fixes rhbz#2307507) +- License audit and update to SPDX license expressions (fixes rhbz#2118200) + +* Sat Jul 20 2024 Fedora Release Engineering - 6.2.0-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild + +* Sat Jan 27 2024 Fedora Release Engineering - 6.2.0-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Sat Jul 22 2023 Fedora Release Engineering - 6.2.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild + +* Sat Jan 21 2023 Fedora Release Engineering - 6.2.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild + +* Sun Aug 14 2022 Ian McInerney - 6.2.0-1 +- Update to version 6.2.0 (fixes rhbz#2088941) + +* Sat Jul 23 2022 Fedora Release Engineering - 6.0.0-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild + +* Sat Jan 22 2022 Fedora Release Engineering - 6.0.0-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + +* Fri Jul 23 2021 Fedora Release Engineering - 6.0.0-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + +* Mon Apr 12 2021 Ian McInerney - 6.0.0-3 +- Rebuild due to lxqt-wallet soname bump (fixes rhbz#1948408) + +* Tue Mar 30 2021 Ian McInerney - 6.0.0-2 +- Bump minimum version of lxqt-wallet required and bundled + +* Wed Feb 24 2021 Fabian Affolter - 6.0.0-1 +- Update to latest upstream release 6.0.0 (#1922201) + +* Thu Jan 28 2021 Fedora Release Engineering - 5.7.1-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + +* Wed Jul 29 2020 Fedora Release Engineering - 5.7.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Tue Feb 04 2020 Fabian Affolter - 5.7.1-1 +- Update to latest upstream release 5.7.1 (rhbz#1798062) + +* Fri Jan 31 2020 Fedora Release Engineering - 5.7.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + +* Mon Nov 18 2019 Fabian Affolter - 5.7.0-1 +- Update to latest upstream release 5.7.0 + +* Fri Sep 13 2019 Raphael Groner - 5.6.0-1 +- new version + +* Sat Jul 27 2019 Fedora Release Engineering - 5.5.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + +* Tue May 07 2019 Raphael Groner - 5.5.0-1 +- new version + +* Tue May 07 2019 Raphael Groner - 5.4.0-6 +- add explicit BR: pkgconfig(uuid) as needed with util-linux 2.34 + +* Sun Feb 03 2019 Fedora Release Engineering - 5.4.0-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + +* Sat Jul 14 2018 Fedora Release Engineering - 5.4.0-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + +* Fri Feb 09 2018 Fedora Release Engineering - 5.4.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + +* Tue Jan 30 2018 Igor Gnatenko - 5.4.0-2 +- Remove obsolete scriptlets + * Tue Jan 09 2018 Raphael Groner - 5.4.0-1 - new version - add support for mime