Make packages.yml flat

This commit is contained in:
2024-05-08 11:52:10 +02:00
parent 679ddf22d6
commit f4228630b0
3 changed files with 461 additions and 464 deletions

View File

@@ -1,4 +1,3 @@
packages:
kernel: kernel:
archlinux: archlinux:
- linux-zen - linux-zen

View File

@@ -158,12 +158,10 @@
- name: load package list - name: load package list
include_vars: include_vars:
file: packages.yml file: packages.yml
name: defined_packages
- set_fact: - set_fact:
defined_packages: "{{ packages }}" distro_packages: "{{ defined_packages|json_query('*.%s'|format(distro)) }}"
- set_fact:
distro_packages: "{{ packages|json_query('*.%s'|format(distro)) }}"
- name: check list - name: check list
assert: assert:
@@ -171,7 +169,7 @@
- name: install packages - name: install packages
package: package:
name: "{{ packages|json_query(query) }}" name: "{{ defined_packages|json_query(query) }}"
state: present state: present
become: true become: true
vars: vars:

View File

@@ -19,7 +19,7 @@ packages_to_remove=()
readarray -d $'\0' -t packages_to_remove < <(comm --zero-terminated -13 \ readarray -d $'\0' -t packages_to_remove < <(comm --zero-terminated -13 \
<(cat \ <(cat \
<(<packages.yml yaml2json | jq --raw-output0 '.packages | map(.archlinux) | flatten[]') \ <(<packages.yml yaml2json | jq --raw-output0 'map(.archlinux) | flatten[]') \
<(for dep in "${aurdeps[@]}" ; do printf '%s\0' "${dep}" ; done) \ <(for dep in "${aurdeps[@]}" ; do printf '%s\0' "${dep}" ; done) \
| sort -zu) \ | sort -zu) \
<(pacman -Qq --explicit | xargs -I "{}" printf '%s\0' "{}" | sort -zu) \ <(pacman -Qq --explicit | xargs -I "{}" printf '%s\0' "{}" | sort -zu) \