1 # Simplified version of RPM spec for Fedora
3 Summary: Utility for setting up encrypted disks
7 License: GPLv2+ and LGPLv2+
8 URL: https://gitlab.com/cryptsetup/cryptsetup
9 BuildRequires: autoconf, automake, libtool, gettext-devel,
10 BuildRequires: openssl-devel, popt-devel, device-mapper-devel
11 BuildRequires: libuuid-devel, gcc, json-c-devel, libargon2-devel
12 BuildRequires: libpwquality-devel, libblkid-devel
13 BuildRequires: make libssh-devel
14 BuildRequires: asciidoctor
15 Requires: cryptsetup-libs = %{version}-%{release}
16 Requires: libpwquality >= 1.2.0
17 Obsoletes: %{name}-reencrypt <= %{version}
18 Provides: %{name}-reencrypt = %{version}
20 %global upstream_version %{version_no_tilde}
21 Source0: https://www.kernel.org/pub/linux/utils/cryptsetup/v2.5/cryptsetup-%{upstream_version}.tar.xz
24 The cryptsetup package contains a utility for setting up
25 disk encryption using dm-crypt kernel module.
28 Requires: %{name}-libs%{?_isa} = %{version}-%{release}
30 Summary: Headers and libraries for using encrypted file systems
33 The cryptsetup-devel package contains libraries and header files
34 used for writing code that makes use of disk encryption.
37 Summary: Cryptsetup shared library
40 This package contains the cryptsetup shared library, libcryptsetup.
43 Summary: Cryptsetup LUKS2 SSH token
44 Requires: cryptsetup-libs = %{version}-%{release}
46 %description ssh-token
47 This package contains the LUKS2 SSH token.
49 %package -n veritysetup
50 Summary: A utility for setting up dm-verity volumes
51 Requires: cryptsetup-libs = %{version}-%{release}
53 %description -n veritysetup
54 The veritysetup package contains a utility for setting up
55 disk verification using dm-verity kernel module.
57 %package -n integritysetup
58 Summary: A utility for setting up dm-integrity volumes
59 Requires: cryptsetup-libs = %{version}-%{release}
61 %description -n integritysetup
62 The integritysetup package contains a utility for setting up
63 disk integrity protection using dm-integrity kernel module.
66 %autosetup -n cryptsetup-%{upstream_version} -p 1
69 # force regeneration of manual pages from AsciiDoc
73 %configure --enable-fips --enable-pwquality --enable-libargon2 --enable-asciidoc
78 rm -rf %{buildroot}%{_libdir}/*.la
79 rm -rf %{buildroot}%{_libdir}/%{name}/*.la
83 %ldconfig_scriptlets -n cryptsetup-libs
87 %doc AUTHORS FAQ.md docs/*ReleaseNotes
88 %{_mandir}/man8/cryptsetup.8.gz
89 %{_mandir}/man8/cryptsetup-*.8.gz
90 %{_sbindir}/cryptsetup
94 %{_mandir}/man8/veritysetup.8.gz
95 %{_sbindir}/veritysetup
97 %files -n integritysetup
99 %{_mandir}/man8/integritysetup.8.gz
100 %{_sbindir}/integritysetup
104 %{_includedir}/libcryptsetup.h
105 %{_libdir}/libcryptsetup.so
106 %{_libdir}/pkgconfig/libcryptsetup.pc
108 %files libs -f cryptsetup.lang
109 %license COPYING COPYING.LGPL
110 %{_libdir}/libcryptsetup.so.*
111 %dir %{_libdir}/%{name}/
112 %{_tmpfilesdir}/cryptsetup.conf
113 %ghost %attr(700, -, -) %dir /run/cryptsetup
116 %license COPYING COPYING.LGPL
117 %{_libdir}/%{name}/libcryptsetup-token-ssh.so
118 %{_mandir}/man8/cryptsetup-ssh.8.gz
119 %{_sbindir}/cryptsetup-ssh