Files
python-dfVFS/python-dfVFS.spec

132 lines
4.6 KiB
RPMSpec
Raw Normal View History

#
# spec file for package python-dfVFS
#
# Copyright (c) 2020 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
%define timestamp 20201105
%define skip_python2 1
Name: python-dfVFS
Version: 0~%{timestamp}
Release: 0
Summary: Digital Forensics Virtual File System
License: Apache-2.0
Group: Productivity/File utilities
URL: https://github.com/log2timeline/dfvfs/wiki
Source0: https://github.com/log2timeline/dfvfs/releases/download/%{timestamp}/dfvfs-%{timestamp}.tar.gz
Source99: python-dfVFS-rpmlintrc
BuildRequires: %{python_module PyYAML}
BuildRequires: %{python_module cffi}
BuildRequires: %{python_module cryptography}
BuildRequires: %{python_module dfdatetime}
BuildRequires: %{python_module dtfabric}
BuildRequires: %{python_module idna}
BuildRequires: %{python_module libbde}
BuildRequires: %{python_module libewf}
BuildRequires: %{python_module libfsapfs}
BuildRequires: %{python_module libfsext}
BuildRequires: %{python_module libfsext}
BuildRequires: %{python_module libfsntfs}
BuildRequires: %{python_module libfvde}
BuildRequires: %{python_module libfwnt}
Accepting request 791583 from home:gregfreemyer:Tools-for-forensic-boot-cd - Update to 20200211 - Added volume scanner options (#346) - fixed failing test (#425) - Added LUKS support (#418) - Added initial APFS support - Add Requires python-dtfabric - testing found not all use cases work without it - Add Requires python-fsapfs - testing found not all use cases work without it - removed the %check section - it is failing on newly added APFS support - not yet reliable - Update to 20200121 - Remove include-examples-in-packages.patch as it is included upstream. - Update to 20200117: - switch from PyCrypto to cryptography.io (Hurrah!) - test suite passes (gh#log2timeline/dfvfs#421) - add patch: include-examples-in-packages.patch - update to 20190902 - back to Python singlespec and python3 - update to v0~20171230 * add more python3 support (even though openSUSE package doesn't use it) * bug fixes * compatible with plaso 20171231 - revert effort to use Python singlespec. It's just not working smoothly. - update to v0~20170723 * worked on internal test structure - add python3 support - implement python singlespec syntax - In Requires: lines for libyal python bindings, use the python-lib* variant of the package Python singlespec automatically converts that to python2 / python3 as appropriate - remove Requres: python-protobuf. It has been replaced by a JSON solution - adopt upstream name of python{23}-tsk3 - correct Requires to have 0~ prefix - update to v0~20160918 * still pre-release and no ChangeLog available * add requires pyfwnt, pyvslvm, python-dfdatetime - update to v0~20160108 * still pre-release and no ChangeLog available * required by plaso v1.4.0 which is in feature freeze at this point - update pyvshadow requires to version v0~20160110 - add Requires: pyfsntfs - update to v0~20150708 * warning, breaks plaso prior to v1.3.0rc2 * still pre-release and no ChangeLog available - update to v0~20150408 * Plaso is the primary consumer of dfVFS, but it can be used standalone and may have other consumers in the future * Warning breaks JSON serialization in plaso and require a plaso version of 20150507 or later. - update to v0~20150303 * dfVFS is in a rapid state of development and Changelog entries have not been implemented by upstream - add Requires: pysigscan, it is a new dependency - add a new %exclude in %files due to doubly included %doc files - remove spec file entry deleting installed examples. Resolved upstream. * see https://github.com/log2timeline/dfvfs/issues/4 - chmod run_tests.py to remove the executable bits. Was causing a rmplint warning. - update to v0~20150108 * bugfix for auto-dependency build - add explicit "%py_compile ." to resolve rpmlint complaint about datestamps not matching - add the examples folder to the %doc section of %files - add run_tests.py to the %doc section of %files - upgrade to v0~20141220 * dfVFS is in a rapid state of development and Changelog entries have not been implemented by upstream - v0~20141220 required by latest plaso release - update Url field to point to the new github site - update source to be complete URL - delete DL_URL field - add an exclude for the "examples" that are provided. They need a better namespace. - add check_dependencies.py to %doc so that users can verify they have usable dependencies - add a %doc line to %files section - change the license tag to Apache-2.0 - add Requires libvmdk since it is now in OBS - add Requires libvhdi since it is now in OBS - add missing "Requires: pyqcow" line to specfile - remove %attr(755...) line and instead use sed to remove #!/usr/bin/python from *py files - cleanup Requires: in general - initial version in OBS (version 0~20140727) OBS-URL: https://build.opensuse.org/request/show/791583 OBS-URL: https://build.opensuse.org/package/show/security:forensics/python-dfVFS?expand=0&rev=34
2020-04-05 21:50:02 +00:00
BuildRequires: %{python_module libluksde}
BuildRequires: %{python_module libqcow}
BuildRequires: %{python_module libsigscan} >= 0~20191221
BuildRequires: %{python_module libsmdev}
BuildRequires: %{python_module libsmraw}
BuildRequires: %{python_module libvhdi}
BuildRequires: %{python_module libvmdk}
BuildRequires: %{python_module libvshadow}
BuildRequires: %{python_module libvslvm}
BuildRequires: %{python_module mock}
BuildRequires: %{python_module pbr}
BuildRequires: %{python_module setuptools}
BuildRequires: %{python_module tsk}
BuildRequires: fdupes
BuildRequires: python-rpm-macros
Requires: python-construct
Requires: python-dfdatetime >= 0~20180110
Requires: python-dtfabric
Requires: python-libbde
Requires: python-libewf
Accepting request 791583 from home:gregfreemyer:Tools-for-forensic-boot-cd - Update to 20200211 - Added volume scanner options (#346) - fixed failing test (#425) - Added LUKS support (#418) - Added initial APFS support - Add Requires python-dtfabric - testing found not all use cases work without it - Add Requires python-fsapfs - testing found not all use cases work without it - removed the %check section - it is failing on newly added APFS support - not yet reliable - Update to 20200121 - Remove include-examples-in-packages.patch as it is included upstream. - Update to 20200117: - switch from PyCrypto to cryptography.io (Hurrah!) - test suite passes (gh#log2timeline/dfvfs#421) - add patch: include-examples-in-packages.patch - update to 20190902 - back to Python singlespec and python3 - update to v0~20171230 * add more python3 support (even though openSUSE package doesn't use it) * bug fixes * compatible with plaso 20171231 - revert effort to use Python singlespec. It's just not working smoothly. - update to v0~20170723 * worked on internal test structure - add python3 support - implement python singlespec syntax - In Requires: lines for libyal python bindings, use the python-lib* variant of the package Python singlespec automatically converts that to python2 / python3 as appropriate - remove Requres: python-protobuf. It has been replaced by a JSON solution - adopt upstream name of python{23}-tsk3 - correct Requires to have 0~ prefix - update to v0~20160918 * still pre-release and no ChangeLog available * add requires pyfwnt, pyvslvm, python-dfdatetime - update to v0~20160108 * still pre-release and no ChangeLog available * required by plaso v1.4.0 which is in feature freeze at this point - update pyvshadow requires to version v0~20160110 - add Requires: pyfsntfs - update to v0~20150708 * warning, breaks plaso prior to v1.3.0rc2 * still pre-release and no ChangeLog available - update to v0~20150408 * Plaso is the primary consumer of dfVFS, but it can be used standalone and may have other consumers in the future * Warning breaks JSON serialization in plaso and require a plaso version of 20150507 or later. - update to v0~20150303 * dfVFS is in a rapid state of development and Changelog entries have not been implemented by upstream - add Requires: pysigscan, it is a new dependency - add a new %exclude in %files due to doubly included %doc files - remove spec file entry deleting installed examples. Resolved upstream. * see https://github.com/log2timeline/dfvfs/issues/4 - chmod run_tests.py to remove the executable bits. Was causing a rmplint warning. - update to v0~20150108 * bugfix for auto-dependency build - add explicit "%py_compile ." to resolve rpmlint complaint about datestamps not matching - add the examples folder to the %doc section of %files - add run_tests.py to the %doc section of %files - upgrade to v0~20141220 * dfVFS is in a rapid state of development and Changelog entries have not been implemented by upstream - v0~20141220 required by latest plaso release - update Url field to point to the new github site - update source to be complete URL - delete DL_URL field - add an exclude for the "examples" that are provided. They need a better namespace. - add check_dependencies.py to %doc so that users can verify they have usable dependencies - add a %doc line to %files section - change the license tag to Apache-2.0 - add Requires libvmdk since it is now in OBS - add Requires libvhdi since it is now in OBS - add missing "Requires: pyqcow" line to specfile - remove %attr(755...) line and instead use sed to remove #!/usr/bin/python from *py files - cleanup Requires: in general - initial version in OBS (version 0~20140727) OBS-URL: https://build.opensuse.org/request/show/791583 OBS-URL: https://build.opensuse.org/package/show/security:forensics/python-dfVFS?expand=0&rev=34
2020-04-05 21:50:02 +00:00
Requires: python-libfsapfs
Requires: python-libfsext
Requires: python-libfshfs
Requires: python-libfsntfs >= 0~20160418
Requires: python-libfvde
Requires: python-libfwnt
Requires: python-libluksde
Requires: python-libqcow
Requires: python-libsigscan
Requires: python-libsmdev
Requires: python-libsmraw
Requires: python-libvhdi
Requires: python-libvmdk
Requires: python-libvshadow >= 0~20170902
Requires: python-libvslvm
Requires: python-six
Requires: python-tsk >= 0~20160721
BuildArch: noarch
%python_subpackages
%description
dfVFS, or Digital Forensics Virtual File System, provides read-only
access to file-system objects from various storage media types and file
formats. The goal of dfVFS is to provide a generic interface for
accessing file-system objects, for which it uses several back-ends that
provide the actual implementation of the various storage media types,
volume systems and file systems.
dfVFS originates from the Plaso project and is also based on ideas from
the GRR project. It was largely rewritten and made into a stand-alone
project to provide more flexibility and allow other projects to make use
of the VFS functionality. dfVFS originally was named PyVFS, but that
name conflicted with another project.
dfVFS is currently implemented as a Python module.
%prep
%setup -q -n dfvfs-%{timestamp}
%autopatch -p1
find dfvfs -name \*.py | xargs sed -i "/#!\/usr\/bin\/python/d"
chmod -x utils/check_dependencies.py
chmod -x run_tests.py
%build
%python_build
%install
%python_install
%fdupes %{buildroot}%{$python_sitelib}
%check
Accepting request 791583 from home:gregfreemyer:Tools-for-forensic-boot-cd - Update to 20200211 - Added volume scanner options (#346) - fixed failing test (#425) - Added LUKS support (#418) - Added initial APFS support - Add Requires python-dtfabric - testing found not all use cases work without it - Add Requires python-fsapfs - testing found not all use cases work without it - removed the %check section - it is failing on newly added APFS support - not yet reliable - Update to 20200121 - Remove include-examples-in-packages.patch as it is included upstream. - Update to 20200117: - switch from PyCrypto to cryptography.io (Hurrah!) - test suite passes (gh#log2timeline/dfvfs#421) - add patch: include-examples-in-packages.patch - update to 20190902 - back to Python singlespec and python3 - update to v0~20171230 * add more python3 support (even though openSUSE package doesn't use it) * bug fixes * compatible with plaso 20171231 - revert effort to use Python singlespec. It's just not working smoothly. - update to v0~20170723 * worked on internal test structure - add python3 support - implement python singlespec syntax - In Requires: lines for libyal python bindings, use the python-lib* variant of the package Python singlespec automatically converts that to python2 / python3 as appropriate - remove Requres: python-protobuf. It has been replaced by a JSON solution - adopt upstream name of python{23}-tsk3 - correct Requires to have 0~ prefix - update to v0~20160918 * still pre-release and no ChangeLog available * add requires pyfwnt, pyvslvm, python-dfdatetime - update to v0~20160108 * still pre-release and no ChangeLog available * required by plaso v1.4.0 which is in feature freeze at this point - update pyvshadow requires to version v0~20160110 - add Requires: pyfsntfs - update to v0~20150708 * warning, breaks plaso prior to v1.3.0rc2 * still pre-release and no ChangeLog available - update to v0~20150408 * Plaso is the primary consumer of dfVFS, but it can be used standalone and may have other consumers in the future * Warning breaks JSON serialization in plaso and require a plaso version of 20150507 or later. - update to v0~20150303 * dfVFS is in a rapid state of development and Changelog entries have not been implemented by upstream - add Requires: pysigscan, it is a new dependency - add a new %exclude in %files due to doubly included %doc files - remove spec file entry deleting installed examples. Resolved upstream. * see https://github.com/log2timeline/dfvfs/issues/4 - chmod run_tests.py to remove the executable bits. Was causing a rmplint warning. - update to v0~20150108 * bugfix for auto-dependency build - add explicit "%py_compile ." to resolve rpmlint complaint about datestamps not matching - add the examples folder to the %doc section of %files - add run_tests.py to the %doc section of %files - upgrade to v0~20141220 * dfVFS is in a rapid state of development and Changelog entries have not been implemented by upstream - v0~20141220 required by latest plaso release - update Url field to point to the new github site - update source to be complete URL - delete DL_URL field - add an exclude for the "examples" that are provided. They need a better namespace. - add check_dependencies.py to %doc so that users can verify they have usable dependencies - add a %doc line to %files section - change the license tag to Apache-2.0 - add Requires libvmdk since it is now in OBS - add Requires libvhdi since it is now in OBS - add missing "Requires: pyqcow" line to specfile - remove %attr(755...) line and instead use sed to remove #!/usr/bin/python from *py files - cleanup Requires: in general - initial version in OBS (version 0~20140727) OBS-URL: https://build.opensuse.org/request/show/791583 OBS-URL: https://build.opensuse.org/package/show/security:forensics/python-dfVFS?expand=0&rev=34
2020-04-05 21:50:02 +00:00
# APFS parsing errors are being detected. Skip for now (April 5, 2020)
# %%{python_expand export PYTHONPATH=%%{buildroot}%%{$python_sitearch}
Accepting request 791583 from home:gregfreemyer:Tools-for-forensic-boot-cd - Update to 20200211 - Added volume scanner options (#346) - fixed failing test (#425) - Added LUKS support (#418) - Added initial APFS support - Add Requires python-dtfabric - testing found not all use cases work without it - Add Requires python-fsapfs - testing found not all use cases work without it - removed the %check section - it is failing on newly added APFS support - not yet reliable - Update to 20200121 - Remove include-examples-in-packages.patch as it is included upstream. - Update to 20200117: - switch from PyCrypto to cryptography.io (Hurrah!) - test suite passes (gh#log2timeline/dfvfs#421) - add patch: include-examples-in-packages.patch - update to 20190902 - back to Python singlespec and python3 - update to v0~20171230 * add more python3 support (even though openSUSE package doesn't use it) * bug fixes * compatible with plaso 20171231 - revert effort to use Python singlespec. It's just not working smoothly. - update to v0~20170723 * worked on internal test structure - add python3 support - implement python singlespec syntax - In Requires: lines for libyal python bindings, use the python-lib* variant of the package Python singlespec automatically converts that to python2 / python3 as appropriate - remove Requres: python-protobuf. It has been replaced by a JSON solution - adopt upstream name of python{23}-tsk3 - correct Requires to have 0~ prefix - update to v0~20160918 * still pre-release and no ChangeLog available * add requires pyfwnt, pyvslvm, python-dfdatetime - update to v0~20160108 * still pre-release and no ChangeLog available * required by plaso v1.4.0 which is in feature freeze at this point - update pyvshadow requires to version v0~20160110 - add Requires: pyfsntfs - update to v0~20150708 * warning, breaks plaso prior to v1.3.0rc2 * still pre-release and no ChangeLog available - update to v0~20150408 * Plaso is the primary consumer of dfVFS, but it can be used standalone and may have other consumers in the future * Warning breaks JSON serialization in plaso and require a plaso version of 20150507 or later. - update to v0~20150303 * dfVFS is in a rapid state of development and Changelog entries have not been implemented by upstream - add Requires: pysigscan, it is a new dependency - add a new %exclude in %files due to doubly included %doc files - remove spec file entry deleting installed examples. Resolved upstream. * see https://github.com/log2timeline/dfvfs/issues/4 - chmod run_tests.py to remove the executable bits. Was causing a rmplint warning. - update to v0~20150108 * bugfix for auto-dependency build - add explicit "%py_compile ." to resolve rpmlint complaint about datestamps not matching - add the examples folder to the %doc section of %files - add run_tests.py to the %doc section of %files - upgrade to v0~20141220 * dfVFS is in a rapid state of development and Changelog entries have not been implemented by upstream - v0~20141220 required by latest plaso release - update Url field to point to the new github site - update source to be complete URL - delete DL_URL field - add an exclude for the "examples" that are provided. They need a better namespace. - add check_dependencies.py to %doc so that users can verify they have usable dependencies - add a %doc line to %files section - change the license tag to Apache-2.0 - add Requires libvmdk since it is now in OBS - add Requires libvhdi since it is now in OBS - add missing "Requires: pyqcow" line to specfile - remove %attr(755...) line and instead use sed to remove #!/usr/bin/python from *py files - cleanup Requires: in general - initial version in OBS (version 0~20140727) OBS-URL: https://build.opensuse.org/request/show/791583 OBS-URL: https://build.opensuse.org/package/show/security:forensics/python-dfVFS?expand=0&rev=34
2020-04-05 21:50:02 +00:00
# $python ./run_tests.py
# }
%files %{python_files}
%license LICENSE
%doc ACKNOWLEDGEMENTS AUTHORS README
%doc utils/check_dependencies.py utils/dependencies.py
%doc examples
%{python_sitelib}/dfvfs*
# these are installed into the wrong place
%exclude %{_datadir}/doc/dfvfs/
%changelog