From cef823f52b6a3e0d5b1135c8d47e83c6954613ac Mon Sep 17 00:00:00 2001 From: Nathaniel McCallum Date: Fri, 18 Nov 2016 16:20:24 -0500 Subject: [PATCH] Initial import --- .gitignore | 1 + clevis.spec | 101 ++++++++++++++++++++++++++++++++++++++++++++++++++++ sources | 1 + 3 files changed, 103 insertions(+) create mode 100644 clevis.spec diff --git a/.gitignore b/.gitignore index e69de29..f696121 100644 --- a/.gitignore +++ b/.gitignore @@ -0,0 +1 @@ +/clevis-2.tar.bz2 diff --git a/clevis.spec b/clevis.spec new file mode 100644 index 0000000..b23bb3a --- /dev/null +++ b/clevis.spec @@ -0,0 +1,101 @@ +%global _hardened_build 1 + +Name: clevis +Version: 2 +Release: 1%{?dist} +Summary: Automated decryption framework + +License: GPLv3+ +URL: https://github.com/latchset/%{name} +Source0: https://github.com/latchset/%{name}/releases/download/v%{version}/%{name}-%{version}.tar.bz2 + +BuildRequires: libjose-openssl-devel >= 6 +BuildRequires: libjose-zlib-devel >= 6 +BuildRequires: libluksmeta-devel +BuildRequires: http-parser-devel +BuildRequires: libudisks2-devel +BuildRequires: openssl-devel + +BuildRequires: desktop-file-utils +BuildRequires: pkgconfig +BuildRequires: systemd +BuildRequires: dracut +BuildRequires: tang + +Requires: coreutils + +%description +Clevis is a framework for automated decryption. It allows you to encrypt +data using sophisticated unlocking policies which enable decryption to +occur automatically. + +The clevis package provides basic encryption/decryption policy support. +Users can use this directly; but most commonly, it will be used as a +building block for other packages. For example, see the clevis-luks +and clevis-dracut packages for automatic root volume unlocking of LUKSv1 +volumes during early boot. + +%package luks +Summary: LUKSv1 integration for clevis +Requires: %{name}%{?_isa} = %{version}-%{release} +Requires: cryptsetup +Requires: luksmeta + +%description luks +LUKSv1 integration for clevis. This package allows you to bind a LUKSv1 +volume to a clevis unlocking policy. For automated unlocking, an unlocker +will also be required. See, for example, clevis-dracut and clevis-udisks2. + +%package dracut +Summary: Dracut integration for clevis +Requires: %{name}-luks%{?_isa} = %{version}-%{release} +Requires: dracut-network +Requires: nc + +%description dracut +Automatically unlocks LUKSv1 block devices in early boot. + +%package udisks2 +Summary: UDisks2/Storaged integration for clevis +Requires: %{name}-luks%{?_isa} = %{version}-%{release} + +%description udisks2 +Automatically unlocks LUKSv1 block devices in desktop environments that +use UDisks2 or storaged (like GNOME). + +%prep +%setup -q + +%build +%configure +%make_build V=1 + +%install +%make_install + +%check +desktop-file-validate \ + %{buildroot}/%{_sysconfdir}/xdg/autostart/%{name}-luks-udisks2.desktop +%make_build check + +%files +%license COPYING +%{_bindir}/%{name} +%{_libexecdir}/%{name} + +%files luks +%{_libexecdir}/%{name}/bind-luks + +%files dracut +%{_prefix}/lib/dracut/modules.d/60%{name} + +%files udisks2 +%{_sysconfdir}/xdg/autostart/%{name}-luks-udisks2.desktop +%attr(4755, root, root) %{_libexecdir}/%{name}-luks-udisks2 + +%changelog +* Fri Nov 18 2016 Nathaniel McCallum - 2-1 +- New upstream release + +* Mon Nov 14 2016 Nathaniel McCallum - 1-1 +- First release diff --git a/sources b/sources index e69de29..190219c 100644 --- a/sources +++ b/sources @@ -0,0 +1 @@ +dd67cace4efc0a8620fe8e849f251fad clevis-2.tar.bz2