18a2ceb
Summary:         Utility to access BitLocker encrypted volumes
18a2ceb
Name:            dislocker
816998b
Version:         0.7.3
f73d4c6
Release:         3%{?dist}
18a2ceb
License:         GPLv2+
18a2ceb
URL:             https://github.com/Aorimn/dislocker
916525a
Source0:         https://github.com/Aorimn/dislocker/archive/v%{version}/%{name}-%{version}.tar.gz
ce480cf
# ruby header redefines "true"
e576b8b
# https://github.com/Aorimn/dislocker/pull/236
ce480cf
Patch0:          dislocker-0.7.3-duplicate-variable-name.patch
18a2ceb
Requires:        %{name}-libs%{?_isa} = %{version}-%{release}
b4adcad
Requires:        ruby(release)
b4adcad
Requires:        ruby(runtime_executable)
18a2ceb
Requires(post):  %{_sbindir}/update-alternatives
18a2ceb
Requires(preun): %{_sbindir}/update-alternatives
18a2ceb
Provides:        %{_bindir}/%{name}
b4adcad
BuildRequires:   gcc
b4adcad
BuildRequires:   cmake
b4adcad
%if 0%{?rhel} && 0%{?rhel} < 8
b4adcad
BuildRequires:   cmake3
b4adcad
%endif
b4adcad
BuildRequires:   mbedtls-devel
b4adcad
BuildRequires:   ruby-devel
b4adcad
BuildRequires:   %{_bindir}/ruby
a2bc85d
a2bc85d
%description
a2bc85d
Dislocker has been designed to read BitLocker encrypted partitions ("drives")
2fe123b
under a Linux system. The driver has the capability to read/write partitions
2fe123b
encrypted using Microsoft Windows Vista, 7, 8, 8.1 and 10 (AES-CBC, AES-XTS,
2fe123b
128 or 256 bits, with or without the Elephant diffuser, encrypted partitions);
2fe123b
BitLocker-To-Go encrypted partitions (USB/FAT32 partitions).
a2bc85d
a2bc85d
The file name where the BitLocker encrypted partition will be decrypted needs
a2bc85d
to be given. This may take a long time, depending on the size of the encrypted
a2bc85d
partition. But afterward, once the partition is decrypted, the access to the
a2bc85d
NTFS partition will be faster than with FUSE. Another thing to think about is
a2bc85d
the size of the disk (same size as the volume that is tried to be decrypted).
a2bc85d
Nevertheless, once the partition is decrypted, the file can be mounted as any
18a2ceb
NTFS partition and won't have any link to the original BitLocker partition.
18a2ceb
18a2ceb
%package libs
18a2ceb
Summary:         Libraries for applications using dislocker
18a2ceb
18a2ceb
%description libs
18a2ceb
The dislocker-libs package provides the essential shared libraries for any
18a2ceb
dislocker client program or interface.
a2bc85d
a2bc85d
%package -n fuse-dislocker
18a2ceb
Summary:         FUSE filesystem to access BitLocker encrypted volumes
18a2ceb
Provides:        %{_bindir}/%{name}
18a2ceb
Provides:        dislocker-fuse = %{version}-%{release}
18a2ceb
Provides:        dislocker-fuse%{?_isa} = %{version}-%{release}
18a2ceb
Requires:        %{name}-libs%{?_isa} = %{version}-%{release}
18a2ceb
Requires(post):  %{_sbindir}/update-alternatives
18a2ceb
Requires(preun): %{_sbindir}/update-alternatives
18a2ceb
BuildRequires:   fuse-devel
a2bc85d
a2bc85d
%description -n fuse-dislocker
a2bc85d
Dislocker has been designed to read BitLocker encrypted partitions ("drives")
2fe123b
under a Linux system. The driver has the capability to read/write partitions
2fe123b
encrypted using Microsoft Windows Vista, 7, 8, 8.1 and 10 (AES-CBC, AES-XTS,
2fe123b
128 or 256 bits, with or without the Elephant diffuser, encrypted partitions);
2fe123b
BitLocker-To-Go encrypted partitions (USB/FAT32 partitions).
a2bc85d
18a2ceb
A mount point needs to be given to dislocker-fuse. Once keys are decrypted, a
a2bc85d
file named 'dislocker-file' appears into this provided mount point. This file
a2bc85d
is a virtual NTFS partition, it can be mounted as any NTFS partition and then
a2bc85d
reading from it or writing to it is possible.
a2bc85d
a2bc85d
%prep
a2bc85d
%setup -q
ce480cf
%patch0 -p1 -b .duplicate
a2bc85d
a2bc85d
%build
b4adcad
%if 0%{?rhel} && 0%{?rhel} < 8
b4adcad
%global cmake %cmake3
b4adcad
%global cmake_build %cmake3_build
b4adcad
%global cmake_install %cmake3_install
b4adcad
%endif
b4adcad
693a46f
%cmake -D WARN_FLAGS="-Wall -Wno-error -Wextra" .
b4adcad
%cmake_build
a2bc85d
a2bc85d
%install
b4adcad
%cmake_install
18a2ceb
693a46f
# Remove standard symlinks due to alternatives
693a46f
rm -f $RPM_BUILD_ROOT{%{_bindir}/%{name},%{_mandir}/man1/%{name}.1*}
18a2ceb
693a46f
# Clean up files for later usage in documentation
693a46f
for file in *.md; do mv -f $file ${file%.md}; done
693a46f
for file in *.txt; do mv -f $file ${file%.txt}; done
693a46f
18a2ceb
%post
18a2ceb
%{_sbindir}/update-alternatives --install %{_bindir}/%{name} %{name} %{_bindir}/%{name}-file 60
18a2ceb
18a2ceb
%preun
18a2ceb
if [ $1 = 0 ]; then
18a2ceb
  %{_sbindir}/update-alternatives --remove %{name} %{_bindir}/%{name}-file
