From d44d4380a0319d4b80b53f65b7166c9bc4153325 Mon Sep 17 00:00:00 2001
From: kirbylife <gabriel13m@gmail.com>
Date: Sat, 19 Dec 2020 16:48:55 -0600
Subject: [PATCH] Poetry ready

---
 .gitignore                                |   3 +
 main.py                                   |  13 -
 munyal/__init__.py                        |  21 ++
 client.py => munyal/client.py             |  19 +-
 compare_json.py => munyal/compare_json.py |   4 +-
 config.py => munyal/config.py             |   6 +-
 dir_to_json.py => munyal/dir_to_json.py   |   2 +-
 flatten_dirs.py => munyal/flatten_dirs.py |   2 +-
 misc.py => munyal/misc.py                 |   0
 poetry.lock                               | 292 ----------------------
 pyproject.toml                            |   5 +
 requirements.txt                          |   4 -
 12 files changed, 47 insertions(+), 324 deletions(-)
 delete mode 100644 main.py
 create mode 100644 munyal/__init__.py
 rename client.py => munyal/client.py (96%)
 rename compare_json.py => munyal/compare_json.py (96%)
 rename config.py => munyal/config.py (98%)
 rename dir_to_json.py => munyal/dir_to_json.py (97%)
 rename flatten_dirs.py => munyal/flatten_dirs.py (93%)
 rename misc.py => munyal/misc.py (100%)
 delete mode 100644 poetry.lock
 delete mode 100644 requirements.txt

diff --git a/.gitignore b/.gitignore
index 63d649d..60e972b 100644
--- a/.gitignore
+++ b/.gitignore
@@ -71,3 +71,6 @@ testMain.py
 dbs
 logs
 *.pyc
+
+# Poetry
+poetry.lock
diff --git a/main.py b/main.py
deleted file mode 100644
index 414643c..0000000
--- a/main.py
+++ /dev/null
@@ -1,13 +0,0 @@
-import os
-import sys
-
-from client import MunyalClient
-from misc import get_os
-
-
-def main():
-    os = get_os()
-
-
-if __name__ == "__main__":
-    sys.exit(main())
diff --git a/munyal/__init__.py b/munyal/__init__.py
new file mode 100644
index 0000000..7ff044b
--- /dev/null
+++ b/munyal/__init__.py
@@ -0,0 +1,21 @@
+import sys
+
+from munyal.client import MunyalClient
+
+from munyal.config import get_config
+from munyal.config import __get_config_folder
+
+def run_client():
+    try:
+        client = MunyalClient()
+        client.start()
+        sys.exit(0)
+    except BaseException as e:
+        print(e)
+        sys.exit(1)
+
+def run_config():
+    if "--restart" in sys.argv:
+        if get_config():
+            shutil.rmtree(__get_config_folder())
+    print(get_config())
diff --git a/client.py b/munyal/client.py
similarity index 96%
rename from client.py
rename to munyal/client.py
index 86f77f0..72f016c 100755
--- a/client.py
+++ b/munyal/client.py
@@ -7,6 +7,8 @@ import os
 import pathlib
 import sys
 import shutil
+import websocket
+
 from copy import deepcopy
 from datetime import datetime
 from random import randint
@@ -18,18 +20,19 @@ from uuid import uuid4
 from PIL import Image, ImageTk
 from requests import post
 
-import websocket
-from compare_json import compare_json
-from config import get_config
-from config import get_last_history
-from config import set_last_history
-from dir_to_json import get_json
-from misc import check_network
-from misc import path_join
 from pystray import Icon, Menu
 from pystray import MenuItem as Item
 from websocket import WebSocket
 
+from munyal.compare_json import compare_json
+from munyal.config import get_config
+from munyal.config import get_last_history
+from munyal.config import set_last_history
+from munyal.dir_to_json import get_json
+from munyal.misc import check_network
+from munyal.misc import path_join
+
+
 try:
     import thread
 except ImportError:
