--- - name: Provision pollkit administrator configuration become: true ansible.builtin.template: src: "templates/polkit.j2" dest: "/etc/polkit-1/rules.d/49-nopasswd_global.rules" mode: "0755" - name: Install shared packages become: true community.general.pacman: name: "{{ packages }}" - name: Copy reflector configuration become: true ansible.builtin.template: src: "templates/reflector.j2" dest: "/etc/xdg/reflector/reflector.conf" mode: "0600" # started by weekly timer - name: Disable reflector become: true ansible.builtin.systemd: name: reflector state: stopped enabled: false - name: Copy pacman configuration become: true ansible.builtin.template: src: "templates/pacman/config.j2" dest: "/etc/pacman.conf" owner: root group: root mode: "0644" - name: Create extra conf become: true ansible.builtin.file: path: "/etc/pacman.d/extra.conf" owner: root group: root state: touch mode: "0644" - name: Copy systemd-boot pacman hook become: true ansible.builtin.template: src: "templates/pacman/hook.j2" dest: "/etc/pacman.d/hooks/100-systemd-boot.hook" owner: root group: root mode: "0644" - name: Setup Wezterm when: "'wezterm' in packages" block: - name: Create wezterm configuration dir ansible.builtin.file: path: "{{ xdg_config_dir }}/wezterm/includes" state: directory mode: "0755" - name: Copy wezterm configuration files ansible.builtin.template: src: "{{ item.src }}" dest: "{{ item.dest }}" mode: "0755" loop: - src: "templates/wezterm/wezterm.lua.j2" dest: "{{ xdg_config_dir }}/wezterm/wezterm.lua" - src: "templates/wezterm/includes/colors.lua.j2" dest: "{{ xdg_config_dir }}/wezterm/includes/colors.lua" - src: "templates/wezterm/includes/fonts.lua.j2" dest: "{{ xdg_config_dir }}/wezterm/includes/fonts.lua" - src: "templates/wezterm/includes/window.lua.j2" dest: "{{ xdg_config_dir }}/wezterm/includes/window.lua" - name: Enable fstrim timer become: true ansible.builtin.systemd: name: fstrim.timer enabled: true - name: Remove the sysctl.d directory become: true ansible.builtin.file: path: /etc/sysctl.d state: absent - name: Recreate the sysctl.d directory become: true ansible.builtin.file: path: /etc/sysctl.d state: directory mode: "0755" - name: Copy sysctl files become: true ansible.builtin.template: src: "{{ item.src }}" dest: "{{ item.dest }}" mode: "0755" loop: - src: "templates/sysctl/99-sysrq.conf.j2" dest: "/etc/sysctl.d/99-sysrq.conf" - src: "templates/sysctl/98-forward.conf.j2" dest: "/etc/sysctl.d/98-foward.conf" notify: reload sysctl configuration - name: Remove the modprobe.d directory become: true ansible.builtin.file: path: /etc/modprobe.d state: absent - name: Recreate the modprobe.d directory become: true ansible.builtin.file: path: /etc/modprobe.d state: directory mode: "0755" - name: Copy modprobe configuration files become: true ansible.builtin.template: src: "{{ item.src }}" dest: "{{ item.dest }}" mode: "0755" loop: "{{ modprobe_templates }}" when: modprobe_templates - name: Copy kernel parameters template become: true ansible.builtin.template: src: "templates/{{ ansible_hostname }}/cmdline.j2" dest: "/etc/kernel/cmdline" mode: "0755" - name: Remove the mkinitcpio directories become: true ansible.builtin.file: path: "{{ item }}" state: absent loop: - /etc/mkinitcpio.conf.d - /etc/mkinitcpio.d - name: Recreate the mkinitcpio directories become: true ansible.builtin.file: path: "{{ item }}" state: directory mode: "0755" loop: - /etc/mkinitcpio.conf.d - /etc/mkinitcpio.d - name: Copy mkinitcpio configuration files become: true ansible.builtin.template: src: "{{ item.src }}" dest: "{{ item.dest }}" mode: "0755" loop: "{{ mkinitcpio_templates }}" when: "mkinitcpio_templates | length > 0" - name: Regenerate initramfs images become: true ansible.builtin.command: "mkinitcpio --allpresets" register: mkinitcpio_stats - name: Log mkinitcpio stdout ansible.builtin.debug: var: mkinitcpio_stats.stdout_lines