1
|
|
|
""" |
2
|
|
|
KanbanView configuration file for py2app and pipy. |
3
|
|
|
""" |
4
|
|
|
|
5
|
|
|
import os |
6
|
|
|
from setuptools import setup, find_packages # type: ignore |
7
|
|
|
|
8
|
|
|
|
9
|
|
|
def package_files(directory): |
10
|
|
|
"""Automatically add data resources.""" |
11
|
|
|
paths = [] |
12
|
|
|
# pylint: disable=unused-variable |
13
|
|
|
for (path, _directories, filenames) in os.walk(directory): |
14
|
|
|
for filename in filenames: |
15
|
|
|
paths.append((directory, [os.path.join(path, filename)])) |
16
|
|
|
return paths |
17
|
|
|
|
18
|
|
|
|
19
|
|
|
APP = ["bin/things-app"] |
20
|
|
|
APP_NAME = "KanbanView" |
21
|
|
|
AUTHOR = "Alexander Willner" |
22
|
|
|
AUTHOR_MAIL = "[email protected]" |
23
|
|
|
DESCRIPTON = "A simple read-only Kanban App for Things 3" |
24
|
|
|
URL = "https://kanbanview.app" |
25
|
|
|
VERSION = "2.9.0" |
26
|
|
|
DATA_FILES = package_files("resources") |
27
|
|
|
OPTIONS = { |
28
|
|
|
"argv_emulation": False, |
29
|
|
|
"iconfile": "resources/icon.icns", |
30
|
|
|
"plist": { |
31
|
|
|
"CFBundleName": APP_NAME, |
32
|
|
|
"CFBundleDisplayName": APP_NAME, |
33
|
|
|
"CFBundleGetInfoString": APP_NAME, |
34
|
|
|
"CFBundleIdentifier": "ws.willner.kanbanview", |
35
|
|
|
"CFBundleVersion": VERSION, |
36
|
|
|
"LSApplicationCategoryType": "public.app-category.productivity", |
37
|
|
|
"LSMinimumSystemVersion": "10.15.0", |
38
|
|
|
"NSHumanReadableCopyright": "Copyright 2021 " + AUTHOR, |
39
|
|
|
}, |
40
|
|
|
"optimize": "2", |
41
|
|
|
} |
42
|
|
|
|
43
|
|
|
with open("README.md", "r", encoding="utf-8") as fh: |
44
|
|
|
LONG_DESRIPTION = fh.read() |
45
|
|
|
|
46
|
|
|
setup( |
47
|
|
|
app=APP, |
48
|
|
|
author=AUTHOR, |
49
|
|
|
author_email=AUTHOR_MAIL, |
50
|
|
|
name="things3-api", |
51
|
|
|
description=DESCRIPTON, |
52
|
|
|
long_description=LONG_DESRIPTION, |
53
|
|
|
long_description_content_type="text/markdown", |
54
|
|
|
url=URL, |
55
|
|
|
packages=find_packages(), |
56
|
|
|
classifiers=[ |
57
|
|
|
"Development Status :: 4 - Beta", |
58
|
|
|
"Programming Language :: Python :: 3", |
59
|
|
|
"License :: OSI Approved :: Apache Software License", |
60
|
|
|
"Operating System :: MacOS :: MacOS X", |
61
|
|
|
"Environment :: Console", |
62
|
|
|
"Framework :: Flask", |
63
|
|
|
"Natural Language :: English", |
64
|
|
|
], |
65
|
|
|
python_requires=">=3.6", |
66
|
|
|
version=VERSION, |
67
|
|
|
data_files=DATA_FILES, |
68
|
|
|
options={"py2app": OPTIONS}, |
69
|
|
|
setup_requires=["py2app"], |
70
|
|
|
install_requires=["things.py>=0.0.15", "pywebview>=3.0.0"], |
71
|
|
|
entry_points={ |
72
|
|
|
"console_scripts": [ |
73
|
|
|
"things-cli = things3.things3_cli:main", |
74
|
|
|
"things-api = things3.things3_api:main", |
75
|
|
|
"things-kanban = things3.things3_app:main", |
76
|
|
|
] |
77
|
|
|
}, |
78
|
|
|
) |
79
|
|
|
|