test: fix `pyenv` configuration in vagrant
[dotbot.git] / setup.py
blobe3b2198281d4119bcaa0598081d60c6900602528
1 from setuptools import setup, find_packages
2 from codecs import open # For a consistent encoding
3 from os import path
4 import re
7 here = path.dirname(__file__)
10 with open(path.join(here, 'README.md'), encoding='utf-8') as f:
11 long_description = f.read()
14 def read(*names, **kwargs):
15 with open(
16 path.join(here, *names),
17 encoding=kwargs.get("encoding", "utf8")
18 ) as fp:
19 return fp.read()
22 def find_version(*file_paths):
23 version_file = read(*file_paths)
24 version_match = re.search(r"^__version__ = ['\"]([^'\"]*)['\"]",
25 version_file, re.M)
26 if version_match:
27 return version_match.group(1)
28 raise RuntimeError("Unable to find version string.")
31 setup(
32 name='dotbot',
34 version=find_version('dotbot', '__init__.py'),
36 description='A tool that bootstraps your dotfiles',
37 long_description=long_description,
38 long_description_content_type='text/markdown',
40 url='https://github.com/anishathalye/dotbot',
42 author='Anish Athalye',
43 author_email='me@anishathalye.com',
45 license='MIT',
47 classifiers=[
48 'Development Status :: 5 - Production/Stable',
50 'Intended Audience :: Developers',
52 'License :: OSI Approved :: MIT License',
54 'Programming Language :: Python :: 2',
55 'Programming Language :: Python :: 2.7',
56 'Programming Language :: Python :: 3',
57 'Programming Language :: Python :: 3.2',
58 'Programming Language :: Python :: 3.3',
59 'Programming Language :: Python :: 3.4',
60 'Programming Language :: Python :: 3.5',
61 'Programming Language :: Python :: 3.6',
63 'Topic :: Utilities',
66 keywords='dotfiles',
68 packages=find_packages(),
70 setup_requires=[
71 'setuptools>=38.6.0',
72 'wheel>=0.31.0',
75 install_requires=[
76 'PyYAML>=5.3,<6',
79 # To provide executable scripts, use entry points in preference to the
80 # "scripts" keyword. Entry points provide cross-platform support and allow
81 # pip to create the appropriate form of executable for the target platform.
82 entry_points={
83 'console_scripts': [
84 'dotbot=dotbot:main',