setup.py 3.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394
  1. #!/usr/bin/python
  2. # -*- coding: utf-8 -*-
  3. #
  4. # This file is part of Radicale Server - Calendar Server
  5. # Copyright © 2009-2011 Guillaume Ayoub
  6. #
  7. # This library is free software: you can redistribute it and/or modify
  8. # it under the terms of the GNU General Public License as published by
  9. # the Free Software Foundation, either version 3 of the License, or
  10. # (at your option) any later version.
  11. #
  12. # This library is distributed in the hope that it will be useful,
  13. # but WITHOUT ANY WARRANTY; without even the implied warranty of
  14. # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  15. # GNU General Public License for more details.
  16. #
  17. # You should have received a copy of the GNU General Public License
  18. # along with Radicale. If not, see <http://www.gnu.org/licenses/>.
  19. """
  20. Radicale CalDAV server
  21. ======================
  22. The Radicale Project is a CalDAV calendar server. It aims to be a light
  23. solution, easy to use, easy to install, easy to configure. As a consequence,
  24. it requires few software dependances and is pre-configured to work
  25. out-of-the-box.
  26. The Radicale Project runs on most of the UNIX-like platforms (Linux, BSD,
  27. MacOS X) and Windows. It is known to work with Evolution, Lightning, iPhone
  28. and Android clients. It is free and open-source software, released under GPL
  29. version 3.
  30. For further information, please visit the `Radicale Website
  31. <http://www.radicale.org/>`_.
  32. """
  33. import os
  34. from distutils.core import setup
  35. from distutils.command.build_scripts import build_scripts
  36. import radicale
  37. # build_scripts is known to have a lot of public methods
  38. # pylint: disable=R0904
  39. class BuildScripts(build_scripts):
  40. """Build the package."""
  41. def run(self):
  42. """Run building."""
  43. # These lines remove the .py extension from the radicale executable
  44. self.mkpath(self.build_dir)
  45. for script in self.scripts:
  46. root, _ = os.path.splitext(script)
  47. self.copy_file(script, os.path.join(self.build_dir, root))
  48. # pylint: enable=R0904
  49. # When the version is updated, ``radicale.VERSION`` must be modified.
  50. # A new section in the ``NEWS`` file must be added too.
  51. setup(
  52. name="Radicale",
  53. version=radicale.VERSION,
  54. description="CalDAV Server",
  55. long_description=__doc__,
  56. author="Guillaume Ayoub",
  57. author_email="guillaume.ayoub@kozea.fr",
  58. url="http://www.radicale.org/",
  59. download_url="http://www.radicale.org/src/radicale/Radicale-%s.tar.gz" % \
  60. radicale.VERSION,
  61. license="GNU GPL v3",
  62. platforms="Any",
  63. packages=["radicale", "radicale.acl"],
  64. provides=["radicale"],
  65. scripts=["radicale.py"],
  66. cmdclass={"build_scripts": BuildScripts},
  67. keywords=["calendar", "CalDAV"],
  68. classifiers=[
  69. "Development Status :: 4 - Beta",
  70. "Environment :: Console",
  71. "Environment :: Web Environment",
  72. "Intended Audience :: End Users/Desktop",
  73. "Intended Audience :: Information Technology",
  74. "License :: OSI Approved :: GNU General Public License (GPL)",
  75. "Operating System :: OS Independent",
  76. "Programming Language :: Python :: 2",
  77. "Programming Language :: Python :: 2.6",
  78. "Programming Language :: Python :: 2.7",
  79. "Programming Language :: Python :: 3",
  80. "Programming Language :: Python :: 3.0",
  81. "Programming Language :: Python :: 3.1",
  82. "Programming Language :: Python :: 3.2",
  83. "Topic :: Office/Business :: Groupware"])