eec0cc
%{!?python_sitearch: %global python_sitearch %(%{__python} -c "from distutils.sysconfig import get_python_lib; print get_python_lib(1)")}
eec0cc
eec0cc
Summary: An utility for manipulating storage encryption keys and passphrases
eec0cc
Name: volume_key
eec0cc
Version: 0.3.9
1f1adc
Release: 9%{?dist}
1f1adc
# License fix: lib/{SECerrs,SSLerrs}.h are both licensed under MPLv1.1, GPLv2 and LGPLv2
1f1adc
License: GPLv2 and (MPLv1.1 or GPLv2 or LGPLv2)
eec0cc
Group: Applications/System
1f1adc
URL: https://pagure.io/%{name}/
eec0cc
Requires: volume_key-libs%{?_isa} = %{version}-%{release}
eec0cc
1f1adc
Source0: https://releases.pagure.org/%{name}/%{name}-%{version}.tar.xz
eec0cc
# Upstream commit 04991fe8c4f77c4e5c7874c2db8ca32fb4655f6e
eec0cc
Patch1: volume_key-0.3.9-fips-crash.patch
c2945a
Patch2: volume_key-0.3.9-translation-updates.patch
82e1f8
# Upstream commit 8f8698aba19b501f01285e9eec5c18231fc6bcea
82e1f8
Patch3: volume_key-0.3.9-config.h.patch
1f1adc
# Upstream commit ecef526a51c5a276681472fd6df239570c9ce518
1f1adc
Patch4: volume_key-0.3.9-dont-use-crypt_get_error.patch
1f1adc
# Upstream commit 23a1ff087a11ceefdfd709b151bfd4f3b75b0dc8
1f1adc
Patch5: volume_key-0.3.9-fix-confusing-error-message-on-missing-private-key.patch
eec0cc
BuildRequires: cryptsetup-luks-devel, gettext-devel, glib2-devel, /usr/bin/gpg
eec0cc
BuildRequires: gpgme-devel, libblkid-devel, nss-devel, python-devel
eec0cc
eec0cc
%description
eec0cc
This package provides a command-line tool for manipulating storage volume
eec0cc
encryption keys and storing them separately from volumes.
eec0cc
eec0cc
The main goal of the software is to allow restoring access to an encrypted
eec0cc
hard drive if the primary user forgets the passphrase.  The encryption key
eec0cc
back up can also be useful for extracting data after a hardware or software
eec0cc
failure that corrupts the header of the encrypted volume, or to access the
eec0cc
company data after an employee leaves abruptly.
eec0cc
eec0cc
%package devel
eec0cc
Summary: A library for manipulating storage encryption keys and passphrases
eec0cc
Group: Development/Libraries
eec0cc
Requires: volume_key-libs%{?_isa} = %{version}-%{release}
eec0cc
eec0cc
%description devel
eec0cc
This package provides libvolume_key, a library for manipulating storage volume
eec0cc
encryption keys and storing them separately from volumes.
eec0cc
eec0cc
The main goal of the software is to allow restoring access to an encrypted
eec0cc
hard drive if the primary user forgets the passphrase.  The encryption key
eec0cc
back up can also be useful for extracting data after a hardware or software
eec0cc
failure that corrupts the header of the encrypted volume, or to access the
eec0cc
company data after an employee leaves abruptly.
eec0cc
eec0cc
%package libs
eec0cc
Summary: A library for manipulating storage encryption keys and passphrases
eec0cc
Group: System Environment/Libraries
eec0cc
Requires: /usr/bin/gpg
eec0cc
eec0cc
%description libs
eec0cc
This package provides libvolume_key, a library for manipulating storage volume
eec0cc
encryption keys and storing them separately from volumes.
eec0cc
eec0cc
The main goal of the software is to allow restoring access to an encrypted
eec0cc
hard drive if the primary user forgets the passphrase.  The encryption key
eec0cc
back up can also be useful for extracting data after a hardware or software
eec0cc
failure that corrupts the header of the encrypted volume, or to access the
eec0cc
company data after an employee leaves abruptly.
eec0cc
eec0cc
%package -n python-volume_key
eec0cc
Summary: Python bindings for libvolume_key
eec0cc
Group: System Environment/Libraries
eec0cc
Requires: volume_key-libs%{?_isa} = %{version}-%{release}
eec0cc
eec0cc
%description -n python-volume_key
eec0cc
This package provides Python bindings for libvolume_key, a library for
eec0cc
manipulating storage volume encryption keys and storing them separately from
eec0cc
volumes.
eec0cc
eec0cc
The main goal of the software is to allow restoring access to an encrypted
eec0cc
hard drive if the primary user forgets the passphrase.  The encryption key
eec0cc
back up can also be useful for extracting data after a hardware or software
eec0cc
failure that corrupts the header of the encrypted volume, or to access the
eec0cc
company data after an employee leaves abruptly.
eec0cc
eec0cc
volume_key currently supports only the LUKS volume encryption format.  Support
eec0cc
for other formats is possible, some formats are planned for future releases.
eec0cc
eec0cc
%prep
eec0cc
%setup -q
eec0cc
eec0cc
%patch1 -p1 -b .fips-crash
c2945a
%patch2 -p2 -b .translation-updates
82e1f8
%patch3 -p1 -b .config.h
1f1adc
%patch4 -p1 -b .no-crypt_get_error
1f1adc
%patch5 -p1 -b .error-message
c2945a
# The patch touches both .pot and .po files, make sure the .pot file is older
c2945a
# to avoid po/Makefile running (msgmerge --update); otherwise the set of
c2945a
# (msgemrge --update)'d files changes from build to build, depending on precise
c2945a
# timing, and causes multilib differences.
c2945a
touch -d '-1 minute' po/volume_key.pot
eec0cc
eec0cc
%build
eec0cc
%configure
eec0cc
make %{?_smp_mflags}
eec0cc
eec0cc
%install
eec0cc
make install DESTDIR=$RPM_BUILD_ROOT INSTALL='install -p'
eec0cc
eec0cc
%find_lang volume_key
eec0cc
eec0cc
%clean
eec0cc
rm -rf $RPM_BUILD_ROOT
eec0cc
eec0cc
%post libs -p /sbin/ldconfig
eec0cc
%postun libs -p /sbin/ldconfig
eec0cc
eec0cc
%files
eec0cc
%defattr(-,root,root,-)
eec0cc
%doc README contrib
eec0cc
%{_bindir}/volume_key
eec0cc
%{_mandir}/man8/volume_key.8*
eec0cc
eec0cc
%files devel
eec0cc
%defattr(-,root,root,-)
eec0cc
%{_includedir}/volume_key
eec0cc
%exclude %{_libdir}/libvolume_key.la
eec0cc
%{_libdir}/libvolume_key.so
eec0cc
eec0cc
%files libs -f volume_key.lang
eec0cc
%defattr(-,root,root,-)
eec0cc
%doc AUTHORS COPYING ChangeLog NEWS
eec0cc
%{_libdir}/libvolume_key.so.*
eec0cc
eec0cc
%files -n python-volume_key
eec0cc
%defattr(-,root,root,-)
eec0cc
%exclude %{python_sitearch}/_volume_key.la
eec0cc
%{python_sitearch}/_volume_key.so
eec0cc
%{python_sitearch}/volume_key.py*
eec0cc
eec0cc
%changelog
1f1adc
* Tue Mar 19 2019 Jiri Kucera <jkucera@redhat.com> - 0.3.9-9
1f1adc
- Backport ecef526 (Stop using crypt_get_error)
1f1adc
  Backport 23a1ff0 (Fix nonsensical error messages on missing keys)
