---
# Cross-platform package management.

- name: General | Software | Packages | Cache Refresh (Apt and Pacman)
  package:
    update_cache: yes
  when: ansible_pkg_mgr in ["apt", "pacman"]

- name: General | Software | Packages | Cache Refresh (FreeBSD)
  shell: pkg update
  when: ansible_system == "FreeBSD"

- name: General | Software | Packages | Install Software
  package: 
    name:
    - bash
    - sudo
    - htop
    - nmap
    - neofetch
    - "{{ sshfs }}"
    - "{{ locate }}"
    state: present

- name: General | Software | Packages | Update Software (Disabled)
  package: 
    name:
    - ansible
    - git
    state: latest
  when: "1 == 0"

- name: General | Software | Packages | Remove Software
  package: 
    name:
    - cowsay # Sorry ;)
    state: absent

# TODO: Confirm if Ubuntu still uses snap for critical components like GNOME.
- name: General | Software | Packages | Remove Software (Besides Ubuntu)
  package: 
    name:
    - snapd
    state: absent
  when: ansible_distribution != "Ubuntu"