110 lines
2.5 KiB
YAML
Executable File
110 lines
2.5 KiB
YAML
Executable File
---
|
|
- name: Ensure Users are Configured Correctly
|
|
user:
|
|
name: "{{ item.value.name }}"
|
|
group: "{{ item.value.group }}"
|
|
groups: "{{ item.value.groups }}"
|
|
state: "{{ item.value.state }}"
|
|
create_home: "{{ item.value.create_home }}"
|
|
shell: "{{ item.value.shell }}"
|
|
loop: "{{ init_users | dict2items }}"
|
|
|
|
- name: Create or ensure presence of custom home directories
|
|
file:
|
|
path: /home/opal/{{ item }}
|
|
state: directory
|
|
mode: '0755'
|
|
owner: opal
|
|
group: opal
|
|
loop: "{{ create_directories }}"
|
|
|
|
- name: Remove default home directories if present
|
|
file:
|
|
path: /home/opal/{{ item }}
|
|
state: absent
|
|
loop: "{{ remove_directories }}"
|
|
|
|
# SSH Initial Setup
|
|
- name: Create/Ensure ~/.ssh directories
|
|
file:
|
|
path: "/home/{{ item.value.name }}/.ssh"
|
|
state: directory
|
|
mode: 0700
|
|
owner: "{{ item.value.name }}"
|
|
group: "{{ item.value.group }}"
|
|
loop: "{{ init_users | dict2items }}"
|
|
|
|
- name: Upgrade all packages
|
|
package:
|
|
name: "*"
|
|
state: latest
|
|
|
|
- name: Add Ubuntu PPAs to apt repositories
|
|
apt_repository:
|
|
repo: "{{ item }}"
|
|
codename: "jammy" # Force the Ubuntu codename that PPAs support (e.g., "focal" or "jammy")
|
|
state: present
|
|
loop: "{{ ppa }}"
|
|
|
|
- name: Install window manager packages
|
|
package:
|
|
name: "{{ item }}"
|
|
state: present
|
|
loop: "{{ wm_packages }}"
|
|
|
|
- name: Install UI/Font packages
|
|
package:
|
|
name: "{{ item }}"
|
|
state: present
|
|
loop: "{{ ui_packages }}"
|
|
|
|
- name: Install general packages
|
|
package:
|
|
name: "{{ item }}"
|
|
state: present
|
|
loop: "{{ general_packages }}"
|
|
|
|
- name: Install Doom Emacs dependency packages
|
|
package:
|
|
name: "{{ item }}"
|
|
state: present
|
|
loop: "{{ doom_dep_packages }}"
|
|
|
|
- name: Add Flathub repository
|
|
flatpak_remote:
|
|
name: flathub
|
|
state: present
|
|
flatpakrepo_url: "https://flathub.org/repo/flathub.flatpakrepo"
|
|
|
|
- name: doom emacs repo
|
|
become: yes
|
|
become_user: opal
|
|
git:
|
|
repo: "{{ doom_emacs_repo }}"
|
|
dest: "{{ doom_emacs_dest }}"
|
|
update: no
|
|
|
|
- name: et-book font repo
|
|
become: yes
|
|
become_user: opal
|
|
git:
|
|
repo: "{{ etbook_repo }}"
|
|
dest: "{{ etbook_dest }}"
|
|
update: no
|
|
|
|
- name: Start TLP (power management)
|
|
systemd:
|
|
name: tlp
|
|
enabled: yes
|
|
state: started
|
|
|
|
- name: Add rsync backup job to cron
|
|
cron:
|
|
name: "Backup KeePassXC database to desktop"
|
|
minute: "0"
|
|
hour: "10"
|
|
day: "*"
|
|
month: "*"
|
|
weekday: "*"
|
|
job: "/usr/bin/rsync -avz /home/opal/documents/keepassxc/opalkeepassxc.kdbx opal@desktop:/home/opal/documents"
|