diff --git a/compare_json.py b/munyal/compare_json.py
similarity index 96%
rename from compare_json.py
rename to munyal/compare_json.py
index 9614276..fc4279e 100644
--- a/compare_json.py
+++ b/munyal/compare_json.py
@@ -1,7 +1,7 @@
 import json
 
-from dir_to_json import get_json
-from flatten_dirs import flatten_dirs
+from munyal.dir_to_json import get_json
+from munyal.flatten_dirs import flatten_dirs
 
 
 def compare_json(json_1, json_2):
diff --git a/config.py b/munyal/config.py
similarity index 98%
rename from config.py
rename to munyal/config.py
index b4ce977..d1dca11 100644
--- a/config.py
+++ b/munyal/config.py
@@ -8,9 +8,9 @@ from hashlib import sha256
 
 from uuid import uuid4
 
-from misc import alert
-from misc import get_os
-from misc import path_join
+from munyal.misc import alert
+from munyal.misc import get_os
+from munyal.misc import path_join
 
 
 def __get_config_folder():
diff --git a/dir_to_json.py b/munyal/dir_to_json.py
similarity index 97%
rename from dir_to_json.py
rename to munyal/dir_to_json.py
index 8d721b5..7484c6d 100644
--- a/dir_to_json.py
+++ b/munyal/dir_to_json.py
@@ -4,7 +4,7 @@
 import json
 import os
 from hashlib import md5
-from misc import path_join
+from munyal.misc import path_join
 
 
 def md5sum(filename):
diff --git a/flatten_dirs.py b/munyal/flatten_dirs.py
similarity index 93%
rename from flatten_dirs.py
rename to munyal/flatten_dirs.py
index b1a21cf..0a679e7 100644
--- a/flatten_dirs.py
+++ b/munyal/flatten_dirs.py
@@ -1,4 +1,4 @@
-from misc import path_join
+from munyal.misc import path_join
 
 def _flatten_dirs(content, path=""):
     for item in content:
