68 lines
2 KiB
YAML
68 lines
2 KiB
YAML
---
|
|
- name: Install Mako package
|
|
ansible.builtin.package:
|
|
name: '{{ mako_package[ansible_distribution] | default("mako")}}'
|
|
state: present
|
|
become: true
|
|
|
|
- name: Create Mako config dirs
|
|
ansible.builtin.file:
|
|
path: '{{ ansible_user_dir ~ "/.config/mako" }}'
|
|
state: directory
|
|
mode: 0750
|
|
owner: '{{ ansible_user_uid }}'
|
|
group: '{{ ansible_user_gid }}'
|
|
|
|
- name: Render templates for Mako config file
|
|
ansible.builtin.template:
|
|
src: mako.j2
|
|
dest: '{{ ansible_user_dir}}/.config/mako/config'
|
|
owner: '{{ ansible_user_uid }}'
|
|
group: '{{ ansible_user_gid }}'
|
|
lstrip_blocks: yes
|
|
trim_blocks: yes
|
|
mode: 0640
|
|
register: config_file
|
|
|
|
- name: Copy Mako systemd service file
|
|
ansible.builtin.copy:
|
|
src: 'mako.service'
|
|
dest: '{{ ansible_user_dir }}/.config/systemd/user/'
|
|
mode: 0640
|
|
register: service_file
|
|
|
|
- block:
|
|
- name: Reload Systemd daemon
|
|
ansible.builtin.systemd:
|
|
scope: user
|
|
daemon-reload: true
|
|
|
|
- name: Activate Mako service
|
|
ansible.builtin.systemd:
|
|
name: 'mako.service'
|
|
scope: user
|
|
state: started
|
|
enabled: true
|
|
when: service_file is change and not ansible_check_mode
|
|
|
|
- name: Restart Mako service
|
|
ansible.builtin.systemd:
|
|
name: mako.service
|
|
state: restarted
|
|
scope: user
|
|
when: config_file is changed and not service_file is changed
|
|
|
|
- name: Render Mako keybinding for sway config file
|
|
ansible.builtin.template:
|
|
src: '{{ item }}.config.j2'
|
|
dest: '{{ ansible_user_dir ~ "/.config/sway/conf.d/" ~ item ~ ".config" }}'
|
|
owner: '{{ ansible_user_uid }}'
|
|
group: '{{ ansible_user_gid }}'
|
|
lstrip_blocks: true
|
|
trim_blocks: true
|
|
mode: 0640
|
|
validate: >-
|
|
sh -c "cat {{ansible_user_dir}}/.config/sway/conf.d/* %s > /tmp/sway; if sway --config /tmp/sway --validate 2>&1 | grep -q sway/config.c; then >&2 echo \"Error validating sway configuration\"; rm /tmp/sway; exit 1; else rm /tmp/sway; exit 0; fi"
|
|
loop:
|
|
- 51-mako_keybindings
|
|
any_errors_fatal: true
|