setup.py 2.2 KB

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