SHA256
1
0

Simplify var names in apps role

This commit is contained in:
2026-01-30 01:09:52 -05:00
parent 6d38e1dc5c
commit 10e0d7ad9c
16 changed files with 62 additions and 29 deletions

View File

@@ -2,6 +2,7 @@
dnf_remove_repos: dnf_remove_repos:
- google-chrome - google-chrome
dnf_remove: dnf_remove:
- abrt - abrt
- anaconda-live - anaconda-live
@@ -33,11 +34,10 @@ apps:
- mullvad-vpn - mullvad-vpn
- nautilus-python - nautilus-python
- pinta - pinta
- profile-sync-daemon
- python3-virtualenv - python3-virtualenv
- python3-virtualenvwrapper - python3-virtualenvwrapper
- remmina - remmina
- rpmfusion-free-release - https://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-{{ ansible_facts['distribution_major_version'] }}.noarch.rpm
- setroubleshoot - setroubleshoot
- ShellCheck - ShellCheck
- snapd - snapd

View File

@@ -0,0 +1,2 @@
apps_group:
- profile-sync-daemon

View File

@@ -0,0 +1,3 @@
apps_group:
-
# - profile-sync-daemon

View File

@@ -1,4 +1,4 @@
cargo_packages_app: cargo:
- aichat - aichat
configs: configs:

View File

@@ -1,4 +1,4 @@
services: system_services:
- btrbk.timer - btrbk.timer
configs: configs:

View File

@@ -1,4 +1,4 @@
services: system_services:
- btrfs-balance.timer - btrfs-balance.timer
- btrfs-scrub.timer - btrfs-scrub.timer
- btrfs-trim.timer - btrfs-trim.timer

View File

@@ -1,4 +1,4 @@
dnf_add_repos_app: repos:
- name: code - name: code
description: Visual Studio Code description: Visual Studio Code
baseurl: https://packages.microsoft.com/yumrepos/vscode baseurl: https://packages.microsoft.com/yumrepos/vscode

View File

@@ -1,2 +1,2 @@
services: system_services:
- dnf-automatic.timer - dnf-automatic.timer

View File

@@ -1,7 +1,7 @@
dnf_add_copr_app: copr:
- alternateved/keyd - alternateved/keyd
services: system_services:
- keyd - keyd
configs: configs:

View File

@@ -1,4 +1,4 @@
dnf_add_repos_app: repos:
- name: jriver - name: jriver
description: JRiver Media Center by BryanC description: JRiver Media Center by BryanC
baseurl: https://repos.bryanroessler.com/jriver baseurl: https://repos.bryanroessler.com/jriver

View File

@@ -1,3 +1,3 @@
dnf_add_repofiles_app: repofiles:
- name: Mullvad VPN - name: Mullvad VPN
url: https://repository.mullvad.net/rpm/stable/mullvad.repo url: https://repository.mullvad.net/rpm/stable/mullvad.repo

View File

@@ -1,2 +1,2 @@
services: user_services:
- psd.service - psd.service

View File

@@ -1,7 +1,7 @@
apps_app: packages:
- "https://dl4jz3rbrsfum.cloudfront.net/software/PPL_64bit_v1.4.1.rpm" - "https://dl4jz3rbrsfum.cloudfront.net/software/PPL_64bit_v1.4.1.rpm"
services: system_services:
- pwrstatd.service - pwrstatd.service
configs: configs:

View File

@@ -1,2 +1,2 @@
services: system_services:
- tailscaled.service - tailscaled.service

View File