18a2ceb
fi
18a2ceb
4eec6a5
%ldconfig_scriptlets libs
18a2ceb
18a2ceb
%post -n fuse-dislocker
18a2ceb
%{_sbindir}/update-alternatives --install %{_bindir}/%{name} %{name} %{_bindir}/%{name}-fuse 80
18a2ceb
18a2ceb
%preun -n fuse-dislocker
18a2ceb
if [ $1 = 0 ]; then
18a2ceb
  %{_sbindir}/update-alternatives --remove %{name} %{_bindir}/%{name}-fuse
18a2ceb
fi
18a2ceb
a2bc85d
%files
18a2ceb
%{_bindir}/%{name}-bek
18a2ceb
%{_bindir}/%{name}-file
fa06503
%{_bindir}/%{name}-find
18a2ceb
%{_bindir}/%{name}-metadata
693a46f
%{_mandir}/man1/%{name}-file.1*
fa06503
%{_mandir}/man1/%{name}-find.1*
a2bc85d
18a2ceb
%files libs
693a46f
%license LICENSE
693a46f
%doc CHANGELOG README
18a2ceb
%{_libdir}/libdislocker.so.*
b4adcad
# dislocker-find (ruby) fails without this symlink (#1583480)
b4adcad
%{_libdir}/libdislocker.so
18a2ceb
18a2ceb
%files -n fuse-dislocker
18a2ceb
%{_bindir}/%{name}-fuse
18a2ceb
%{_mandir}/man1/%{name}-fuse.1*
a2bc85d
a2bc85d
%changelog
f73d4c6
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 0.7.3-3
f73d4c6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
f73d4c6
ce480cf
* Thu Jan  7 2021 Mamoru TASAKA <mtasaka@fedoraproject.org> - 0.7.3-2
ce480cf
- F-34: rebuild against ruby 3.0
ce480cf
- Fix for build with ruby 3.0
ce480cf
916525a
* Sun Dec 13 2020 Robert Scheck <robert@fedoraproject.org> 0.7.3-1
916525a
- Spec file cleanup
916525a
- Upgrade to 0.7.3 (#1876804, thanks to Eshin Kunishima)
816998b
b4adcad
* Tue Aug 04 2020 Robert Scheck <robert@fedoraproject.org> 0.7.1-17
b4adcad
- Work around CMake out-of-source builds on all branches (#1863427)
b4adcad
- Add libdislocker.so symlink for dislocker-find (#1659733, #1583480)
d9d94c3
92ebf31
* Mon Jul 27 2020 Fedora Release Engineering <releng@fedoraproject.org> - 0.7.1-16
92ebf31
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
92ebf31
e98c28e
* Tue Jan 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 0.7.1-15
e98c28e
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
e98c28e
5aece14
* Sat Jan 18 2020 Mamoru TASAKA <mtasaka@fedoraproject.org> - 0.7.1-14
5aece14
- F-32: rebuild against ruby27
5aece14
fb7bec8
* Wed Jul 24 2019 Fedora Release Engineering <releng@fedoraproject.org> - 0.7.1-13
fb7bec8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
fb7bec8
c44daed
* Thu Jan 31 2019 Fedora Release Engineering <releng@fedoraproject.org> - 0.7.1-12
c44daed
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
c44daed
a1c3625
* Mon Jan 21 2019 Vít Ondruch <vondruch@redhat.com> - 0.7.1-11
a1c3625
- Rebuilt for https://fedoraproject.org/wiki/Changes/Ruby_2.6
a1c3625
e3c01cd
* Thu Sep 27 2018 Morten Stevens <mstevens@fedoraproject.org> - 0.7.1-10
e3c01cd
- Rebuilt for mbed TLS 2.13.0
e3c01cd
8ed30c8
* Thu Jul 12 2018 Fedora Release Engineering <releng@fedoraproject.org> - 0.7.1-9
8ed30c8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
8ed30c8
13c935f
* Thu May 17 2018 Robert Scheck <robert@fedoraproject.org> 0.7.1-8
13c935f
- Rebuilt for mbed TLS 2.7.3/2.9.0 (libmbedcrypto.so.2)
13c935f
0210c1a
* Mon Feb 19 2018 Robert Scheck <robert@fedoraproject.org> 0.7.1-7
0210c1a
- Rebuilt for mbed TLS 2.7.0
0210c1a
1fdd39e
* Sun Feb 18 2018 Robert Scheck <robert@fedoraproject.org> 0.7.1-6
1fdd39e
- Rebuilt for mbed TLS 2.7.0
1fdd39e
883594b
* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 0.7.1-5
883594b
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
883594b
a55b0bd
* Fri Jan 05 2018 Mamoru TASAKA <mtasaka@fedoraproject.org> - 0.7.1-4
a55b0bd
- F-28: rebuild for ruby25
a55b0bd
7cbd520
* Wed Aug 02 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.7.1-3
7cbd520
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
7cbd520
4756192
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.7.1-2
4756192
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
4756192
2fe123b
* Tue May 23 2017 Robert Scheck <robert@fedoraproject.org> 0.7.1-1
2fe123b
- Upgrade to 0.7.1
2fe123b
c06d1c6
* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.5.1-6
c06d1c6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
c06d1c6
6803ee7
* Thu Jan 12 2017 Mamoru TASAKA <mtasaka@fedoraproject.org> - 0.5.1-5
6803ee7
- F-26: rebuild for ruby24
6803ee7
b828d8d
* Wed Feb 03 2016 Fedora Release Engineering <releng@fedoraproject.org> - 0.5.1-4
b828d8d
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
b828d8d
e17a324
* Wed Jan 13 2016 Vít Ondruch <vondruch@redhat.com> - 0.5.1-3
e17a324
- Rebuilt for https://fedoraproject.org/wiki/Changes/Ruby_2.3
e17a324
fa06503
* Mon Jan 11 2016 Robert Scheck <robert@fedoraproject.org> 0.5.1-2
fa06503
- Build ruby extension and ship dislocker-find
fa06503
693a46f
* Wed Jan 06 2016 Robert Scheck <robert@fedoraproject.org> 0.5.1-1
693a46f
- Upgrade to 0.5.1
693a46f
d0abe1c
* Sat Jul 25 2015 Robert Scheck <robert@fedoraproject.org> 0.4.1-5
d0abe1c
- Rebuilt for mbed TLS 2.0.0
d0abe1c
c942233
* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.4.1-4
c942233
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
c942233
3a6d5c7
* Fri Jun 05 2015 Robert Scheck <robert@fedoraproject.org> 0.4.1-3
3a6d5c7
- Rebuilt for mbed TLS 1.3.11
3a6d5c7
a9bad0c
* Mon Jun 01 2015 Robert Scheck <robert@fedoraproject.org> 0.4.1-2
a9bad0c
- Rebuilt for mbed TLS 1.3.10
a9bad0c
18a2ceb
* Sat May 30 2015 Robert Scheck <robert@fedoraproject.org> 0.4.1-1
18a2ceb
- Upgrade to 0.4.1
18a2ceb
d220601
* Sat Aug 16 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.3.1-6.20140423git
d220601
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
d220601
ef2c986
* Mon Jul 14 2014 Robert Scheck <robert@fedoraproject.org> 0.3.1-5.20140423git
ef2c986
- Rebuild for PolarSSL 1.3.8
ef2c986
23a9d30
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.3.1-4.20140423git
23a9d30
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
23a9d30
1b4e499
* Thu May 01 2014 Robert Scheck <robert@fedoraproject.org> 0.3.1-3.20140423git
1b4e499
- Rebuild for PolarSSL 1.3.6
1b4e499
a2bc85d
* Wed Apr 23 2014 Robert Scheck <robert@fedoraproject.org> 0.3.1-2.20140423git
a2bc85d
- Upgrade to GIT 20140423 (#991689 #c15)
a2bc85d
- Added %%{?__global_ldflags} for make (#991689 #c16)
a2bc85d
a2bc85d
* Mon Nov 25 2013 Robert Scheck <robert@fedoraproject.org> 0.3.1-1.20131102git
a2bc85d
- Upgrade to GIT 20131102 (#991689 #c8)
a2bc85d
a2bc85d
* Mon Nov 25 2013 Robert Scheck <robert@fedoraproject.org> 0.2.3-2.20130131git
a2bc85d
- Changed PolarSSL patch to support PolarSSL 1.2 and 1.3 (#991689 #c5)
a2bc85d
- Added the missing Group tag on fuse-dislocker sub-package (#991689 #c5)
a2bc85d
a2bc85d
* Wed May 08 2013 Robert Scheck <robert@fedoraproject.org> 0.2.3-1.20130131git
a2bc85d
- Upgrade to GIT 20130131
a2bc85d
- Initial spec file for Fedora and Red Hat Enterprise Linux