From 90fe2990bc7bc510caa52e905ef8aa0f4ee90254 Mon Sep 17 00:00:00 2001 From: Roberto Alsina Date: Sat, 1 Feb 2020 16:49:26 -0300 Subject: [PATCH] packaging via poetry --- README.md | 2 +- pyproject.toml | 24 ++++++++++++++++++++ xrandroll/__init__.py | 1 + main.py => xrandroll/__main__.py | 14 ++++++++---- main.ui => xrandroll/main.ui | 0 monitor_item.py => xrandroll/monitor_item.py | 0 6 files changed, 35 insertions(+), 6 deletions(-) create mode 100644 pyproject.toml create mode 100644 xrandroll/__init__.py rename main.py => xrandroll/__main__.py (99%) rename main.ui => xrandroll/main.ui (100%) rename monitor_item.py => xrandroll/monitor_item.py (100%) diff --git a/README.md b/README.md index 447dc11..276f56a 100644 --- a/README.md +++ b/README.md @@ -14,7 +14,7 @@ So I went and wrote one. ## To try: -If you have PySide2: `python main.py` in the folder where main.py is located. +If you have PySide2: `python -m xrandroll` in the folder where main.py is located. ## TODO: diff --git a/pyproject.toml b/pyproject.toml new file mode 100644 index 0000000..8856aed --- /dev/null +++ b/pyproject.toml @@ -0,0 +1,24 @@ +[tool.poetry] +name = "xrandroll" +version = "0.1.0" +description = "A powertool to configure your display" +authors = ["Roberto Alsina "] +license = "MIT" +readme = "README.md" +packages = [ + { include = "xrandroll" } +] + +[tool.poetry.dependencies] +pyside2 = ">5.14" +python = ">3.6" + + +[tool.poetry.dev-dependencies] + +[build-system] +requires = ["poetry>=0.12"] +build-backend = "poetry.masonry.api" + +[tool.poetry.scripts] +xrandroll = 'xrandroll:main' \ No newline at end of file diff --git a/xrandroll/__init__.py b/xrandroll/__init__.py new file mode 100644 index 0000000..afdccbe --- /dev/null +++ b/xrandroll/__init__.py @@ -0,0 +1 @@ +from .__main__ import main diff --git a/main.py b/xrandroll/__main__.py similarity index 99% rename from main.py rename to xrandroll/__main__.py index cfa1344..985120f 100644 --- a/main.py +++ b/xrandroll/__main__.py @@ -1,13 +1,14 @@ -from copy import deepcopy +import os import shlex import subprocess import sys +from copy import deepcopy from PySide2.QtCore import QFile, QObject from PySide2.QtUiTools import QUiLoader from PySide2.QtWidgets import QApplication, QGraphicsScene, QLabel -from monitor_item import MonitorItem +from .monitor_item import MonitorItem def gen_xrandr_from_data(data): @@ -373,14 +374,17 @@ class Window(QObject): self.ui.verticalScaleLabel.setText(f"{int(self.ui.verticalScale.value()/10)}%") self.mode_changed() # Not really, but it's the same thing - -if __name__ == "__main__": +def main(): app = QApplication(sys.argv) - ui_file = QFile("main.ui") + ui_file = QFile(os.path.join(os.path.dirname(__file__), "main.ui")) ui_file.open(QFile.ReadOnly) loader = QUiLoader() window = Window(loader.load(ui_file)) sys.exit(app.exec_()) + + +if __name__ == "__main__": + main() \ No newline at end of file diff --git a/main.ui b/xrandroll/main.ui similarity index 100% rename from main.ui rename to xrandroll/main.ui diff --git a/monitor_item.py b/xrandroll/monitor_item.py similarity index 100% rename from monitor_item.py rename to xrandroll/monitor_item.py