From 203e6f58dde349fcc121d33d5d40f4f821f56766 Mon Sep 17 00:00:00 2001 From: Kris Lamoureux Date: Mon, 6 Dec 2021 00:57:07 -0500 Subject: [PATCH] Manage favorites menu --- inventory.yml | 5 +++++ roles/common/defaults/main.yml | 24 ++++++++++++++++++++++++ roles/common/tasks/development.yml | 1 + roles/common/tasks/gui.yml | 18 ++++++++++++++++++ roles/common/templates/favorites.sh.j2 | 18 ++++++++++++++++++ 5 files changed, 66 insertions(+) create mode 100644 roles/common/defaults/main.yml create mode 100644 roles/common/templates/favorites.sh.j2 diff --git a/inventory.yml b/inventory.yml index e42a341..1054525 100644 --- a/inventory.yml +++ b/inventory.yml @@ -3,3 +3,8 @@ development: true users: - name: vagrant + +favorites: + - firefox-esr.desktop + - terminator.desktop + - org.remmina.Remmina.desktop diff --git a/roles/common/defaults/main.yml b/roles/common/defaults/main.yml new file mode 100644 index 0000000..432dcb8 --- /dev/null +++ b/roles/common/defaults/main.yml @@ -0,0 +1,24 @@ +# Follows homelab package list: +# https://github.com/krislamo/moxie/blob/master/roles/base/defaults/main.yml +moxie_packages: + - cryptsetup + - curl + - dnsutils + - hashdeep + - htop + - jq + - kpartx + - ncdu + - rsync + - screen + - strace + - tree + - vim + - wget + +packages: + - "{{ moxie_packages }}" + - firefox-esr + - meld + - remmina + - terminator diff --git a/roles/common/tasks/development.yml b/roles/common/tasks/development.yml index ca18c63..1e14138 100644 --- a/roles/common/tasks/development.yml +++ b/roles/common/tasks/development.yml @@ -8,6 +8,7 @@ apt: name: fasttrack-archive-keyring state: present + update_cache: true - name: Enable fasttrack copy: diff --git a/roles/common/tasks/gui.yml b/roles/common/tasks/gui.yml index f436068..ae26453 100644 --- a/roles/common/tasks/gui.yml +++ b/roles/common/tasks/gui.yml @@ -20,3 +20,21 @@ lookandfeeltool -a $(lookandfeeltool --list | grep dark) fi loop: "{{ users }}" + +- name: Install packages + apt: + name: "{{ item }}" + loop: "{{ packages }}" + +- name: Install sqlite3 + apt: + name: sqlite3 + state: present + +- name: Change favorites menu + template: + src: favorites.sh.j2 + dest: "/home/{{ item.name }}/.config/autostart-scripts/favorites.sh" + mode: a+x + loop: "{{ users }}" + tags: debug diff --git a/roles/common/templates/favorites.sh.j2 b/roles/common/templates/favorites.sh.j2 new file mode 100644 index 0000000..2fe9f9d --- /dev/null +++ b/roles/common/templates/favorites.sh.j2 @@ -0,0 +1,18 @@ +#!/bin/bash + +sqlite3 ~/.local/share/kactivitymanagerd/resources/database <<-EOF + CREATE TEMPORARY TABLE FavoritesList (usedActivity TEXT, initiatingAgent TEXT, targettedResource TEXT); + INSERT INTO FavoritesList (usedActivity, initiatingAgent, targettedResource) + VALUES +{% for item in favorites %} + (":global", "org.kde.plasma.favorites.applications", "{{ item }}"){{ "," if not loop.last else ";" }} +{% endfor %} + + INSERT INTO ResourceLink (usedActivity, initiatingAgent, targettedResource) + SELECT f.usedActivity, f.initiatingAgent, f.targettedResource + FROM FavoritesList AS f + WHERE f.targettedResource NOT IN (SELECT targettedResource FROM ResourceLink); + + DELETE FROM ResourceLink + WHERE targettedResource NOT IN (SELECT targettedResource FROM FavoritesList); +EOF