Files
infra/ansible/roles/profile_desktop_i3/tasks/main.yml
2026-03-16 17:15:54 +01:00

118 lines
3.6 KiB
YAML

---
- name: Ensure config directories exist
ansible.builtin.file:
path: "{{ item }}"
state: directory
owner: "{{ username }}"
group: "{{ user_group }}"
mode: "0755"
loop:
- "{{ user_home }}/.config"
- "{{ user_home }}/.config/i3"
- "{{ user_home }}/.config/i3blocks"
- "{{ user_home }}/.config/dunst"
- "{{ user_home }}/.config/alacritty"
- "{{ user_home }}/.config/Thunar"
- "{{ user_home }}/.config/rofi"
- name: Enable gnome-keyring PAM auth hook
ansible.builtin.lineinfile:
path: /etc/pam.d/login
insertafter: '^auth\s+include\s+system-local-login$'
line: "auth optional pam_gnome_keyring.so"
state: present
- name: Enable gnome-keyring PAM session hook
ansible.builtin.lineinfile:
path: /etc/pam.d/login
insertafter: '^session\s+include\s+system-local-login$'
line: "session optional pam_gnome_keyring.so auto_start"
state: present
- name: Copy i3 config
ansible.builtin.copy:
src: "{{ playbook_dir }}/../dotfiles/desktop/.config/i3/"
dest: "{{ user_home }}/.config/i3/"
owner: "{{ username }}"
group: "{{ user_group }}"
mode: preserve
- name: Copy i3blocks config
ansible.builtin.copy:
src: "{{ playbook_dir }}/../dotfiles/desktop/.config/i3blocks/"
dest: "{{ user_home }}/.config/i3blocks/"
owner: "{{ username }}"
group: "{{ user_group }}"
mode: preserve
- name: Copy dunst config
ansible.builtin.copy:
src: "{{ playbook_dir }}/../dotfiles/desktop/.config/dunst/"
dest: "{{ user_home }}/.config/dunst/"
owner: "{{ username }}"
group: "{{ user_group }}"
mode: preserve
- name: Copy alacritty config
ansible.builtin.copy:
src: "{{ playbook_dir }}/../dotfiles/desktop/.config/alacritty/"
dest: "{{ user_home }}/.config/alacritty/"
owner: "{{ username }}"
group: "{{ user_group }}"
mode: preserve
- name: Copy Thunar config
ansible.builtin.copy:
src: "{{ playbook_dir }}/../dotfiles/desktop/.config/Thunar/"
dest: "{{ user_home }}/.config/Thunar/"
owner: "{{ username }}"
group: "{{ user_group }}"
mode: preserve
- name: Copy rofi config
ansible.builtin.copy:
src: "{{ playbook_dir }}/../dotfiles/desktop/.config/rofi/"
dest: "{{ user_home }}/.config/rofi/"
owner: "{{ username }}"
group: "{{ user_group }}"
mode: preserve
- name: Copy .xinitrc
ansible.builtin.copy:
src: "{{ playbook_dir }}/../dotfiles/desktop/.xinitrc"
dest: "{{ user_home }}/.xinitrc"
owner: "{{ username }}"
group: "{{ user_group }}"
mode: "0644"
- name: Ensure .gnupg directory exists
ansible.builtin.file:
path: "{{ user_home }}/.gnupg"
state: directory
owner: "{{ username }}"
group: "{{ user_group }}"
mode: "0700"
- name: Copy gpg-agent.conf
ansible.builtin.copy:
src: "{{ playbook_dir }}/../dotfiles/desktop/.gnupg/gpg-agent.conf"
dest: "{{ user_home }}/.gnupg/gpg-agent.conf"
owner: "{{ username }}"
group: "{{ user_group }}"
mode: "0600"
- name: Ensure flathub remote is configured
community.general.flatpak_remote:
name: "{{ desktop_flatpak_remote_name | default('flathub') }}"
state: present
flatpakrepo_url: "{{ desktop_flatpak_remote_url | default('https://dl.flathub.org/repo/flathub.flatpakrepo') }}"
when: (desktop_flatpak_packages | default([])) | length > 0
- name: Install desktop flatpak applications
community.general.flatpak:
name: "{{ desktop_flatpak_packages }}"
state: present
remote: "{{ desktop_flatpak_remote_name | default('flathub') }}"
method: system
when: (desktop_flatpak_packages | default([])) | length > 0