111 lines
2.5 KiB
YAML
111 lines
2.5 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"
|
|
with_items: "{{ keys }}"
|
|
|
|
- name: "Sign keys in pacman"
|
|
shell: "pacman-key --lsign-key {{ item }}"
|
|
when: "item not in pacman_keys.stdout"
|
|
with_items: "{{ 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"
|
|
with_items: "{{ 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"
|
|
with_items:
|
|
- 'archstrike-keyring'
|
|
|
|
- name: "Install ccache"
|
|
aur:
|
|
skip_installed: true
|
|
name: ccache
|
|
become: true
|
|
become_user: aur_builder
|
|
|
|
- name: Use ccache in makepkg
|
|
lineinfile:
|
|
path: /etc/makepkg.conf
|
|
state: present
|
|
regexp: '^BUILDENV='
|
|
line: 'BUILDENV=(!distcc color ccache check !sign)'
|
|
|
|
- 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
|