@@ -1,20 +1,41 @@
--- ---
- name: Load per-app configuration files
ansible.builtin.include_vars:
file: "{{ role_path }}/{{ item }}.yml"
name: "app_{{ item }}"
loop: "{{ ((apps | default([])) + (apps_group | default([]))) | select | list }}"
failed_when: false
- name: Merge app configuration
ansible.builtin.set_fact:
apps_copr: "{{ apps_copr | default([]) + (lookup('vars', 'app_' + item, default={}).copr | default([])) }}"
apps_repos: "{{ apps_repos | default([]) + (lookup('vars', 'app_' + item, default={}).repos | default([])) }}"
apps_repofiles: "{{ apps_repofiles | default([]) + (lookup('vars', 'app_' + item, default={}).repofiles | default([])) }}"
apps_packages: "{{ apps_packages | default([]) + (lookup('vars', 'app_' + item, default={}).packages | default([])) }}"
apps_cargo: "{{ apps_cargo | default([]) + (lookup('vars', 'app_' + item, default={}).cargo | default([])) }}"
apps_system_services: "{{ apps_system_services | default([]) + (lookup('vars', 'app_' + item, default={}).system_services | default([])) }}"
apps_user_services: "{{ apps_user_services | default([]) + (lookup('vars', 'app_' + item, default={}).user_services | default([])) }}"
loop: "{{ ((apps | default([])) + (apps_group | default([]))) | select | list }}"
- name: Enable COPR repositories - name: Enable COPR repositories
community.general.copr: community.general.copr:
name: "{{ item.repo | default(item) }}" name: "{{ item.repo | default(item) }}"
state: enabled state: enabled
loop: "{{ (dnf_add_copr | default([])) + (dnf_add_copr_group | default([])) + (dnf_add_copr_app | default([])) }}" loop: "{{ apps_copr | default([]) }}"
become: true become: true
- name: Add DNF repositories - name: Add DNF repositories
ansible.builtin.yum_repository: ansible.builtin.yum_repository:
name: "{{ item.name }}" name: "{{ item.name }}"
description: "{{ item.description | default(omit) }}" description: "{{ item.description | default(omit) }}"
baseurl: "{{ item.baseurl }}" baseurl: "{{ item.baseurl | default(omit) }}"
enabled: true metalink: "{{ item.metalink | default(omit) }}"
enabled: "{{ item.enabled | default(true) }}"
metadata_expire: "{{ item.metadata_expire | default(omit) }}"
gpgcheck: "{{ item.gpgcheck | default(true) }}" gpgcheck: "{{ item.gpgcheck | default(true) }}"
repo_gpgcheck: "{{ item.repo_gpgcheck | default(omit) }}"
gpgkey: "{{ item.gpgkey | default(omit) }}" gpgkey: "{{ item.gpgkey | default(omit) }}"
loop: "{{ (dnf_add_repos | default([])) + (dnf_add_repos_group | default([])) + (dnf_add_repos_app | default([])) }}" loop: "{{ (dnf_add_repos | default([])) + (apps_repos | default([])) }}"
become: true become: true
- name: Add DNF repository files - name: Add DNF repository files
@@ -24,7 +45,7 @@
owner: root owner: root
group: root group: root
mode: '0644' mode: '0644'
loop: "{{ (dnf_add_repofiles | default([])) + (dnf_add_repofiles_group | default([])) + (dnf_add_repofiles_app | default([])) }}" loop: "{{ apps_repofiles | default([]) }}"
become: true become: true
- name: Remove DNF repositories - name: Remove DNF repositories
@@ -43,9 +64,17 @@
become: true become: true
failed_when: false failed_when: false
- name: Install remote RPM packages (from URLs)
ansible.builtin.dnf:
name: "{{ apps_packages | default([]) | select('match', '^https?://') | list }}"
state: present
disable_gpg_check: true
become: true
when: (apps_packages | default([]) | select('match', '^https?://') | list) | length > 0
- name: Install DNF packages - name: Install DNF packages
ansible.builtin.dnf: ansible.builtin.dnf:
name: "{{ (apps | default([])) + (apps_group | default([])) + (apps_app | default([])) }}" name: "{{ ((apps | default([])) + (apps_group | default([])) + (apps_packages | default([]) | reject('match', '^https?://') | list)) | select | list }}"
state: present state: present
skip_broken: true skip_broken: true
become: true become: true
@@ -60,8 +89,7 @@
- name: Install cargo packages - name: Install cargo packages
ansible.builtin.command: ansible.builtin.command:
cmd: "cargo install {{ item }}" cmd: "cargo install {{ item }}"
loop: "{{ (cargo_packages | default([])) + (cargo_packages_group | default([])) + (cargo_packages_app | default([])) }}" loop: "{{ apps_cargo | default([]) }}"
when: ((cargo_packages | default([])) + (cargo_packages_group | default([])) + (cargo_packages_app | default([]))) | length > 0
register: apps_cargo_install_result register: apps_cargo_install_result
changed_when: "'Installing' in apps_cargo_install_result.stderr or 'Compiling' in apps_cargo_install_result.stderr" changed_when: "'Installing' in apps_cargo_install_result.stderr or 'Compiling' in apps_cargo_install_result.stderr"
failed_when: apps_cargo_install_result.rc != 0 and 'already exists' not in apps_cargo_install_result.stderr failed_when: apps_cargo_install_result.rc != 0 and 'already exists' not in apps_cargo_install_result.stderr
@@ -80,7 +108,7 @@
enabled: true enabled: true
state: started state: started
scope: system scope: system
loop: "{{ (services_system_enabled | default([])) + (services_system_enabled_group | default([])) + (services_system_enabled_app | default([])) }}" loop: "{{ (services_system_enabled | default([])) + (services_system_enabled_group | default([])) + (apps_system_services | default([])) }}"
become: true become: true
- name: Disable and stop system services - name: Disable and stop system services
@@ -89,7 +117,7 @@
enabled: false enabled: false
state: stopped state: stopped
scope: system scope: system
loop: "{{ (services_system_disabled | default([])) + (services_system_disabled_group | default([])) + (services_system_disabled_app | default([])) }}" loop: "{{ (services_system_disabled | default([])) + (services_system_disabled_group | default([])) }}"
become: true become: true
- name: Enable and start user services - name: Enable and start user services
@@ -98,12 +126,12 @@
enabled: true enabled: true
state: started state: started
scope: user scope: user
loop: "{{ (services_user_enabled | default([])) + (services_user_enabled_group | default([])) + (services_user_enabled_app | default([])) }}" loop: "{{ (services_user_enabled | default([])) + (services_user_enabled_group | default([])) + (apps_user_services | default([])) }}"
- name: Disable and stop user services - name: Disable and stop user services
ansible.builtin.systemd: ansible.builtin.systemd:
name: "{{ item }}" name: "{{ item }}"
enabled: false enabled: false
state: stopped state: stopped
scope: system scope: user
loop: "{{ (services_user_disabled | default([])) + (services_user_disabled_group | default([])) + (services_user_disabled_app | default([])) }}" loop: "{{ (services_user_disabled | default([])) + (services_user_disabled_group | default([])) }}"

View File

@@ -1,4 +1,4 @@
dnf_add_repos_app: repos:
- name: zsh-completions - name: zsh-completions
description: zsh-completions from openSUSE description: zsh-completions from openSUSE
baseurl: https://download.opensuse.org/repositories/shells:zsh-users:zsh-completions/Fedora_Rawhide/ baseurl: https://download.opensuse.org/repositories/shells:zsh-users:zsh-completions/Fedora_Rawhide/