1f1adc
  Fix License, URL and Source0 tags
1f1adc
  Resolves: #1502399, #1574988, #1593855, #1454358
1f1adc
82e1f8
* Mon Oct 09 2017 skisela@redhat.com - 0.3.9-8
82e1f8
- Don't #include <config.h> in libvolume_key.h
82e1f8
  Resolves: #1498783
82e1f8
c2945a
* Fri Jan 24 2014 Daniel Mach <dmach@redhat.com> - 0.3.9-7
c2945a
- Mass rebuild 2014-01-24
c2945a
c2945a
* Fri Dec 27 2013 Daniel Mach <dmach@redhat.com> - 0.3.9-6
c2945a
- Mass rebuild 2013-12-27
c2945a
c2945a
* Mon Dec  2 2013 Miloslav Trmač <mitr@redhat.com> - 0.3.9-5
c2945a
- Avoid multilib confilicts introduced by applying the previous patch
c2945a
  Related: #1030387
c2945a
c2945a
* Fri Nov 29 2013 Miloslav Trmač <mitr@redhat.com> - 0.3.9-4
c2945a
- Include updated translations
c2945a
  Resolves: #1030387
c2945a
eec0cc
* Fri Feb 15 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.3.9-3
eec0cc
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
eec0cc
eec0cc
* Thu Nov 22 2012 Miloslav Trmač <mitr@redhat.com> - 0.3.9-2
eec0cc
- Fix a crash when trying to use passphrase encryption in FIPS mode
eec0cc
eec0cc
* Sat Sep 22 2012 Miloslav Trmač <mitr@redhat.com> - 0.3.9-1
eec0cc
- Update to volume_key-0.3.9
eec0cc
eec0cc
* Mon Aug  6 2012 Miloslav Trmač <mitr@redhat.com> - 0.3.8-4
eec0cc
- Use BuildRequires: /usr/bin/gpg instead of gnupg, for compatibility with RHEL
eec0cc
eec0cc
* Mon Jul 23 2012 Miloslav Trmač <mitr@redhat.com> - 0.3.8-3
eec0cc
- Add Requires: /usr/bin/gpg
eec0cc
  Resolves: #842074
