From 65f44a84546a544d54b55e3867250f0b4152641f Mon Sep 17 00:00:00 2001 From: "Kenneth Benzie (Benie)" Date: Sun, 18 Jun 2023 23:47:48 +0100 Subject: [PATCH] Install webcatalog icon from AppImage --- roles/obsidian/tasks/Linux.yaml | 2 +- roles/webcatalog/tasks/Linux.yaml | 27 ++++++++++++++++++++++++++- 2 files changed, 27 insertions(+), 2 deletions(-) diff --git a/roles/obsidian/tasks/Linux.yaml b/roles/obsidian/tasks/Linux.yaml index e9d7a61..7a4aecc 100644 --- a/roles/obsidian/tasks/Linux.yaml +++ b/roles/obsidian/tasks/Linux.yaml @@ -32,7 +32,7 @@ state: directory with_items: - '{{ansible_env.HOME}}/.local/bin' - - '{{ansible_env.HOME}}/.local/share/icon/hicolor/512x512/apps' + - '{{ansible_env.HOME}}/.local/share/icons/hicolor/512x512/apps' - name: create symlink file: diff --git a/roles/webcatalog/tasks/Linux.yaml b/roles/webcatalog/tasks/Linux.yaml index 05d2c51..0ecb524 100644 --- a/roles/webcatalog/tasks/Linux.yaml +++ b/roles/webcatalog/tasks/Linux.yaml @@ -16,6 +16,7 @@ appimage: 'WebCatalog-{{releases[0].version}}.AppImage' - set_fact: filepath: '{{ansible_env.HOME}}/.local/bin/{{appimage}}' + iconpath: 'share/icons/hicolor/512x512/apps/webcatalog.png' - set_fact: needs_installed: @@ -28,13 +29,37 @@ dest: '{{ansible_env.HOME}}/.local/bin/{{appimage}}' mode: '0755' +- name: create directories + file: + path: '{{item}}' + state: directory + with_items: + - '{{ansible_env.HOME}}/.local/bin' + - '{{ansible_env.HOME}}/.local/share/icons/hicolor/512x512/apps' + - name: create symlink file: src: '{{filepath}}' dest: '{{ansible_env.HOME}}/.local/bin/WebCatalog' state: link -# TODO: icon for desktop file +- name: extract squashfs-root for app icon + when: needs_installed + command: + cmd: '{{ansible_env.HOME}}/.local/bin/WebCatalog --appimage-extract' + chdir: '/tmp' + +- name: copy icon file + when: needs_installed + copy: + src: '/tmp/squashfs-root/usr/{{iconpath}}' + dest: '{{ansible_env.HOME}}/.local/{{iconpath}}' + +- name: remove squashfs-root directory + when: needs_installed + file: + path: '/tmp/squashfs-root' + state: absent - name: create desktop file template: