From 3713e9484c27d85b60eddac1e65fd6219b3eb6c0 Mon Sep 17 00:00:00 2001 From: Mike Auty Date: Sat, 1 Sep 2018 22:28:03 +0100 Subject: [PATCH] Add in a setup.py and fix up the documentation so setuptools can build it. --- MANIFEST.in | 1 + doc/source/conf.py | 8 ++++++++ setup.py | 31 +++++++++++++++++++++++++++++++ 3 files changed, 40 insertions(+) create mode 100644 MANIFEST.in create mode 100644 setup.py diff --git a/MANIFEST.in b/MANIFEST.in new file mode 100644 index 000000000..c50bacdbd --- /dev/null +++ b/MANIFEST.in @@ -0,0 +1 @@ +prune development diff --git a/doc/source/conf.py b/doc/source/conf.py index 85583590c..edfe37849 100644 --- a/doc/source/conf.py +++ b/doc/source/conf.py @@ -15,6 +15,14 @@ import os import sys +import sphinx.apidoc + + +def setup(app): + sphinx.apidoc.main(argv = ['-e', '-M', '-f', '-T', '-o', 'doc/source', + os.path.join(os.path.dirname(__file__), '..', '..', 'volatility')]) + + # If extensions (or modules to document with autodoc) are in another directory, # add these directories to sys.path here. If the directory is relative to the # documentation root, use os.path.abspath to make it absolute, like shown here. diff --git a/setup.py b/setup.py new file mode 100644 index 000000000..ef2578cfe --- /dev/null +++ b/setup.py @@ -0,0 +1,31 @@ +import setuptools + +from volatility.framework import constants + +setuptools.setup( + name = "volatility", + description = "Memory forensics framework", + version = constants.PACKAGE_VERSION, + license = "VCLA", + keywords = "volatility memory forensics framework windows linux volshell", + author = "Volatility Foundation", + author_email = "volatility@volatilityfoundation.org", + url = "https://volatilityfoundation.org/volatility/", + project_urls = { + "Bug Tracker": "https://github.com/volatilityfoundation/volatility3/issues", + "Documentation": "https://volatilityfoundation.org/volatility/docs/", + "Source Code": "https://github.com/volatilityfoundation/volatility3", + }, + + include_package_data = True, + exclude_package_data = {'': ['development', 'development.*'], + 'development': ['*']}, + packages = setuptools.find_packages(exclude = ["developement", "development.*"]), + scripts = [ + "vol.py", + "volshell.py" + ], + install_requires = [ + "pefile" + ], +)