From b2e7b4ed6dafe589eb41999e145066834402176e Mon Sep 17 00:00:00 2001 From: Micke Nordin Date: Mon, 28 Feb 2022 10:17:54 +0100 Subject: [PATCH] Restructure and add setup.py This should make it possible to install with pip --- .../org.smolnet.passui.desktop | 0 install.sh | 12 ++++---- requirements.txt | 4 +++ src/main.py => scripts/passui | 0 setup.py | 28 +++++++++++++++++++ 5 files changed, 38 insertions(+), 6 deletions(-) rename src/passui.desktop => data/org.smolnet.passui.desktop (100%) create mode 100644 requirements.txt rename src/main.py => scripts/passui (100%) create mode 100644 setup.py diff --git a/src/passui.desktop b/data/org.smolnet.passui.desktop similarity index 100% rename from src/passui.desktop rename to data/org.smolnet.passui.desktop diff --git a/install.sh b/install.sh index d40fa92..2665b18 100755 --- a/install.sh +++ b/install.sh @@ -1,7 +1,7 @@ #!/usr/bin/env bash if [[ "${1}" == "-u" ]]; then echo "Uninstalling passui" - sudo rm /usr/local/bin/passui /usr/share/applications/passui.desktop + sudo rm /usr/local/bin/passui /usr/share/applications/{org.smolnet.,}passui.desktop echo "If you wish you can now manually remove the dependencies: wxpython git gnupg pass" exit 0 elif [[ "${1}" == "-h" ]]; then @@ -20,11 +20,11 @@ elif [[ -f /usr/bin/pacman ]]; then # Arch/Manjaro else echo " This distribution is not supported by this installer. manually install: wxpython python3-gnupg git gnupg pass - and then copy passui to /usr/local/bin and passui.desktop to /usr/share/applications/" + and then copy passui to /usr/local/bin and org.smolnet.passui.desktop to /usr/share/applications/" exit 1 fi -sudo cp src/main.py /usr/local/bin/passui -sudo cp -a src/pass_handler /usr/lib/python3.9/site-packages/ -sudo cp -a src/pass_handler /usr/lib/python3.9/ -sudo cp src/passui.desktop /usr/share/applications/ +sudo cp scripts/passui /usr/local/bin/ +sudo cp -a lib/pass_handler /usr/lib/python3.9/site-packages/ +sudo cp -a lib/pass_handler /usr/lib/python3.9/ +sudo cp data/org.smolnet.passui.desktop /usr/share/applications/ exit 0 diff --git a/requirements.txt b/requirements.txt new file mode 100644 index 0000000..8b9959b --- /dev/null +++ b/requirements.txt @@ -0,0 +1,4 @@ +wxPython==4.0.7 +typing-extensions==3.7.4.3 +typing-inspect==0.7.1 +python-gnupg==0.4.6 diff --git a/src/main.py b/scripts/passui similarity index 100% rename from src/main.py rename to scripts/passui diff --git a/setup.py b/setup.py new file mode 100644 index 0000000..dca9f89 --- /dev/null +++ b/setup.py @@ -0,0 +1,28 @@ +import setuptools + +with open("README.md", "r", encoding="utf-8") as fh: + long_description = fh.read() + +setuptools.setup( + name="passui", + version="0.0.1", + author="Micke Nordin", + author_email="hej@mic.ke", + data_files = [('share/applications', ['data/org.smolnet.passui.desktop']),], + description="A GUI for the standad Unix password manager.", + long_description=long_description, + long_description_content_type="text/markdown", + url="https://code.smolnet.org/micke/passui", + project_urls={ + "Bug Tracker": "https://code.smolnet.org/micke/passui", + }, + classifiers=[ + "Programming Language :: Python :: 3", + "License :: OSI Approved :: GPL-3.0", + "Operating System :: OS Independent", + ], + package_dir={"": "src"}, + packages=setuptools.find_packages(where="src"), + python_requires=">=3.9", + scripts=["scripts/passui"], +)