From d4ba2a548dd1cd5cca88644d4144e95a4c3f52ff Mon Sep 17 00:00:00 2001 From: Midgard Date: Wed, 31 Aug 2022 23:32:38 +0200 Subject: [PATCH] Add setup.py --- .gitignore | 104 +++++++++++++++++++++++++++++++++++ requirements.txt | 12 ++++ setup.py | 51 +++++++++++++++++ tools/update_requirements.sh | 16 ++++++ 4 files changed, 183 insertions(+) create mode 100644 .gitignore create mode 100644 requirements.txt create mode 100755 setup.py create mode 100755 tools/update_requirements.sh diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..af2f537 --- /dev/null +++ b/.gitignore @@ -0,0 +1,104 @@ +# Byte-compiled / optimized / DLL files +__pycache__/ +*.py[cod] +*$py.class + +# C extensions +*.so + +# Distribution / packaging +.Python +build/ +develop-eggs/ +dist/ +downloads/ +eggs/ +.eggs/ +lib/ +lib64/ +parts/ +sdist/ +var/ +wheels/ +*.egg-info/ +.installed.cfg +*.egg +MANIFEST + +# PyInstaller +# Usually these files are written by a python script from a template +# before PyInstaller builds the exe, so as to inject date/other infos into it. +*.manifest +*.spec + +# Installer logs +pip-log.txt +pip-delete-this-directory.txt + +# Unit test / coverage reports +htmlcov/ +.tox/ +.coverage +.coverage.* +.cache +nosetests.xml +coverage.xml +*.cover +.hypothesis/ + +# Translations +*.mo +*.pot + +# Django stuff: +*.log +.static_storage/ +.media/ +local_settings.py + +# Flask stuff: +instance/ +.webassets-cache + +# Scrapy stuff: +.scrapy + +# Sphinx documentation +docs/_build/ + +# PyBuilder +target/ + +# Jupyter Notebook +.ipynb_checkpoints + +# pyenv +.python-version + +# celery beat schedule file +celerybeat-schedule + +# SageMath parsed files +*.sage.py + +# Environments +.env +.venv +env/ +venv/ +ENV/ +env.bak/ +venv.bak/ + +# Spyder project settings +.spyderproject +.spyproject + +# Rope project settings +.ropeproject + +# mkdocs documentation +/site + +# mypy +.mypy_cache/ diff --git a/requirements.txt b/requirements.txt new file mode 100644 index 0000000..35a5fb2 --- /dev/null +++ b/requirements.txt @@ -0,0 +1,12 @@ +# +# This file is autogenerated. To update, run: +# tools/update_requirements.sh +# +ipo==0.0.4 \ + --hash=sha256:0658a14ca4ea2f843675465cde329ac51e9ff40db2b7158c8d23b195a25e3175 \ + --hash=sha256:d89d2ea327b874cdbf56b5b2a22e1c10ea46a705da849457b65503e9f158a0c4 + # via mmmpd (setup.py) +python-mpd2==3.0.5 \ + --hash=sha256:4b96fb5fc02d5c42cec4038689d726820d11bb8de42a28e89872872476d31cee \ + --hash=sha256:6f1bffd93b9a32fc018a9bbf3487505b52e0d757ec34066905c60a912d492384 + # via mmmpd (setup.py) diff --git a/setup.py b/setup.py new file mode 100755 index 0000000..a1e62a7 --- /dev/null +++ b/setup.py @@ -0,0 +1,51 @@ +#!/usr/bin/env python3 + +import setuptools + + +# with open("README.md", "r") as fh: + # long_description = fh.read() + + +setuptools.setup( + name="mmmpd", + version="1.0", + author="Midgard", + author_email="midgard@zeus.ugent.be", + description="Create a “now playing” custom status in Mattermost. Depends on https://git.zeus.gent/midgard/mmcli being in your path as mmcli", + # long_description=long_description, + # long_description_content_type="text/markdown", + + url="https://git.zeus.gent/midgard/mmmpd", + project_urls={ + "Source": "https://git.zeus.gent/midgard/mmmpd", + "Bug tracker": "https://git.zeus.gent/midgard/mmmpd/-/issues", + }, + + classifiers=[ + "Programming Language :: Python :: 3", + "License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)", + "Operating System :: OS Independent", + "Natural Language :: English", + "Environment :: Console", + + # "Development Status :: 1 - Planning", + #"Development Status :: 2 - Pre-Alpha", + #"Development Status :: 3 - Alpha", + #"Development Status :: 4 - Beta", + #"Development Status :: 5 - Production/Stable", + "Development Status :: 6 - Mature", + # "Development Status :: 7 - Inactive", + + "Intended Audience :: End Users/Desktop", + "Topic :: Utilities", + ], + + packages=setuptools.find_packages(), + python_requires=">=3.6", + install_requires=[ + "python-mpd2", + # "mmcli @ git+https://git.zeus.gent/midgard/mmcli", + "ipo" + ], +) diff --git a/tools/update_requirements.sh b/tools/update_requirements.sh new file mode 100755 index 0000000..8e4e3fe --- /dev/null +++ b/tools/update_requirements.sh @@ -0,0 +1,16 @@ +#!/bin/sh + +cd "`dirname "$0"`"/.. + +if [ ! -f venv/bin/pip-compile ]; then + venv/bin/pip install pip-tools +fi + +cat < requirements.txt +# +# This file is autogenerated. To update, run: +# tools/update_requirements.sh +# +EOF +venv/bin/pip-compile --quiet --generate-hashes --annotate --no-header --output-file="-" >> requirements.txt +echo "Updated requirements.txt"