- name: Install packages
  package:
    name:
      - ffmpeg # for cast_file
    state: present

- name: Install packages
  when: install_graphics
  package:
    name:
      - mpv
      - evince
      - gimp
      - imv # image viewer
    state: present

- include_tasks: "tasks/{{graphics_driver}}.yaml"
  when: install_graphics # TODO: Maybe this should be when graphics_driver is defined to support headless casting

- import_tasks: tasks/freebsd.yaml
  when: 'os_flavor == "freebsd"'

- import_tasks: tasks/linux.yaml
  when: 'os_flavor == "linux"'

- include_tasks:
    file: tasks/peruser.yaml
    apply:
      become: yes
      become_user: "{{ initialize_user }}"
  loop: "{{ users | dict2items | community.general.json_query('[?value.initialize==`true`].key') }}"
  loop_control:
    loop_var: initialize_user
