Surface NMR processing and inversion GUI
Nevar pievienot vairāk kā 25 tēmas Tēmai ir jāsākas ar burtu vai ciparu, tā var saturēt domu zīmes ('-') un var būt līdz 35 simboliem gara.

setup.py 2.6KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. #!/usr/bin/env python
  2. # Requires PyQt5 and compiltion of GUI files via pyuic
  3. from setuptools import setup, Extension
  4. from setuptools.command.build_py import build_py
  5. try:
  6. from pyqt_distutils.build_ui import build_ui
  7. except ImportError:
  8. print("Please install pyqt_distutils")
  9. print( "(sudo) pip(3) install pyqt-distutils")
  10. exit()
  11. class custom_build_py(build_py):
  12. def run(self):
  13. self.run_command('build_ui')
  14. build_py.run(self)
  15. with open("README.md", "r") as fh:
  16. long_description = fh.read()
  17. setup(name='Akvo',
  18. version='1.6.2',
  19. python_requires='>3.7.0', # due to pyLemma
  20. description='Surface nuclear magnetic resonance workbench',
  21. long_description=long_description,
  22. long_description_content_type='text/markdown',
  23. author='Trevor P. Irons',
  24. author_email='Trevor.Irons@lemmasoftware.org',
  25. url='https://akvo.lemmasoftware.org/',
  26. #setup_requires=['PyQt5'],
  27. setup_requires=[
  28. # Setuptools 18.0 properly handles Cython extensions.
  29. #'PyQt',
  30. 'pyqt_distutils',
  31. 'PyQt5',
  32. 'setuptools>=18.0',
  33. ],
  34. # ext_modules = cythonise("akvo/tressel/*.pyx"),
  35. # build_requires=['cython'],
  36. install_requires=[
  37. # 'cython',
  38. # 'rpy2',
  39. 'matplotlib',
  40. 'scipy',
  41. 'padasip',
  42. 'seaborn',
  43. 'numpy',
  44. 'pyqt5',
  45. 'pyyaml',
  46. 'ruamel.yaml',
  47. 'pandas',
  48. 'pyqt-distutils',
  49. 'cmocean',
  50. 'multiprocessing',
  51. 'pyLemma >= 0.4.0'
  52. ],
  53. packages=['akvo', 'akvo.tressel', 'akvo.gui'],
  54. license='GPL 4.0',
  55. entry_points = {
  56. 'console_scripts': [
  57. 'akvo = akvo.gui.akvoGUI:main',
  58. 'akvoK0 = akvo.tressel.calcAkvoKernel:main',
  59. 'akvoQT = akvo.tressel.invertTA:main',
  60. ],
  61. },
  62. #cmdclass = cmdclass,
  63. # for forced build of pyuic
  64. cmdclass={
  65. 'build_ui': build_ui,
  66. 'build_py': custom_build_py,
  67. },
  68. # Mechanism to include auxiliary files
  69. # commenting out may be necessary?
  70. #include_package_data=True,
  71. package_data={
  72. 'akvo.gui': ['*.png'],
  73. 'akvo.gui': ['*.ui'],
  74. '': ['*.png'],
  75. },
  76. classifiers=[
  77. "Programming Language :: Python :: 3",
  78. "License :: OSI Approved :: GNU Lesser General Public License v3 or later (LGPLv3+)",
  79. "Operating System :: OS Independent",
  80. ],
  81. )