diff --git a/misc.py b/munyal/misc.py
similarity index 100%
rename from misc.py
rename to munyal/misc.py
diff --git a/poetry.lock b/poetry.lock
deleted file mode 100644
index 91b5c2b..0000000
--- a/poetry.lock
+++ /dev/null
@@ -1,292 +0,0 @@
-[[package]]
-name = "certifi"
-version = "2020.12.5"
-description = "Python package for providing Mozilla's CA Bundle."
-category = "main"
-optional = false
-python-versions = "*"
-
-[[package]]
-name = "chardet"
-version = "4.0.0"
-description = "Universal encoding detector for Python 2 and 3"
-category = "main"
-optional = false
-python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*"
-
-[[package]]
-name = "click"
-version = "7.1.2"
-description = "Composable command line interface toolkit"
-category = "main"
-optional = false
-python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*"
-
-[[package]]
-name = "idna"
-version = "2.10"
-description = "Internationalized Domain Names in Applications (IDNA)"
-category = "main"
-optional = false
-python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*"
-
-[[package]]
-name = "pillow"
-version = "8.0.1"
-description = "Python Imaging Library (Fork)"
-category = "main"
-optional = false
-python-versions = ">=3.6"
-
-[[package]]
-name = "prettytable"
-version = "2.0.0"
-description = "A simple Python library for easily displaying tabular data in a visually appealing ASCII table format"
-category = "main"
-optional = false
-python-versions = ">=3.6"
-
-[package.dependencies]
-wcwidth = "*"
-
-[package.extras]
-tests = ["pytest", "pytest-cov"]
-
-[[package]]
-name = "pyobjc-core"
-version = "7.0.1"
-description = "Python<->ObjC Interoperability Module"
-category = "main"
-optional = false
-python-versions = ">=3.6"
-
-[[package]]
-name = "pyobjc-framework-cocoa"
-version = "7.0.1"
-description = "Wrappers for the Cocoa frameworks on macOS"
-category = "main"
-optional = false
-python-versions = ">=3.6"
-
-[package.dependencies]
-pyobjc-core = ">=7.0.1"
-
-[[package]]
-name = "pyobjc-framework-quartz"
-version = "7.0.1"
-description = "Wrappers for the Quartz frameworks on macOS"
-category = "main"
-optional = false
-python-versions = ">=3.6"
-
-[package.dependencies]
-pyobjc-core = ">=7.0.1"
-pyobjc-framework-Cocoa = ">=7.0.1"
-
-[[package]]
-name = "pystray"
-version = "0.17.2"
-description = "Provides systray integration"
-category = "main"
-optional = false
-python-versions = "*"
-
-[package.dependencies]
-Pillow = "*"
-pyobjc-framework-Quartz = {version = ">=3.0", markers = "sys_platform == \"darwin\""}
-python-xlib = {version = ">=0.17", markers = "sys_platform == \"linux\""}
-six = "*"
-
-[[package]]
-name = "python-xlib"
-version = "0.29"
-description = "Python X Library"
-category = "main"
-optional = false
-python-versions = "*"
-
-[package.dependencies]
-six = ">=1.10.0"
-
-[[package]]
-name = "requests"
-version = "2.25.1"
-description = "Python HTTP for Humans."
-category = "main"
-optional = false
-python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*"
-
-[package.dependencies]
-certifi = ">=2017.4.17"
-chardet = ">=3.0.2,<5"
-idna = ">=2.5,<3"
-urllib3 = ">=1.21.1,<1.27"
-
-[package.extras]
-security = ["pyOpenSSL (>=0.14)", "cryptography (>=1.3.4)"]
-socks = ["PySocks (>=1.5.6,!=1.5.7)", "win-inet-pton"]
-
-[[package]]
-name = "six"
-version = "1.15.0"
-description = "Python 2 and 3 compatibility utilities"
-category = "main"
-optional = false
-python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*"
-
-[[package]]
-name = "tcping"
-version = "0.1.1rc1"
-description = "command line for tcp ping"
-category = "main"
-optional = false
-python-versions = "*"
-
-[package.dependencies]
-click = "*"
-prettytable = "*"
-six = "*"
-
-[[package]]
-name = "urllib3"
-version = "1.26.2"
-description = "HTTP library with thread-safe connection pooling, file post, and more."
-category = "main"
-optional = false
-python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, <4"
-
-[package.extras]
-brotli = ["brotlipy (>=0.6.0)"]
-secure = ["pyOpenSSL (>=0.14)", "cryptography (>=1.3.4)", "idna (>=2.0.0)", "certifi", "ipaddress"]
-socks = ["PySocks (>=1.5.6,!=1.5.7,<2.0)"]
-
-[[package]]
-name = "wcwidth"
-version = "0.2.5"
-description = "Measures the displayed width of unicode strings in a terminal"
-category = "main"
-optional = false
-python-versions = "*"
-
-[[package]]
-name = "websocket-client"
-version = "0.57.0"
-description = "WebSocket client for Python. hybi13 is supported."
-category = "main"
-optional = false
-python-versions = ">=2.6, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*"
-
-[package.dependencies]
-six = "*"
-
-[metadata]
-lock-version = "1.1"
-python-versions = "^3.9"
-content-hash = "6394bb0ce3ee58e8649e590ead49d625cfb5051f70af5f70856fc464421521d8"
-
-[metadata.files]
-certifi = [
-    {file = "certifi-2020.12.5-py2.py3-none-any.whl", hash = "sha256:719a74fb9e33b9bd44cc7f3a8d94bc35e4049deebe19ba7d8e108280cfd59830"},
-    {file = "certifi-2020.12.5.tar.gz", hash = "sha256:1a4995114262bffbc2413b159f2a1a480c969de6e6eb13ee966d470af86af59c"},
-]
-chardet = [
-    {file = "chardet-4.0.0-py2.py3-none-any.whl", hash = "sha256:f864054d66fd9118f2e67044ac8981a54775ec5b67aed0441892edb553d21da5"},
-    {file = "chardet-4.0.0.tar.gz", hash = "sha256:0d6f53a15db4120f2b08c94f11e7d93d2c911ee118b6b30a04ec3ee8310179fa"},
-]
-click = [
-    {file = "click-7.1.2-py2.py3-none-any.whl", hash = "sha256:dacca89f4bfadd5de3d7489b7c8a566eee0d3676333fbb50030263894c38c0dc"},
-    {file = "click-7.1.2.tar.gz", hash = "sha256:d2b5255c7c6349bc1bd1e59e08cd12acbbd63ce649f2588755783aa94dfb6b1a"},
-]
-idna = [
-    {file = "idna-2.10-py2.py3-none-any.whl", hash = "sha256:b97d804b1e9b523befed77c48dacec60e6dcb0b5391d57af6a65a312a90648c0"},
-    {file = "idna-2.10.tar.gz", hash = "sha256:b307872f855b18632ce0c21c5e45be78c0ea7ae4c15c828c20788b26921eb3f6"},
-]
-pillow = [
-    {file = "Pillow-8.0.1-cp36-cp36m-macosx_10_10_x86_64.whl", hash = "sha256:b63d4ff734263ae4ce6593798bcfee6dbfb00523c82753a3a03cbc05555a9cc3"},
-    {file = "Pillow-8.0.1-cp36-cp36m-manylinux1_i686.whl", hash = "sha256:5f9403af9c790cc18411ea398a6950ee2def2a830ad0cfe6dc9122e6d528b302"},
-    {file = "Pillow-8.0.1-cp36-cp36m-manylinux1_x86_64.whl", hash = "sha256:6b4a8fd632b4ebee28282a9fef4c341835a1aa8671e2770b6f89adc8e8c2703c"},
-    {file = "Pillow-8.0.1-cp36-cp36m-manylinux2014_aarch64.whl", hash = "sha256:cc3ea6b23954da84dbee8025c616040d9aa5eaf34ea6895a0a762ee9d3e12e11"},
-    {file = "Pillow-8.0.1-cp36-cp36m-win32.whl", hash = "sha256:d8a96747df78cda35980905bf26e72960cba6d355ace4780d4bdde3b217cdf1e"},
-    {file = "Pillow-8.0.1-cp36-cp36m-win_amd64.whl", hash = "sha256:7ba0ba61252ab23052e642abdb17fd08fdcfdbbf3b74c969a30c58ac1ade7cd3"},
-    {file = "Pillow-8.0.1-cp37-cp37m-macosx_10_10_x86_64.whl", hash = "sha256:795e91a60f291e75de2e20e6bdd67770f793c8605b553cb6e4387ce0cb302e09"},
-    {file = "Pillow-8.0.1-cp37-cp37m-manylinux1_i686.whl", hash = "sha256:0a2e8d03787ec7ad71dc18aec9367c946ef8ef50e1e78c71f743bc3a770f9fae"},
-    {file = "Pillow-8.0.1-cp37-cp37m-manylinux1_x86_64.whl", hash = "sha256:006de60d7580d81f4a1a7e9f0173dc90a932e3905cc4d47ea909bc946302311a"},
-    {file = "Pillow-8.0.1-cp37-cp37m-manylinux2014_aarch64.whl", hash = "sha256:bd7bf289e05470b1bc74889d1466d9ad4a56d201f24397557b6f65c24a6844b8"},
-    {file = "Pillow-8.0.1-cp37-cp37m-win32.whl", hash = "sha256:95edb1ed513e68bddc2aee3de66ceaf743590bf16c023fb9977adc4be15bd3f0"},
-    {file = "Pillow-8.0.1-cp37-cp37m-win_amd64.whl", hash = "sha256:e38d58d9138ef972fceb7aeec4be02e3f01d383723965bfcef14d174c8ccd039"},
-    {file = "Pillow-8.0.1-cp38-cp38-macosx_10_10_x86_64.whl", hash = "sha256:d3d07c86d4efa1facdf32aa878bd508c0dc4f87c48125cc16b937baa4e5b5e11"},
-    {file = "Pillow-8.0.1-cp38-cp38-manylinux1_i686.whl", hash = "sha256:fbd922f702582cb0d71ef94442bfca57624352622d75e3be7a1e7e9360b07e72"},
-    {file = "Pillow-8.0.1-cp38-cp38-manylinux1_x86_64.whl", hash = "sha256:92c882b70a40c79de9f5294dc99390671e07fc0b0113d472cbea3fde15db1792"},
-    {file = "Pillow-8.0.1-cp38-cp38-manylinux2014_aarch64.whl", hash = "sha256:7c9401e68730d6c4245b8e361d3d13e1035cbc94db86b49dc7da8bec235d0015"},
-    {file = "Pillow-8.0.1-cp38-cp38-win32.whl", hash = "sha256:6c1aca8231625115104a06e4389fcd9ec88f0c9befbabd80dc206c35561be271"},
-    {file = "Pillow-8.0.1-cp38-cp38-win_amd64.whl", hash = "sha256:cc9ec588c6ef3a1325fa032ec14d97b7309db493782ea8c304666fb10c3bd9a7"},
-    {file = "Pillow-8.0.1-cp39-cp39-macosx_10_10_x86_64.whl", hash = "sha256:eb472586374dc66b31e36e14720747595c2b265ae962987261f044e5cce644b5"},
-    {file = "Pillow-8.0.1-cp39-cp39-manylinux1_i686.whl", hash = "sha256:0eeeae397e5a79dc088d8297a4c2c6f901f8fb30db47795113a4a605d0f1e5ce"},
-    {file = "Pillow-8.0.1-cp39-cp39-manylinux1_x86_64.whl", hash = "sha256:81f812d8f5e8a09b246515fac141e9d10113229bc33ea073fec11403b016bcf3"},
-    {file = "Pillow-8.0.1-cp39-cp39-manylinux2014_aarch64.whl", hash = "sha256:895d54c0ddc78a478c80f9c438579ac15f3e27bf442c2a9aa74d41d0e4d12544"},
-    {file = "Pillow-8.0.1-cp39-cp39-win32.whl", hash = "sha256:2fb113757a369a6cdb189f8df3226e995acfed0a8919a72416626af1a0a71140"},
-    {file = "Pillow-8.0.1-cp39-cp39-win_amd64.whl", hash = "sha256:59e903ca800c8cfd1ebe482349ec7c35687b95e98cefae213e271c8c7fffa021"},
-    {file = "Pillow-8.0.1-pp36-pypy36_pp73-macosx_10_10_x86_64.whl", hash = "sha256:5abd653a23c35d980b332bc0431d39663b1709d64142e3652890df4c9b6970f6"},
-    {file = "Pillow-8.0.1-pp36-pypy36_pp73-manylinux2010_x86_64.whl", hash = "sha256:4b0ef2470c4979e345e4e0cc1bbac65fda11d0d7b789dbac035e4c6ce3f98adb"},
-    {file = "Pillow-8.0.1-pp37-pypy37_pp73-win32.whl", hash = "sha256:8de332053707c80963b589b22f8e0229f1be1f3ca862a932c1bcd48dafb18dd8"},
-    {file = "Pillow-8.0.1.tar.gz", hash = "sha256:11c5c6e9b02c9dac08af04f093eb5a2f84857df70a7d4a6a6ad461aca803fb9e"},
-]
-prettytable = [
-    {file = "prettytable-2.0.0-py3-none-any.whl", hash = "sha256:5dc7fcaca227f48deacd86958ae9d7b8c31a186fcb354bbb066763f20adf3eb9"},
-    {file = "prettytable-2.0.0.tar.gz", hash = "sha256:e37acd91976fe6119172771520e58d1742c8479703489321dc1d9c85e7259922"},
-]
-pyobjc-core = [
-    {file = "pyobjc-core-7.0.1.tar.gz", hash = "sha256:7213bfd48c49f5b4d479256924e0120d728ed449de8188cba9e204c434ed07f2"},
-    {file = "pyobjc_core-7.0.1-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:6f84a5744e44ec709daca1e66b95c3c010e4159bc2cfc442c27c0d28b0456eda"},
-    {file = "pyobjc_core-7.0.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:e2fdba7997d5c9d518256f9d2e9f7780fcc6332b0371207374f38d7e9fad7bc8"},
-    {file = "pyobjc_core-7.0.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:758cf96f3848c6e177d6ad94d44fec1b9ea5e32ca066513184d8f1e70d71ff6e"},
-    {file = "pyobjc_core-7.0.1-cp39-cp39-macosx_11_0_universal2.whl", hash = "sha256:61c756c9bd5c55e9137cf0549f1d931dd1e1bff30a1cc97e46e55b94d5dc5d97"},
-]
-pyobjc-framework-cocoa = [
-    {file = "pyobjc-framework-Cocoa-7.0.1.tar.gz", hash = "sha256:8a545b47b2021884bd8e5644ac32ee6d99a1f8e6a45cab3e6d1b999adf968630"},
-    {file = "pyobjc_framework_Cocoa-7.0.1-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:4675accc4720b42f456a35ba7cdd9e1cb44b9b84fcc600beef120ae05d2c5d27"},
-    {file = "pyobjc_framework_Cocoa-7.0.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:42e106c3d688e66b1032b0819daa842a78eff6f7646b5af4be8774d0c8f5e200"},
-    {file = "pyobjc_framework_Cocoa-7.0.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:8aa715fa1ff367330fc58eadc1747e222bdf854b9ece6936487c9c4f4e2627d3"},
-    {file = "pyobjc_framework_Cocoa-7.0.1-cp39-cp39-macosx_11_0_universal2.whl", hash = "sha256:1d9de6b0612a5e24899522a797425c834405a536db41ba06a19df01b7008eeae"},
-]
-pyobjc-framework-quartz = [
-    {file = "pyobjc-framework-Quartz-7.0.1.tar.gz", hash = "sha256:8d76cabfbae38102301f44f1edb3ab4c959f18ed0c828cfff1693a3c559945ef"},
-    {file = "pyobjc_framework_Quartz-7.0.1-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:fbf8d816da04f0705707906fb751bd360d652914ace3989ed6e55ff6a7a79c62"},
-    {file = "pyobjc_framework_Quartz-7.0.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:a1854a0b8baea76e6c43812ecf26dd6fc5a11e9cada212b36bf35e23e670750c"},
-    {file = "pyobjc_framework_Quartz-7.0.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:019982c0c1a74e68f29c9f961292d4c752a8fdd6d806197a73a41aa6c9fa00a9"},
-    {file = "pyobjc_framework_Quartz-7.0.1-cp39-cp39-macosx_11_0_universal2.whl", hash = "sha256:9be4d99d04abd9f9147cc9e83b87324efc0b832320caee310defc71798201816"},
-]
-pystray = [
-    {file = "pystray-0.17.2-py2.py3-none-any.whl", hash = "sha256:b8fa8a708744117112f4958cc5b887e2fcaeaa4c0b1e5de62cca74bfb4a1a18b"},
-    {file = "pystray-0.17.2-py3.8.egg", hash = "sha256:101e61be624b759e9faac2ecabb8713d9d22a6b57792b1c50c3197be62fa4a42"},
-    {file = "pystray-0.17.2.tar.gz", hash = "sha256:c8e2256fabfe803feab268e9af143ec3e8de32fc1ed652ba9f1b47bb3777d1e9"},
-]
-python-xlib = [
-    {file = "python-xlib-0.29.tar.gz", hash = "sha256:e4bcb756f4aa05be7b82ee21de0ba04d73414018727b42ebd9fbcf409ea75d13"},
-    {file = "python_xlib-0.29-py2.py3-none-any.whl", hash = "sha256:044095d1b1a5eab5a79f8d0b66f811a9ac6acd038dd3bae00cb3dbe90b32a7e3"},
-]
-requests = [
-    {file = "requests-2.25.1-py2.py3-none-any.whl", hash = "sha256:c210084e36a42ae6b9219e00e48287def368a26d03a048ddad7bfee44f75871e"},
-    {file = "requests-2.25.1.tar.gz", hash = "sha256:27973dd4a904a4f13b263a19c866c13b92a39ed1c964655f025f3f8d3d75b804"},
-]
-six = [
-    {file = "six-1.15.0-py2.py3-none-any.whl", hash = "sha256:8b74bedcbbbaca38ff6d7491d76f2b06b3592611af620f8426e82dddb04a5ced"},
-    {file = "six-1.15.0.tar.gz", hash = "sha256:30639c035cdb23534cd4aa2dd52c3bf48f06e5f4a941509c8bafd8ce11080259"},
-]
-tcping = [
-    {file = "tcping-0.1.1rc1-py2-none-any.whl", hash = "sha256:48ad03a463cf6d963454d45c199843dc0ad4fb0cd0dde6ab648e35364cbfe34a"},
-    {file = "tcping-0.1.1rc1-py2.7.egg", hash = "sha256:10843d60e2c3abbdf1b4aed0d1133c25d7bc15310d61fd8a0dbd91236d646c29"},
-    {file = "tcping-0.1.1rc1.tar.gz", hash = "sha256:557d5e928601e5a31e55abe20c6b9fff18bdc74a1e1d620d6b28b2f7c7a26606"},
-]
-urllib3 = [
-    {file = "urllib3-1.26.2-py2.py3-none-any.whl", hash = "sha256:d8ff90d979214d7b4f8ce956e80f4028fc6860e4431f731ea4a8c08f23f99473"},
-    {file = "urllib3-1.26.2.tar.gz", hash = "sha256:19188f96923873c92ccb987120ec4acaa12f0461fa9ce5d3d0772bc965a39e08"},
-]
-wcwidth = [
-    {file = "wcwidth-0.2.5-py2.py3-none-any.whl", hash = "sha256:beb4802a9cebb9144e99086eff703a642a13d6a0052920003a230f3294bbe784"},
-    {file = "wcwidth-0.2.5.tar.gz", hash = "sha256:c4d647b99872929fdb7bdcaa4fbe7f01413ed3d98077df798530e5b04f116c83"},
-]
-websocket-client = [
-    {file = "websocket_client-0.57.0-py2.py3-none-any.whl", hash = "sha256:0fc45c961324d79c781bab301359d5a1b00b13ad1b10415a4780229ef71a5549"},
-    {file = "websocket_client-0.57.0.tar.gz", hash = "sha256:d735b91d6d1692a6a181f2a8c9e0238e5f6373356f561bb9dc4c7af36f452010"},
-]
diff --git a/pyproject.toml b/pyproject.toml
index 2c21442..5e4b888 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -13,6 +13,11 @@ requests = "^2.25.1"
 pystray = "^0.17.2"
 
 [tool.poetry.dev-dependencies]
+Nuitka = "^0.6.10"
+
+[tool.poetry.scripts]
+client = "munyal:run_client"
+config = "munyal:run_config"
 
 [build-system]
 requires = ["poetry-core>=1.0.0"]
diff --git a/requirements.txt b/requirements.txt
deleted file mode 100644
index 02c6b3e..0000000
--- a/requirements.txt
+++ /dev/null
@@ -1,4 +0,0 @@
-websocket-client="*"
-tcping="*"
-requests="*"
-pystray="*"