From ab05cfde3045f73c762c4067193e569cd6dba0f8 Mon Sep 17 00:00:00 2001 From: Qubasa Date: Tue, 6 Feb 2024 20:13:18 +0700 Subject: [PATCH] clan_manager: Implemented machine_icon, machine_description --- pkgs/clan-cli/clan_cli/flakes/inspect.py | 4 ++++ .../clan_vm_manager/views/list.py | 17 ++++++++++++----- 2 files changed, 16 insertions(+), 5 deletions(-) diff --git a/pkgs/clan-cli/clan_cli/flakes/inspect.py b/pkgs/clan-cli/clan_cli/flakes/inspect.py index f5e34127..3e2c45ea 100644 --- a/pkgs/clan-cli/clan_cli/flakes/inspect.py +++ b/pkgs/clan-cli/clan_cli/flakes/inspect.py @@ -24,6 +24,10 @@ class FlakeConfig: revision: str | None vm: VmConfig + def __post_init__(self) -> None: + if isinstance(self.vm, dict): + self.vm = VmConfig(**self.vm) + def run_cmd(cmd: list[str]) -> str: proc = run(cmd) diff --git a/pkgs/clan-vm-manager/clan_vm_manager/views/list.py b/pkgs/clan-vm-manager/clan_vm_manager/views/list.py index 06beb4b7..4033b898 100644 --- a/pkgs/clan-vm-manager/clan_vm_manager/views/list.py +++ b/pkgs/clan-vm-manager/clan_vm_manager/views/list.py @@ -109,14 +109,21 @@ class ClanList(Gtk.Box): row.set_title_selectable(True) # Subtitle - row.set_subtitle(flake.clan_name) + if flake.vm.machine_description: + row.set_subtitle(flake.vm.machine_description) + else: + row.set_subtitle(flake.clan_name) row.set_subtitle_lines(1) - # # Avatar + # Avatar avatar = Adw.Avatar() - if flake.icon: - avatar.set_custom_image(Gdk.Texture.new_from_filename(flake.icon)) - if not flake.icon: + + machine_icon = flake.vm.machine_icon + if machine_icon: + avatar.set_custom_image(Gdk.Texture.new_from_filename(str(machine_icon))) + elif flake.icon: + avatar.set_custom_image(Gdk.Texture.new_from_filename(str(flake.icon))) + else: avatar.set_text(flake.clan_name + " " + flake.flake_attr) avatar.set_show_initials(True)