aboutsummaryrefslogblamecommitdiffstats
path: root/site.workstation.yml
blob: 387b684b6f8eb1ab9ac4cad33c9e7855f1e774c9 (plain) (tree)
1
2
3
4
5
6
7
8
9

   

                  




                                                         
                                                        


                                                        
                                                         
                                                   
                                           
 

                                  
                           
                                     
                  


                                       


                                                    

        



















                                                                 


                                        











                                                            

                                                 








                                                       



                                                    
---

- hosts: localhost

  vars:
    _workstation_user: qwd
    basegroups_workstation_user: "{{_workstation_user }}"
    doas_workstation_user: "{{ _workstation_user }}"
    dockerd_workstation_user: "{{ _workstation_user }}"
    dotfiles_workstation_user: "{{ _workstation_user }}"
    libvirt_workstation_user: "{{ _workstation_user }}"
    pipewire_workstation_user: "{{ _workstation_user }}"
    shell_workstation_user: "{{ _workstation_user }}"
    syncthing_workstation_user: "{{ _workstation_user }}"
    yay_workstation_user: "{{ _workstation_user }}"
    makepkg_user: "{{ _workstation_user }}"

  pre_tasks:
    - name: verify running as root
      ansible.builtin.fail:
      when: ansible_user_id != "root"
      tags: always
    - name: retrieve installed packages
      ansible.builtin.package_facts:
      register: package_facts
    - name: include localhost variable
      ansible.builtin.include_vars:
        file: "host_vars/{{ ansible_hostname }}.yml"

  roles:
    - role: _workstation/basetools
      when: ansible_distribution in ["Archlinux", "OpenBSD"]
    - role: _workstation/basegroups
      when: ansible_distribution in ["Archlinux"]
    - role: _workstation/wscons
      when: ansible_distribution in ["OpenBSD"]

    - role: _workstation/shell
    - role: _workstation/hosts
    - role: _workstation/doas

    - role: _workstation/yay
      when:
        - ansible_distribution in ["Archlinux"]
        - "'yay' not in package_facts.ansible_facts.packages"
        - "'yay-bin' not in package_facts.ansible_facts.packages"

    - role: _workstation/xorg
      when: ansible_distribution in ["Archlinux", "OpenBSD"]

    - role: sshd
      when: '"work" in ansible_hostname'

    - role: _workstation/smartcard
      when: ansible_distribution in ["Archlinux", "OpenBSD"]
    - role: _workstation/pipewire
      when: ansible_distribution in ["Archlinux"]
    - role: _workstation/cronie
      when: ansible_distribution in ["Archlinux"]
    - role: _workstation/libvirt
      when: ansible_distribution in ["Archlinux"]
    - role: _workstation/dockerd
      when: ansible_distribution in ["Archlinux"]
    - role: _workstation/resolv
      when: ansible_distribution in ["Archlinux"]
    - role: _workstation/syncthing
      when: ansible_distribution in ["Archlinux"]

    - role: _workstation/tlp
      when:
        - ansible_distribution in ["Archlinux"]
        - ansible_form_factor in ["Laptop", "Notebook"]
    - role: _workstation/apm
      when: ansible_distribution in ["OpenBSD"]
    - role: _workstation/kernel
      when: ansible_distribution in ["OpenBSD"]

    - role: _workstation/dotfiles
      become: true
      become_user: "{{ dotfiles_workstation_user }}"
remember that computers suck.