dotfiles/tasks/packages.yml

122 lines
2.6 KiB
YAML

- name: Define keys for pacman
set_fact:
keys:
- 1EDDE2CDFC025D17F6DA9EC0ADAE6AD28A8F901A # Sublime Text
- EF6E286DDA85EA2A4BA7DE684E2C6E8793298290 # Tor Browser
- 9D5F1C051D146843CDA4858BDE64825E7CBC0D51 # ArchStrike
- name: Install pacman config
template:
src: ./files/pacman.conf
dest: /etc/pacman.conf
mode: 0644
- name: Get installed pacman keys
shell: pacman-key --list-keys
register: pacman_keys
- name: Get known GPG keys
shell: gpg --list-keys
become: true
become_user: "{{ user }}"
register: known_gpg_keys
- name: Add keys to pacman
shell: pacman-key -r {{ item }}
when: item not in pacman_keys.stdout
loop: "{{ keys }}"
- name: Sign keys in pacman
shell: pacman-key --lsign-key {{ item }}
when: item not in pacman_keys.stdout
loop: "{{ keys }}"
- name: Add keys to local keyring
shell: gpg --recv-keys {{ item }}
become: true
become_user: "{{ user }}"
when: item not in known_gpg_keys.stdout
loop: "{{ keys }}"
- name: Create aur_builder user
user:
name: aur_builder
group: wheel
password_lock: true
shell: /usr/bin/nologin
- name: Allow aur_builder user to run pacman as root
lineinfile:
path: /etc/sudoers.d/11-install-aur_builder
line: "aur_builder ALL=(ALL) NOPASSWD: /usr/bin/pacman"
create: true
validate: visudo -cf %s
- name: Get installed packages
shell: pacman -Qq
become: true
become_user: aur_builder
register: installed_packages
- name: Install yay
aur:
skip_installed: true
name: yay
become: true
become_user: aur_builder
- name: Install additional repo keyrings
aur:
skip_installed: true
name: "{{ item }}"
become: true
become_user: aur_builder
when: item not in installed_packages.stdout_lines
loop:
- archstrike-keyring
- name: Install ccache
aur:
skip_installed: true
name: ccache
become: true
become_user: aur_builder
- name: Install makepkg tools
aur:
skip_installed: true
name: "{{ items }}"
become: true
become_user: aur_builder
when: item not in installed_packages.stdout_lines
loop:
- pbzip2
- zstd
- name: Install makepkg config
template:
src: ./files/makepkg.conf
dest: /etc/makepkg.conf
mode: 0644
- name: Install Reflector
aur:
skip_installed: true
name: reflector
become: true
become_user: aur_builder
- name: Install Reflector service
template:
src: ./files/reflector.service
dest: /etc/systemd/system/reflector.service
mode: 0644
owner: root
group: root
- name: Enable Reflector services
systemd:
name: reflector
enabled: true