From 3f3ac99fb759adae6c418a134612ef29edb44f85 Mon Sep 17 00:00:00 2001 From: Samuel James Date: Thu, 3 Sep 2026 15:46:31 +0000 Subject: [PATCH] thinkcenter-kdenlive: verify via dpkg not GUI binary (kdenlive --version aborts w/o X display) --- .../playbooks/thinkcenter-kdenlive.yml | 22 ++++++++++++++----- 1 file changed, 16 insertions(+), 6 deletions(-) diff --git a/life-church/playbooks/thinkcenter-kdenlive.yml b/life-church/playbooks/thinkcenter-kdenlive.yml index 0f78264..a4a8cb7 100644 --- a/life-church/playbooks/thinkcenter-kdenlive.yml +++ b/life-church/playbooks/thinkcenter-kdenlive.yml @@ -148,9 +148,17 @@ ansible.builtin.debug: msg: "Full set failed (likely libavcodec-extra conflict); installed Kdenlive core. Add codecs manually if a clip won't import." - - name: "[verify] kdenlive binary present + version" - ansible.builtin.command: kdenlive --version - register: kden_ver + # Verify via package DB, NOT by running the binary: kdenlive is a Qt GUI app + # and `kdenlive --version` aborts (rc=-6) when there's no X display over SSH. + - name: "[verify] Query kdenlive package status" + ansible.builtin.command: dpkg-query -W -f='${Status} ${Version}' kdenlive + register: kden_pkg + changed_when: false + failed_when: false + + - name: "[verify] kdenlive binary present on PATH" + ansible.builtin.command: which kdenlive + register: kden_bin changed_when: false failed_when: false @@ -163,9 +171,10 @@ - name: "[verify] Assert Kdenlive + MLT engine installed" ansible.builtin.assert: that: - - kden_ver.rc == 0 + - "'install ok installed' in (kden_pkg.stdout | default(''))" + - kden_bin.rc == 0 - melt_which.rc == 0 - fail_msg: "Kdenlive or its MLT engine (melt) is missing. version rc={{ kden_ver.rc }}, melt rc={{ melt_which.rc }}" + fail_msg: "Kdenlive/MLT missing. pkg='{{ kden_pkg.stdout | default('') }}', bin rc={{ kden_bin.rc }}, melt rc={{ melt_which.rc }}" success_msg: "Kdenlive + MLT engine present." - name: "[report] Kdenlive summary" @@ -173,6 +182,7 @@ msg: - "===== thinkcenter Kdenlive =====" - "packages changed this run : {{ kden_install.changed | default(kden_install_fallback.changed | default(false)) }}" - - "Kdenlive version : {{ kden_ver.stdout | default('n/a') | trim }}" + - "Kdenlive package : {{ kden_pkg.stdout | default('n/a') | trim }}" + - "kdenlive binary : {{ kden_bin.stdout | default('n/a') | trim }}" - "MLT renderer (melt) : {{ melt_which.stdout | default('n/a') | trim }}" - "NOTE: Ubuntu ships Kdenlive 23.08 (native). For the newest release use the official AppImage instead."