mirror of
https://github.com/fscotto/infra.git
synced 2026-05-30 15:39:58 +00:00
- Move Sway, GTK, Qt, Alacritty, and Emacs toward the Noctalia-generated Ayu theme - Add shared font/cursor settings, qt5ct/qt6ct templates, and Flatpak theme integration support - Keep browser and Telegram theming manual while preserving generated Noctalia assets where useful
144 lines
4.6 KiB
YAML
144 lines
4.6 KiB
YAML
---
|
|
- name: Ensure Sway config directories exist
|
|
tags: [dotfiles, dotfiles:desktop, sway]
|
|
ansible.builtin.file:
|
|
path: "{{ item }}"
|
|
state: directory
|
|
owner: "{{ username }}"
|
|
group: "{{ user_group }}"
|
|
mode: "0755"
|
|
loop:
|
|
- "{{ user_home }}/.config/sway"
|
|
- "{{ user_home }}/.config/kanshi"
|
|
- "{{ user_home }}/.config/qt5ct"
|
|
- "{{ user_home }}/.config/qt5ct/colors"
|
|
- "{{ user_home }}/.config/qt6ct"
|
|
- "{{ user_home }}/.config/qt6ct/colors"
|
|
when: "'sway' in (desktop_sessions_enabled | default([]))"
|
|
|
|
- name: Ensure Noctalia config directories exist
|
|
tags: [dotfiles, dotfiles:desktop, sway, noctalia]
|
|
ansible.builtin.file:
|
|
path: "{{ item }}"
|
|
state: directory
|
|
owner: "{{ username }}"
|
|
group: "{{ user_group }}"
|
|
mode: "0755"
|
|
loop:
|
|
- "{{ user_home }}/.config/noctalia"
|
|
- "{{ user_home }}/.config/noctalia/plugins"
|
|
- "{{ user_home }}/.local/share/noctalia-plugins"
|
|
when: "'sway' in (desktop_sessions_enabled | default([]))"
|
|
|
|
- name: Install Sway emptty session entry
|
|
tags: [packages, services, emptty, sway]
|
|
ansible.builtin.template:
|
|
src: Sway.desktop.j2
|
|
dest: /etc/emptty/wayland-sessions/Sway.desktop
|
|
owner: root
|
|
group: root
|
|
mode: "0644"
|
|
when: "'sway' in (desktop_sessions_enabled | default([]))"
|
|
|
|
- name: Copy Sway desktop dotfiles
|
|
tags: [dotfiles, dotfiles:desktop, sway]
|
|
ansible.builtin.copy:
|
|
src: "{{ playbook_dir }}/../dotfiles/desktop/{{ item.src }}"
|
|
dest: "{{ user_home }}/{{ item.dest }}"
|
|
owner: "{{ username }}"
|
|
group: "{{ user_group }}"
|
|
mode: "{{ item.mode }}"
|
|
loop: "{{ desktop_sway_dotfiles | default([]) }}"
|
|
loop_control:
|
|
label: "{{ item.dest }}"
|
|
when: "'sway' in (desktop_sessions_enabled | default([]))"
|
|
|
|
- name: Render Sway shell config
|
|
tags: [dotfiles, dotfiles:desktop, sway]
|
|
ansible.builtin.template:
|
|
src: shell.conf.j2
|
|
dest: "{{ user_home }}/.config/sway/shell.conf"
|
|
owner: "{{ username }}"
|
|
group: "{{ user_group }}"
|
|
mode: "0644"
|
|
when: "'sway' in (desktop_sessions_enabled | default([]))"
|
|
|
|
- name: Render Noctalia settings template
|
|
tags: [dotfiles, dotfiles:desktop, sway, noctalia]
|
|
ansible.builtin.template:
|
|
src: noctalia-settings.json.j2
|
|
dest: "{{ user_home }}/.config/noctalia/settings.json"
|
|
owner: "{{ username }}"
|
|
group: "{{ user_group }}"
|
|
mode: "0644"
|
|
when: "'sway' in (desktop_sessions_enabled | default([]))"
|
|
|
|
- name: Render qt5ct config
|
|
tags: [dotfiles, dotfiles:desktop, sway, noctalia]
|
|
ansible.builtin.template:
|
|
src: qt5ct.conf.j2
|
|
dest: "{{ user_home }}/.config/qt5ct/qt5ct.conf"
|
|
owner: "{{ username }}"
|
|
group: "{{ user_group }}"
|
|
mode: "0644"
|
|
when: "'sway' in (desktop_sessions_enabled | default([]))"
|
|
|
|
- name: Render qt6ct config
|
|
tags: [dotfiles, dotfiles:desktop, sway, noctalia]
|
|
ansible.builtin.template:
|
|
src: qt6ct.conf.j2
|
|
dest: "{{ user_home }}/.config/qt6ct/qt6ct.conf"
|
|
owner: "{{ username }}"
|
|
group: "{{ user_group }}"
|
|
mode: "0644"
|
|
when: "'sway' in (desktop_sessions_enabled | default([]))"
|
|
|
|
- name: Manage Noctalia shell plugins
|
|
tags: [dotfiles, dotfiles:desktop, sway, noctalia]
|
|
ansible.builtin.include_tasks: noctalia.yml
|
|
when: "'sway' in (desktop_sessions_enabled | default([]))"
|
|
|
|
- name: Copy shared Clipper settings
|
|
tags: [dotfiles, dotfiles:desktop, sway, noctalia]
|
|
ansible.builtin.copy:
|
|
src: "{{ playbook_dir }}/../dotfiles/desktop/.config/noctalia/plugins/clipper/settings.json"
|
|
dest: "{{ user_home }}/.config/noctalia/plugins/clipper/settings.json"
|
|
owner: "{{ username }}"
|
|
group: "{{ user_group }}"
|
|
mode: "0644"
|
|
when: "'sway' in (desktop_sessions_enabled | default([]))"
|
|
|
|
- name: Allow Flatpak apps to read shared theme configs
|
|
tags: [packages, dotfiles, dotfiles:desktop, sway, noctalia]
|
|
ansible.builtin.command:
|
|
argv:
|
|
- flatpak
|
|
- override
|
|
- --user
|
|
- "--filesystem={{ item }}"
|
|
become_user: "{{ username }}"
|
|
environment:
|
|
HOME: "{{ user_home }}"
|
|
changed_when: false
|
|
loop: "{{ desktop_flatpak_global_filesystems | default([]) }}"
|
|
when:
|
|
- "'sway' in (desktop_sessions_enabled | default([]))"
|
|
- (desktop_flatpak_packages | default([])) | length > 0
|
|
|
|
- name: Export global Flatpak environment for theme integration
|
|
tags: [packages, dotfiles, dotfiles:desktop, sway, noctalia]
|
|
ansible.builtin.command:
|
|
argv:
|
|
- flatpak
|
|
- override
|
|
- --user
|
|
- "--env={{ item }}"
|
|
become_user: "{{ username }}"
|
|
environment:
|
|
HOME: "{{ user_home }}"
|
|
changed_when: false
|
|
loop: "{{ desktop_flatpak_global_env | default([]) }}"
|
|
when:
|
|
- "'sway' in (desktop_sessions_enabled | default([]))"
|
|
- (desktop_flatpak_packages | default([])) | length > 0
|