roundabout,
created on Thursday, 19 December 2024, 18:36:09 (1734633369),
received on Thursday, 19 December 2024, 18:36:12 (1734633372)
Author identity: vlad <vlad.muntoiu@gmail.com>
9179fa4d81479bcd53e1605fdd9b9982728a6c3f
com.roundabout_host.Izvor.yaml
@@ -6,6 +6,7 @@ command: izvor
finish-args: - --share=network - --filesystem=home - --filesystem=host- --socket=x11 - --socket=wayland - --filesystem=xdg-config/fontconfig:ro
@@ -20,6 +21,8 @@ finish-args:
build-options: build-args: - --share=network environment: PYTHONPATH: "/app/lib/python3.12/site-packages:${PYTHONPATH}"modules: - name: izvor buildsystem: simple
@@ -34,3 +37,11 @@ modules:
sources: - type: dir path: src - name: izvor_utils buildsystem: simple build-commands: #- mkdir -p /app/lib/python3.12/site-packages/izvor_utils - cp -r . /app/lib/python3.12/site-packages/izvor_utils/ sources: - type: dir path: izvor_utils
izvor_utils/__init__.py
@@ -0,0 +1,33 @@
import os import subprocess class Provider: def __init__(self, name, icon, description, config): self.name = name self.icon = icon self.description = description self.config = config async def search(self, query): return yield def launch_command(command, shell=False): if os.getenv("FLATPAK_SANDBOX_DIR"): if shell: command = ["sh", "-c", command] subprocess.run(["flatpak-spawn", "--host"] + command) else: if shell: subprocess.run(command, shell=True) else: subprocess.run(command) def xdg_open(path): launch_command(["xdg-open", path]) def run_desktop_entry(app_info): launch_command(["gio", "launch", app_info.get_filename()])
src/__init__.py
@@ -414,7 +414,11 @@ class Izvor(Gtk.Application):
rows += 1 def open_provider_directory(widget): subprocess.Popen(["xdg-open", str(self.USER_PROVIDERS)])provider_directory = str(self.USER_PROVIDERS) if os.getenv("FLATPAK_SANDBOX_DIR"): subprocess.Popen(["flatpak-spawn", "--host", "xdg-open", provider_directory]) else: subprocess.Popen(["xdg-open", provider_directory])providers_builder.connect_signals( {
@@ -488,7 +492,10 @@ class Izvor(Gtk.Application):
response = dialog.run() if response == 0: # Open config subprocess.Popen(["xdg-open", str(self.USER_PROVIDER_CONFIGS / f"{get_parent_package(filename).stem}.json")])if os.getenv("FLATPAK_SANDBOX_DIR"): subprocess.Popen(["flatpak-spawn", "--host", "xdg-open", str(self.USER_PROVIDER_CONFIGS / f"{get_parent_package(filename).stem}.json")]) else: subprocess.Popen(["xdg-open", str(self.USER_PROVIDER_CONFIGS / f"{get_parent_package(filename).stem}.json")])self.kill() elif response == 1:
@@ -515,6 +522,7 @@ class Izvor(Gtk.Application):
if __name__ == "__main__": izvor = Izvor() izvor.window.show_all() izvor.window.present()try: izvor.loop.run_forever() finally: