setup.py 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. # -*- coding: utf-8 -*-
  2. """Installer for Searx package."""
  3. from setuptools import setup
  4. from setuptools import find_packages
  5. import os
  6. import sys
  7. from searx.version import VERSION_STRING
  8. from searx import brand
  9. with open('README.rst', encoding='utf-8') as f:
  10. long_description = f.read()
  11. with open('requirements.txt') as f:
  12. requirements = [ l.strip() for l in f.readlines()]
  13. with open('requirements-dev.txt') as f:
  14. dev_requirements = [ l.strip() for l in f.readlines()]
  15. setup(
  16. name='searx',
  17. version=VERSION_STRING,
  18. description="A privacy-respecting, hackable metasearch engine",
  19. long_description=long_description,
  20. url=brand.DOCS_URL,
  21. project_urls={
  22. "Code": brand.GIT_URL,
  23. "Issue tracker": brand.ISSUE_URL
  24. },
  25. classifiers=[
  26. "Development Status :: 4 - Beta",
  27. "Programming Language :: Python",
  28. "Topic :: Internet",
  29. "Topic :: Internet :: WWW/HTTP :: HTTP Servers",
  30. "Topic :: Internet :: WWW/HTTP :: WSGI :: Application",
  31. 'License :: OSI Approved :: GNU Affero General Public License v3'
  32. ],
  33. keywords='metasearch searchengine search web http',
  34. author='Adam Tauber',
  35. author_email='asciimoo@gmail.com',
  36. license='GNU Affero General Public License',
  37. packages=find_packages(exclude=["tests*"]),
  38. zip_safe=False,
  39. install_requires=requirements,
  40. extras_require={
  41. 'test': dev_requirements
  42. },
  43. entry_points={
  44. 'console_scripts': [
  45. 'searx-run = searx.webapp:run',
  46. 'searx-checker = searx.search.checker.__main__:main'
  47. ]
  48. },
  49. package_data={
  50. 'searx': [
  51. 'settings.yml',
  52. '../README.rst',
  53. '../requirements.txt',
  54. '../requirements-dev.txt',
  55. 'data/*',
  56. 'plugins/*/*',
  57. 'static/*.*',
  58. 'static/*/*.*',
  59. 'static/*/*/*.*',
  60. 'static/*/*/*/*.*',
  61. 'static/*/*/*/*/*.*',
  62. 'templates/*/*.*',
  63. 'templates/*/*/*.*',
  64. 'tests/*',
  65. 'tests/*/*',
  66. 'tests/*/*/*',
  67. 'translations/*/*/*'
  68. ],
  69. },
  70. )