X-Git-Url: https://git.armaanb.net/?p=lightcards.git;a=blobdiff_plain;f=setup.py;h=e7e3d138b6263ed1a6038cf581de7dbc8108408d;hp=20d9b979748abc06a192c2550b11323e4ef3ae3e;hb=HEAD;hpb=b8e34d095fcc49e62a4724c8859512eab0d740f6 diff --git a/setup.py b/setup.py index 20d9b97..e7e3d13 100644 --- a/setup.py +++ b/setup.py @@ -1,29 +1,60 @@ from setuptools import setup -from os import path +import os +import shutil -pwd = path.abspath(path.dirname(__file__)) -with open(path.join(pwd, "README.md"), encoding="utf-8") as f: +pwd = os.path.abspath(os.path.dirname(__file__)) +with open(os.path.join(pwd, "README.md"), encoding="utf-8") as f: long_description = f.read() + +def mkdir(dir): + try: + os.makedirs(dir) + except FileExistsError: + pass + + +if os.geteuid() == 0: + mkdir("/etc/lightcards/") + shutil.copyfile("./config.py", "/etc/lightcards/config.py") +else: + xdg = os.environ.get("XDG_CONFIG_HOME") + xdg_dest = f"{xdg}/lightcards/config.py" + + home = os.path.expanduser("~") + home_dest = f"{home}/.config/lightcards/config.py" + + if xdg and not os.path.exists(xdg_dest): + mkdir(f"{xdg}/lightcards") + shutil.copyfile("./config.py", xdg_dest) + elif not os.path.exists(home_dest): + mkdir(f"{home}/.config/lightcards") + shutil.copyfile("./config.py", home_dest) + + setup( name="lightcards", - version="0.6.0", + version="0.7.0", description="Terminal flashcards from Markdown", long_description=long_description, long_description_content_type="text/markdown", - url="https://sr.ht/~armaan/lightcards", + url="https://lightcards.armaanb.net", author="Armaan Bhojwani", author_email="me@armaanb.net", license="MIT", packages=["lightcards"], install_requires=["beautifulsoup4", "markdown"], - data_files=[("man/man1", ["man/lightcards.1"])], - scripts=['bin/lightcards'], + data_files=[ + ("man/man1", ["man/lightcards.1"]), + ("man/man5", ["man/lightcards-config.5"]), + ], + entry_points={ + "console_scripts": ["lightcards=lightcards:main"], + }, classifiers=[ - "Development Status :: 4 - Beta", - "Intended Audience :: Other Audience", + "Intended Audience :: Education", "Environment :: Console :: Curses", "License :: OSI Approved :: MIT License", - "Topic :: Utilities" + "Topic :: Education", ], )