commit f1dd4fb3c05cd769bbe84abe91ab9373f6a42eea
parent 6eea3b213cb045c022169f9c47543a4d67bf31cd
Author: Chris Roberts <chris.roberts@learningunix.net>
Date: Sat, 20 Jun 2026 11:45:05 -0500
Fix variable deprecations and split site.yml into system and user plays
Replace deprecated ansible_user_dir/ansible_user_id with
ansible_facts['user_dir'/'user_id'] across all roles. Switch git repo
URLs from HTTPS to SSH. Split site.yml into two plays so user-facing
roles (dotfiles, scripts, hotkeys) run without become.
Diffstat:
8 files changed, 26 insertions(+), 20 deletions(-)
diff --git a/roles/docker/tasks/main.yml b/roles/docker/tasks/main.yml
@@ -14,6 +14,6 @@
- name: Add user to docker group
ansible.builtin.user:
- user: "{{ ansible_user_id }}"
+ user: "{{ ansible_facts['user_id'] }}"
groups: docker
append: true
diff --git a/roles/dotfiles/tasks/main.yml b/roles/dotfiles/tasks/main.yml
@@ -1,28 +1,28 @@
---
- name: Clone dot files repo
ansible.builtin.git:
- repo: https://gitea.learningunix.net/cjr/dotfiles.git
- dest: "{{ ansible_user_dir }}/dotfiles"
+ repo: git@gitea.learningunix.net:cjr/dotfiles.git
+ dest: "{{ ansible_facts['user_dir'] }}/dotfiles"
update: true
version: main
- name: Clone the nvim repo
ansible.builtin.git:
- repo: https://gitea.learningunix.net/cjr/vim.git
- dest: "{{ ansible_user_dir }}/nvim"
+ repo: git@gitea.learningunix.net:cjr/vim.git
+ dest: "{{ ansible_facts['user_dir'] }}/nvim"
update: true
version: main
- name: Symlink .zshrc
ansible.builtin.file:
- src: "{{ ansible_user_dir }}/dotfiles/zsh/.zshrc"
- dest: "{{ ansible_user_dir }}/.zshrc"
+ src: "{{ ansible_facts['user_dir'] }}/dotfiles/zsh/.zshrc"
+ dest: "{{ ansible_facts['user_dir'] }}/.zshrc"
state: link
force: true
- name: Symlink nvim config
ansible.builtin.file:
- src: "{{ ansible_user_dir }}/nvim"
- dest: "{{ ansible_user_dir }}/.config/nvim"
+ src: "{{ ansible_facts['user_dir'] }}/nvim"
+ dest: "{{ ansible_facts['user_dir'] }}/.config/nvim"
state: link
force: true
diff --git a/roles/hotkeys/tasks/main.yml b/roles/hotkeys/tasks/main.yml
@@ -2,18 +2,18 @@
- name: Copy cheat sheet desktop file
ansible.builtin.template:
src: cheat-sheet.desktop.j2
- dest: "{{ ansible_user_dir }}/.local/share/applications/net.local.cheat-sheet.sh.desktop"
+ dest: "{{ ansible_facts['user_dir'] }}/.local/share/applications/net.local.cheat-sheet.sh.desktop"
mode: "0644"
- name: Copy password script
ansible.builtin.template:
src: pass-menu.desktop.j2
- dest: "{{ ansible_user_dir }}/.local/share/applications/net.local.pass-menu.sh.desktop"
+ dest: "{{ ansible_facts['user_dir'] }}/.local/share/applications/net.local.pass-menu.sh.desktop"
mode: "0644"
- name: Set cheat-sheet hotkey
community.general.ini_file:
- path: "{{ ansible_user_dir }}/.config/kglobalshortcutsrc"
+ path: "{{ ansible_facts['user_dir'] }}/.config/kglobalshortcutsrc"
section: "services][net.local.cheat-sheet.sh.desktop"
option: _launch
value: Alt+C
@@ -21,7 +21,7 @@
- name: Set pass-menu hotkey
community.general.ini_file:
- path: "{{ ansible_user_dir }}/.config/kglobalshortcutsrc"
+ path: "{{ ansible_facts['user_dir'] }}/.config/kglobalshortcutsrc"
section: "services][net.local.pass-menu.sh.desktop"
option: _launch
value: Alt+P
diff --git a/roles/hotkeys/templates/cheat-sheet.desktop.j2 b/roles/hotkeys/templates/cheat-sheet.desktop.j2
@@ -1,5 +1,5 @@
[Desktop Entry]
-Exec={{ ansible_user_dir }}/scripts/cheat-sheet.sh
+Exec={{ ansible_facts['user_dir'] }}/scripts/cheat-sheet.sh
Name=cheat-sheet
NoDisplay=true
StartupNotify=false
diff --git a/roles/hotkeys/templates/pass-menu.desktop.j2 b/roles/hotkeys/templates/pass-menu.desktop.j2
@@ -1,5 +1,5 @@
[Desktop Entry]
-Exec={{ ansible_user_dir }}/scripts/pass-menu.sh
+Exec={{ ansible_facts['user_dir'] }}/scripts/pass-menu.sh
Name=pass-menu
NoDisplay=true
StartupNotify=false
diff --git a/roles/scripts/tasks/main.yml b/roles/scripts/tasks/main.yml
@@ -1,13 +1,13 @@
---
- name: Clone the scripts repo
ansible.builtin.git:
- repo: https://gitea.learningunix.net/cjr/scripts
- dest: "{{ ansible_user_dir }}/scripts"
+ repo: git@gitea.learningunix.net:cjr/scripts.git
+ dest: "{{ ansible_facts['user_dir'] }}/scripts"
update: true
version: main
- name: Ensure that scripts is in the user's path
ansible.builtin.lineinfile:
- path: "{{ ansible_user_dir }}/dotfiles/zsh/.zshrc"
+ path: "{{ ansible_facts['user_dir'] }}/dotfiles/zsh/.zshrc"
line: 'export PATH="$HOME/scripts:$PATH"'
state: present
diff --git a/roles/virtualization/tasks/main.yml b/roles/virtualization/tasks/main.yml
@@ -15,6 +15,6 @@
- name: Add user to libvirt group
ansible.builtin.user:
- name: "{{ ansible_user_id }}"
+ name: "{{ ansible_facts['user_id'] }}"
groups: libvirt
append: true
diff --git a/site.yml b/site.yml
@@ -1,5 +1,5 @@
---
-- name: Configure CachyOS workstation
+- name: Configure CachyOS workstation (system)
hosts: cachy
connection: local
become: true
@@ -17,6 +17,12 @@
tags: web
- role: flatpak
tags: flatpak
+
+- name: Configure CachyOS workstation (user)
+ hosts: cachy
+ connection: local
+
+ roles:
- role: dotfiles
tags: dotfiles
- role: scripts