From d90c2404cd145035dbd906d71e4eb36cf07e8f45 Mon Sep 17 00:00:00 2001 From: Jeena Date: Tue, 3 Jun 2025 13:59:13 +0900 Subject: [PATCH] Fix packaging --- pyproject.toml | 6 +++++- src/recoder/app.py | 7 ++++--- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index c116134..5efafd6 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -18,6 +18,10 @@ build-backend = "setuptools.build_meta" [tool.setuptools] package-dir = {"" = "src"} +include-package-data = true [tool.setuptools.packages.find] -where = ["src"] \ No newline at end of file +where = ["src"] + +[tool.setuptools.package-data] +recoder = ["resources.gresource"] \ No newline at end of file diff --git a/src/recoder/app.py b/src/recoder/app.py index 86a6b39..557332a 100755 --- a/src/recoder/app.py +++ b/src/recoder/app.py @@ -7,12 +7,13 @@ gi.require_version('Gtk', '4.0') gi.require_version('Adw', '1') from gi.repository import Adw, Gio +from importlib.resources import files Adw.init() def load_resources(): - resource_path = os.path.join(os.path.dirname(__file__), "../resources/resources.gresource") - resource = Gio.Resource.load(resource_path) + resource_path = files("recoder").joinpath("resources.gresource") + resource = Gio.Resource.load(str(resource_path)) Gio.resources_register(resource) def main(): @@ -28,7 +29,7 @@ def main(): def do_activate(self): if not self.window: - self.window = RecoderWindow(application=self) + self.window = RecoderWindow(self) self.window.window.present() app = RecoderApp()