eec0cc
eec0cc
* Sun Jul 22 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.3.8-2
eec0cc
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
eec0cc
eec0cc
* Sat Mar  3 2012 Miloslav Trmač <mitr@redhat.com> - 0.3.8-1
eec0cc
- Update to volume_key-0.3.8
eec0cc
eec0cc
* Sat Jan 14 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.3.7-3
eec0cc
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
eec0cc
eec0cc
* Fri Oct 14 2011 Miloslav Trmač <mitr@redhat.com> - 0.3.7-2
eec0cc
- Rebuild with newer libcryptsetup
eec0cc
eec0cc
* Wed Aug 24 2011 Miloslav Trmač <mitr@redhat.com> - 0.3.7-1
eec0cc
- Update to volume_key-0.3.7
eec0cc
eec0cc
* Fri Jun 10 2011 Miloslav Trmač <mitr@redhat.com> - 0.3.6-2
eec0cc
- Fix a typo
eec0cc
  Resolves: #712256
eec0cc
eec0cc
* Thu Mar 31 2011 Miloslav Trmač <mitr@redhat.com> - 0.3.6-1
eec0cc
- Update to volume_key-0.3.6
eec0cc
eec0cc
* Mon Feb 07 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.3.5-3
eec0cc
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
eec0cc
eec0cc
* Fri Feb  4 2011 Miloslav Trmač <mitr@redhat.com> - 0.3.5-2
eec0cc
- Use %%{?_isa} in Requires:
eec0cc
eec0cc
* Wed Nov 24 2010 Miloslav Trmač <mitr@redhat.com> - 0.3.5-1
eec0cc
- Update to volume_key-0.3.5
eec0cc
eec0cc
* Mon Oct 18 2010 Miloslav Trmač <mitr@redhat.com> - 0.3.4-4
eec0cc
- Tell the user if asking for the same passphrase again
eec0cc
  Resolves: #641111
eec0cc
- Check certificate file before interacting with the user
eec0cc
  Resolves: #643897
eec0cc
eec0cc
* Fri Oct  8 2010 Miloslav Trmač <mitr@redhat.com> - 0.3.4-3
eec0cc
- Make it possible to interrupt password prompts
eec0cc
  Resolves: #641111
eec0cc
eec0cc
* Wed Sep 29 2010 Miloslav Trmač <mitr@redhat.com> - 0.3.4-2
eec0cc
- Clarify which block device should be passed as an argument
eec0cc
  Resolves: #636541
eec0cc
- Recognize SSL error messages from NSS as well
eec0cc
  Resolves: #638732
eec0cc
eec0cc
* Fri Aug 27 2010 Miloslav Trmač <mitr@redhat.com> - 0.3.4-1
eec0cc
- Update to volume_key-0.3.4
eec0cc
eec0cc
* Mon Jul 26 2010 Miloslav Trmač <mitr@redhat.com> - 0.3.3-4
eec0cc
- Rebuilt for https://fedoraproject.org/wiki/Features/Python_2.7/MassRebuild
eec0cc
eec0cc
* Thu Jul 22 2010 Miloslav Trmač <mitr@redhat.com> - 0.3.3-3
eec0cc
- Fix build with new gpgme
eec0cc
eec0cc
* Thu Jul 22 2010 David Malcolm <dmalcolm@redhat.com> - 0.3.3-2
eec0cc
- Rebuilt for https://fedoraproject.org/wiki/Features/Python_2.7/MassRebuild
eec0cc
eec0cc
* Fri Mar 26 2010 Miloslav Trmač <mitr@redhat.com> - 0.3.3-1
eec0cc
- Update to volume_key-0.3.3
eec0cc
eec0cc
* Thu Mar  4 2010 Miloslav Trmač <mitr@redhat.com> - 0.3.2-1
eec0cc
- Update to volume_key-0.3.2
eec0cc
- Drop no longer necessary references to BuildRoot:
eec0cc
eec0cc
* Fri Feb  5 2010 Miloslav Trmač <mitr@redhat.com> - 0.3.1-2
eec0cc
- Fix a crash when an empty passphrase is provided
eec0cc
  Resolves: #558410
eec0cc
eec0cc
* Fri Dec 11 2009 Miloslav Trmač <mitr@redhat.com> - 0.3.1-1
eec0cc
- Update to volume_key-0.3.1.
eec0cc
eec0cc
* Wed Sep 30 2009 Miloslav Trmač <mitr@redhat.com> - 0.3-1
eec0cc
- Update to volume_key-0.3.
eec0cc
- Drop bundled libcryptsetup.
eec0cc
eec0cc
* Sat Aug  8 2009 Miloslav Trmač <mitr@redhat.com> - 0.2-3
eec0cc
- Handle changed "TYPE=crypto_LUKS" from libblkid
eec0cc
- Preserve file timestamps during installation
eec0cc
eec0cc
* Sun Jul 26 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.2-2
eec0cc
- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
eec0cc
eec0cc
* Tue Jun 30 2009 Miloslav Trmač <mitr@redhat.com> - 0.2-1
eec0cc
- Initial build.